METAHEURISTICS BASED ON GENETIC ALGORITHM AND TABU SEARCH FOR VEHICLE ROUTING PROBLEM WITH STOCHASTIC DEMANDS IRHAMAH UNIVERSITI TEKNOLOGI MALAYSIA i METAHEURISTICS BASED ON GENETIC ALGORITHM AND TABU SEARCH FOR VEHICLE ROUTING PROBLEM WITH STOCHASTIC DEMANDS IRHAMAH A thesis submitted in fulfilment of the requirements for the award of the degree of Doctor of Philosophy (Mathematics) Faculty of Science Universiti Teknologi Malaysia NOVEMBER 2008 iii To those that have affected my life in the most wondrous way: My husband Hendro Nurhadi, My daughter Hana Azizah Nurhadi, My mother and father Alm. Noor Hidayati and Ali Muhayin, My mother and father in law Sri Wahyuni and Setiyono iv ACKNOWLEDGEMENTS BismillahirRahmaanirRahiim. Alhamdulillaahi rabbil ‘aalamiin. I wish to deeply express my gratitude to my supervisor, Prof. Dr. Zuhaimy Ismail, for the great opportunity to join in this research. His confidence, understanding, supervision and support have been essential factors for me to work on this study. Next, I would like to thank Ministry of Science, Technology and Innovation Malaysia for financial support; Department of Mathematics and Research Management Centre, Universiti Teknologi Malaysia. I also thank my employer Institut Teknologi Sepuluh Nopember (ITS) Surabaya – Indonesia for granting me the study leave. My special thanks also go to Dr. Zaitul Marlizawati Zainuddin for her advice, support and lessons on heuristic methods. My sincere appreciation also extends to lecturer at Department of Mathematics-UTM, all my colleagues in ITS and others (including Indonesian people in UTM) who have supported me in various occasions. My sincere thanks should be extended to the members of ISDAG, FS – UTM where I joined at. I am very grateful also to Mr. Triyono and Mr. Komarudin Sayuti for great discussion and their assistance in programming. And the last but not the least, I wish to express my heartfelt thanks for my family during my study: my husband Hendro Nurhadi, my daughter Hana Azizah Nurhadi, my parents Ali Muhajin and almh. Noor Hidayati, my parents-in-law Sri Wahyuni and Setiono, and all of my big familiy in Malang, Cepu, Surabaya and Blitar. Their understanding, patience, love, prayer, support and sacrifice are unbounded. v ABSTRACT This study considers a Vehicle Routing Problem with Stochastic Demands (VRPSD) where the demands are unknown when the route plan is designed. The VRPSD objective is to find an a priori route under preventive restocking that minimizes the total expected cost, subject to the routing constraints, under the stochastic demands setting. Various metaheuristics based on Genetic Algorithm (GA) and Tabu Search (TS) were proposed to solve VRPSD. This study began with investigating the effect of static and dynamic tabu list size in TS. The results showed the advantage of dynamic tabu list size in significantly reducing the probability of cycling. Further, Reactive Tabu Search (RTS) which has never been used in VRPSD was introduced. This study showed that RTS give significant improvement to the solution quality of TS. This study then explored the enhancement of GA for VRPSD by proposing Adaptive GA (AGA), Breeder GA (BGA) and two types of Hybrid GA with Tabu Search (HGATS). Solutions generated using AGA were better than solutions from fixed parameter setting, and the use of AGA reduce the amount of time required in finding the appropriate mutation probability values of GA. The BGA also gave an improvement to the solution quality of GA. Different schemes of incorporating TS to GA lead to a significantly different performance of the HGATS algorithms. Next, comparative studies between metaheuristics implemented in this study were carried out including the comparison with previous research on GA for VRPSD. The HGATS showed superiority in terms of solution quality compared to other metaheuristics, followed by BGA and RTS in the second and third best performance respectively. Furthermore, the proposed bi-objective Pareto BGA gave better solution qualities compared to Pareto GA. Finally, the use of metaheuristics in a case study of solid waste collection reduced significantly the company current operation cost. vi ABSTRAK Kajian ini mempertimbangkan suatu Masalah Perjalanan Kenderaan bersama Permintaan Stokastik (VRPSD) di mana permintaan tidak diketahui ketika perancangan laluan dibuat. Objektif VRPSD adalah untuk menentukan suatu perjalanan a priori di bawah pencegahan stok semula bagi mengurangkan jumlah kos jangkaan, bergantung kepada kekangan perjalanan dengan permintaan stokastik. Pelbagai metaheuristik berasaskan Algoritma Genetik (GA) dan Carian Tabu (TS) telah dicadangkan untuk menyelesaikan masalah tersebut. Kajian ini bermula dengan menyelidik kesan statik dan dinamik saiz senarai tabu di dalam TS. Hasil kajian menunjukkan kebaikan saiz senarai tabu dinamik telah berupaya mengurangkan dengan signifikan kebarangkalian kitaran. Seterusnya Reactive Tabu Search (RTS) yang belum pernah digunakan dalam VRPSD diperkenalkan di mana ia menunjukkan RTS mempertingkatkan kualiti penyelesaian TS. Kajian ini seterusnya menerokai peningkatan GA untuk VRPSD dengan mencadangkan Adaptive GA (AGA), Breeder GA (BGA) dan dua jenis Hybrid GA-Tabu Search (HGATS). Penyelesaian yang dihasilkan AGA adalah lebih baik berbanding penggunaan parameter tetap dan dengan menggunakan AGA, jumlah masa yang diperlukan untuk mencari kebarangkalian nilai mutasi GA yang sesuai juga boleh dikurangkan. Kaedah BGA juga meningkatkan kualiti penyelesaian GA. Skema berlainan dalam menggabungkan TS dengan GA membawa kepada perubahan pencapaian algoritma HGATS. Seterusnya kajian perbandingan di antara metaheuristik yang dilaksanakan di dalam kajian ini dilakukan termasuk perbandingan dengan kajian terdahulu tentang GA untuk VRPSD. HGATS yang dicadangkan, menunjukan keunggulan berbanding yang lain, diikuti oleh BGA dan RTS di tempat kedua dan ketiga pada tahap pencapaian. Seterusnya Pareto BGA yang dicadangkan untuk menyelesaikan dua-objektif VRPSD telah menghasilkan penyelesaian yang lebih baik berbanding Pareto GA. Akhirnya, penggunaan metaheuristik dalam satu kajian kes pengangkutan bahan buangan pepejal didapati mengurangkan dengan signifikan kos operasi semasa syarikat. vii TABLE OF CONTENTS CHAPTER 1 TITLE PAGE TITLE i DECLARATION ii DEDICATION iii ACKNOWLEDGEMENTS iv ABSTRACT v ABSTRAK vi TABLE OF CONTENTS vii LIST OF TABLES xiii LIST OF FIGURES xvi LIST OF APPENDICES xx INTRODUCTION 1.1 Introduction 1 1.2 Background of the Problem 3 1.3 Problem Statement of Research 8 1.4 Objectives of the Study 9 1.5 Scope of the Study 10 1.6 Significance of the Study 11 1.7 Organization of the Thesis 11 viii 2 REVIEWS OF THE LITERATURE 2.1 Introduction 14 2.2 The Vehicle Routing Problem with Stochastic Demands (VRPSD) 14 2.2.1 Real World Applications 15 2.2.2 Solution Frameworks for VRPSD 16 2.2.3 Types of Recourse 18 2.2.4 Mathematical Formulation of Single VRPSD 20 2.2.5 Threshold and Expected Cost Evaluation 23 2.2.6 Multiple Homogeneous VRPSD 24 2.2.7 Previous Works on VRPSD 25 2.3 Heuristic Methods 31 2.3.1 Why Use a Heuristic Methods 31 2.3.2 Measuring the Quality of a Heuristic 33 2.4 Metaheuristics 34 2.4.1 Classification of Metaheuristics 36 2.4.2 Trajectory Methods 38 2.4.2.1 2.4.3 Basic Local Search: Iterative Improvement 38 2.4.2.2 Simulated Annealing 38 2.4.2.3 Tabu Search 39 2.4.2.4 Explorative Local Search Methods 40 Population-based Methods 40 2.4.3.1 Evolutionary Computation 41 2.4.3.2 Ant Colony Optimization 43 2.5 Hybrid Metaheuristics 43 2.6 Applications of Genetic Algorithm in the Vehicle Routing Problems 45 2.7 Applications of Tabu Search in the Vehicle Routing Problems 49 2.7.1 49 Two Early Tabu Search Algorithms 2.7.2 Osman’s Tabu Search Algorithm 50 ix 2.7.3 Taburoute 50 2.7.4 Barbarasoglu and Ozgur’s Algorithm 51 2.7.5 Adaptive Memory Procedure of Rochat and Taillard 52 2.7.6 Granular Tabu Search of Toth and Vigo 52 2.8 Review on Genetic Algorithms and Tabu Search for VRPSD 53 2.9 Summary 3 56 RESEARCH METHODOLOGY 3.1 Introduction 57 3.2 Research Framework 57 3.3 Data Source 58 3.4 Data Generation 60 3.4.1 Single Vehicle 61 3.4.2 Multiple Vehicles 61 3.5 Demand’s Data Testing 62 3.5.1 Chi-Square Goodness of Fit Test 63 3.5.2 65 Kolmogorov-Smirnov Test 3.6 Paired-Samples Procedure 67 3.7 Genetic Algorithm 71 3.7.1 Selection Methods 72 3.7.2 Crossover 74 3.8 3.7.2.1 Partially-Mapped Crossover (PMX) 76 3.7.2.2 Cycle Crossover (CX) 77 3.7.2.3 Modified Crossover 77 3.7.2.4 Order Crossover 78 3.7.2.5 Order-Based Crossover 79 3.7.2.6 Position-Based Crossover 79 3.7.3 Mutation 80 3.7.4 Operator Settings in Genetic Algorithm 81 Tabu Search 82 x 3.9 The Hybrid Genetic Algorithm and Tabu Search Scheme 88 3.10 Illustration of the Calculation of VRPSD Objective Function 3.11 Summary 4 88 94 SOLUTION APPROACHES BASED ON TABU SEARCH AND REACTIVE TABU SEARCH FOR SINGLE VRPSD 4.1 Introduction 95 4.2 Tabu Search for Single VRPSD 96 4.2.1 Initial Solution 96 4.2.2 Neighbourhood Exploration 98 4.2.3 Tabu Moves 98 4.2.4 Aspiration Criterion 100 4.2.5 Stopping Criterion 101 4.3 Reactive Tabu Search 103 4.4 Computational Results 107 4.4.1 Static versus Dynamic tabu list size 107 4.4.2 Tabu Search versus Reactive Tabu Search 110 4.5 Conclusion 5 117 VARIOUS GENETIC ALGORITHM-BASED METAHEURISTICS FOR SOLVING SINGLE VRPSD 5.1 Introduction 118 5.2 Genetic Algorithm for Single VRPSD 119 5.2.1 Chromosome Representation 120 5.2.2 Initialization 121 5.2.3 Evaluation 123 5.2.4 Roulette Wheel Selection with Elitism 123 5.2.5 Order Crossover 124 xi 5.2.6 Mutation 125 5.2.7 Stopping Criterion 126 5.3 The Development of Adaptive Genetic Algorithm 128 5.3.1. Mutation probability is random numbers in the range of [pmmin, pmmax] 5.3.2. Adaptive mutation probability based on PDM 129 129 5.3.3. Adaptive mutation probability based on Euclidean Distance 130 5.3.4. Adaptive mutation probability based on Lr Distance 131 5.4 The Development of Hybrid GA and TS 131 5.5 The Development of Breeder Genetic Algorithm 133 5.6 Results and Discussion 137 5.6.1 Preliminary Study on the Choice of Population Size 137 5.6.2 Adaptive GA versus Standard GA 140 5.6.3 142 Hybrid GA and TS (HGATS) versus GA and TS 5.6.4 Breeder GA versus Standard GA 150 5.6.5 Comparative Study between Tabu Search and Genetic Algorithm – based Metaheuristics 5.7 Conclusion 6 153 159 SOLVING THE BI-OBJECTIVE VRPSD VIA BREEDER GENETIC ALGORITHM 6.1 Introduction 160 6.2 Problem Formulation of Multiple VRPSD 162 6.3 Multi-objective Optimization 163 6.4 Breeder Genetic Algorithm for Bi-objective VRPSD 165 6.4.1 Chromosome Representation 166 6.4.2 Initialization 166 6.4.3 Improvement 168 6.4.4 Objective Vectors 168 xii 6.4.5 Pareto-rank 169 6.4.6 Selection 169 6.4.7 Crossover and Mutation 170 6.4.8 Stopping Criterion 173 6.4.9 Acceptance Criterion 173 6.5 Computational Results 6.5.1 Effect of different crossover types 6.5.2 Performance of Bi-objective Breeder GA for VRPSD 6.6 Conclusion 7 176 178 180 CASE STUDY: SOLID WASTE COLLECTION 7.1 Introduction 181 7.2 Overview of Solid Waste Company 182 7.3 The Data Collection Process 183 7.4 Data Analysis 187 7.4.1 Daily Demand Characteristics 187 7.4.2 Route Construction 190 7.5 Conclusion 8 176 198 GENERAL CONCLUSION AND RECOMMENDATION 8.1 Introduction 199 8.2 General Conclusion 199 8.3 Recommendations for Future Researches 201 REFERENCES 203 Appendices A - C 220 xiii LIST OF TABLES TABLE NO. TITLE PAGE 2.1 Previous works on VRPSD 26 3.1 Data display for chi-square goodness of fit test 64 3.2 Customer coordinates and demands 88 3.3 Distance matrix of customers 89 3.4 Summary of metaheuristic algorithms considered in this 94 study 4.1 The expected total cost of solutions obtained from TS and 111 RTS 4.2 Average computation time of TS and RTS (secs) 112 4.3 Descriptive statistics measures 115 4.4 Kolmogorov-Smirnov normality test results for differences 5.1 between TS and RTS 115 An illustration of initial population 122 xiv 5.2 Reviews on several population sizes used in Genetic 123 Algorithm for VRP 5.3 The performances of GA for different population sizes 138 5.4 Kolmogorov-Smirnov normality test results for differences 139 of GA solution qualities for different population sizes 5.5 Paired Samples Test Results of the Differences 140 5.6 The performance of fixed parameter versus adaptive GA 141 5.7 Kolmogorov-Smirnov normality test results of differences of GA, TS and HGATS for 10-node problems 5.8 Kolmogorov-Smirnov normality test results of differences of GA, TS and HGATS for 20-node problems 5.9 152 Descriptive statistics for the solutions of metaheuristics implemented 5.12 149 Normality test results of the differences between GA and BGA 5.11 146 Kolmogorov-Smirnov normality test results of differences of GA, TS and HGATS for 50-node problems 5.10 143 154 Summary of paired test of metaheuristics solution quality differences 157 5.13 Average computation time of the metaheuristics 158 6.1 Parameters setting in bi-objective VRPSD 175 xv 6.2 Descriptive statistics for the solutions from different crossover types 6.3 176 Normality test results of the differences between three types of crossover 177 6.4 Independent samples test for crossover performance 178 6.5 Comparison of total expected cost between BBGA and Pareto GA 6.6 179 Comparison of vehicles number between BBGA and Pareto GA 179 6.7 Comparison between multiplicative aggregation 180 7.1 Number of houses on route 186 7.2 Descriptive statistics of total daily collection 188 7.3 Descriptive statistics of demand data of nodes 192 7.4 Uniform distribution fitting of demand data 193 7.5 Route optimization in Taman Setia Indah 194 xvi LIST OF FIGURES FIGURE NO. TITLE PAGE 2.1 Function of q 2.2 Algorithm for the computation of the VRPSD objective 24 23 function f 0 (Q) 2.3 Bianchi et al.’s Genetic Algorithm for the VRPSD 54 3.1 Research framework 58 3.2 Procedure of genetic algorithm 72 3.3 Illustration of roulette wheel selection 72 3.4 Situation before ranking (graph of fitnesses) 73 3.5 Situation after ranking (graph of order numbers) 73 3.6 One point crossover 75 3.7 Two point crossover 75 3.8 Uniform crossover 75 xvii 3.9 Partially-mapped crossover 76 3.10 Cycle crossover 77 3.11 Modified crossover 77 3.12 Order crossover 78 3.13 Order-based crossover 79 3.14 Position-based crossover 80 3.15 Basic tabu search algorithm 87 3.16 5 customers network in Table 3.1 (depot excluded) 89 3.17 Illustration of hj determination 92 4.1 Or-opt algorithm 98 4.2 Illustration of tabu move 100 4.3 Tabu search algorithm for single VRPSD 102 4.4 Initialization and parameters setting in RTS 105 4.5 The reactive tabu search mechanism 106 4.6 The escape phase 106 4.7 The comparison between static and dynamic tabu list size implementation 109 xviii 4.8 Box and whisker plots of solutions produced by TS and RTS 114 4.9 Wilcoxon signed-ranks test results for 10-node problems 116 4.10 Paired t-test results for 20-node and 50-node problems 117 5.1 Illustration of order representation 121 5.2 Structure of genetic algorithm and adaptive genetic algorithm 127 5.3 Illustration of Hybrid GA – TS schemes 132 5.4 Structure of Breeder Genetic Algorithm 136 5.5 Box and whisker plots of solutions obtained from GA, TS and HGATS for 10-node problems 5.6 Paired samples test results of GA, TS and HGATS for problem size 10-node problems 5.7 147 Box and whisker plots of solutions obtained from GA, TS and HGATS for 50-node problems 5.10 146 Paired samples test results of GA, TS and HGATS for 20-node problems 5.9 144 Box and whisker plots of solutions obtained from GA, TS and HGATS for 20-node problems 5.8 143 148 Paired samples test results of GA, TS and HGATS for 50-node problems 150 xix 5.11 Box and whisker plots of solutions obtained from GA 151 and BGA 5.12 Paired-differences test results between GA and BGA 153 performance 6.1 The data structure of chromosome representation 167 6.2 Illustration of route-exchange crossover 172 6.3 Structure of Breeder Genetic Algorithm for bi-objective 174 optimization 7.1 Arc routing and node-to-node routing 184 7.2 Map of Taman Setia Indah 185 7.3 Portion of maps of Jalan Setia 6 and Jalan Setia 7 187 7.4 Box and whisker plots of total demand by day 189 7.5 One-way ANOVA of total demand versus day 190 7.6 Global route of the vehicle 192 7.7 Routes generated by TS, GA, HGATS-A, and Bianchi 195 7.8 Routes generated by RTS, BGA and HGATS-B 196 7.9 The current company route 197 xx LIST OF APPENDICES APPENDIX TITLE PAGE A List of Publications 220 B The Kolmogorov-Smirnov Normality Tests 222 C The Paired Samples Test 225 1 CHAPTER 1 INTRODUCTION 1.1 Introduction Optimisation is a part of life. In our day to day lives, we make decisions that we believe can maximize or minimize our objectives, such as taking a shortcut to minimize the time or distance required to reach a particular destination, or finding a lowest priced items in the supermarket. Most of these decisions are based on our years of experience and knowledge about the system without resorting to any systematic mathematical formulation. However, as the system becomes more complicated, further it is needed to formulate it into specific mathematical model, and with the advent of computer it is possible to exploit optimisation theories to their maximum extent. Combinatorial optimisation is a branch of optimisation that arises everywhere and certainly in applied mathematics and computer science, related to operations research, algorithm theory and computational complexity theory that sit at the intersection of several fields, including artificial intelligence, mathematics and software engineering. Combinatorial optimisation algorithms solve problem instances that are believed to be hard in general, by exploring the usually large solution space of these instances. Combinatorial optimisation algorithms achieve this by reducing the effective size of the space and by exploring the space efficiently. The Vehicle Routing Problems (VRP), Traveling Salesman Problem (TSP), minimum spanning tree problem and knapsack problem are examples of combinatorial optimisation problem. 2 Since late fifties, the Vehicle Routing Problem (VRP) has been and remains a rich topic for researchers and practitioners. It becomes an area of importance to operations research as well as its use for many real world applications. An integral component of logistics is transportation, and a frequently arising situation in the transportation and distribution of commodities has usually been modeled as a Vehicle Routing Problem (VRP). Usually real world VRP arises with many site constraints. VRP is a generalized problem of the Traveling Salesman Problem (TSP) in that the VRP consists in determining m vehicle, where a route is tour that begins at the depot. The task is to visit a set of customer in a given order and returns to the depot. All customers must be visited exactly once and the total customer demand of a route must not exceed the vehicle capacity. Given a set of geographically dispersed customers, each showing a positive demand for a given commodity, the VRP consists of finding a set of tours of minimum length (or cost) for a fleet of vehicles. According to Secomandi (2003), the class of VRPs is a difficult one, since its elements are usually NP-hard problems and they are generally solved by heuristic methods. Lenstra and Kan (1981) has shown that VRP is NP-hard problem. The majority of these researches conducted on operations research are focus on static and deterministic cases of vehicle routing in which all information is determined before the time of planning the routes. Whereas in this ICT age, information is gathered in real time and in many cases they are changing. The complexity of the problem increases as more information is unavailable at the time of the planning or when the service has begun such as the time to begin service, the location and the actual demand. In most real life application, stochastic or dynamic information occurs parallel to the routes being carried out. Many of the vehicle routing problems have inherent randomness, which is not considered in deterministic models, probably travel times or demands are random variables with known distributions. Tillman (1969) started the works to explore cases on VRP with stochastic demands. Since that, many theories and algorithms on VRPSD have been proposed and or developed. In this research, we are interested in studying the demand as the stochastic component. 3 This chapter presents the flow of the research proposal and it begins with the background and problem statement of the research. It is important that an extensive work has been carried out in order to present a case for this work and this is given in Chapter 2. Research objectives, the scope of this study and discussion on the research contribution are also given. Finally, the brief of each chapter is outlined. 1.2 Background of the problem The classical VRP models usually do not capture an important aspect of real life transportation and distribution-logistic problems, namely the fact that several of the problem parameters (demand, time, distance, city location, etc) are often stochastic. Most existing VRP models oversimplify the actual system by assuming system parameter (e.g. customer demands) as deterministic value, although in real application, it may not be possible to know all information about customers before designing routes. Stochastic information occurs and has major impact on how the problem is formulated and how the solution is implemented. Neglecting the stochastic nature of the parameters in a vehicle routing model may generate sub optimal or even infeasible routes (Yang et al., 2000). As compared to the development in deterministic case, research in Stochastic VRP is rather undeveloped. Gendreau et al. (1996) summarise the solution concepts and literature available on different kinds of SVRP including the TSP with stochastic customers, the TSP with stochastic travel times, the VRP with stochastic demands, the VRP with stochastic customers and the VRP with stochastic customers and demands. Stochastic VRP cannot be solved as VRP since properties and the optimal VRP solution do not hold for the SVRP (Dror et al., 1989). Further, it calls for more complex solution methodologies (Gendreau et al., 1995). This study focus on VRP with Stochastic Demands (VRPSD) in which demand at each location is unknown at the time when the route is designed, but is follow a known probability distribution. This situation arises in practice when whenever a company, on any given day, is faced with the problem of collection/ 4 deliveries from or to a set of customers, each has a random demand. In this study, we deal with specific case on solid waste collection. It is hoped that optimisation can take into account the stochasticity of the problem in obtaining better routes and reducing cost. In stochastic environment, due to its randomness in customers’ demands, a vehicle capacity may be exceeded during service. A route failure is said to occur if the demand exceeds capacity and a recourse action needs to be taken at extra cost. Assuming that enough capacity is available at the depot, the vehicle may return to the depot, replenish its load, and then resume service at the point where failure occurred. Therefore the vehicle will always be able to satisfy all demands but the length of the corresponding tour becomes a random quantity. The recourse action could be the vehicle resumes service along the planned route, namely a priori approach, or visiting the remaining customers possibly in an order that differs from the planned sequence known as re-optimisation approach. There are two common recourse policies for a priori optimisation. The first is the simple recourse policy (Dror et al., 1989; Gendreau et al., 1995; Chepuri and Homem-de-Mello, 2005) where a vehicle returns to the depot to restock when its capacity becomes attained or exceeded. The second approach is the preventive restocking (Bertsimas et al., 1995; Yang et al., 2000; Bianchi et al., 2004) where preventive restocking is planned at strategic points preferably when the vehicle is near to the depot and its capacity is almost empty, along the scheduled route instead of waiting for route failure to occur. On the other hand, most recent computational studies in re-optimisation approach were done by Secomandi (2000, 2001, 2003). In this study, we use a priori approach since redesign the routes when actual demand becomes known appears to be a problem for several reasons: 1. Resources might not be available. 2. Even if resources are available, it might be that redesign of routes is not sufficiently important to justify the required effort, cost and time. 3. Redesigning the route might create confusing to the driver. 5 4. Regularity and personalization of service by having the same vehicle and driver visit a particular customer every day is not guaranteed if one redesigns the routes. For our case in solid waste collection, familiarity of driver and waste collector on the route visited every day is highly emphasized; usually the route is substantially not changed. Redesign the routes might cause a problem in the situation when demand is highly variable, thus the routes could be different each day, creating route instability which has consequences to system nervousness in material requirements planning. Further, if demand is stable, it still requires the company personnel to understand day by day task of gathering and inputting new demand to algorithm that generate routes and then deliver the output information to driver. Tillman (1969) was the first to propose algorithm for the VRPSD in the case where there were multiple terminal deliveries and multiple vehicles. Since then, many researchers have studied this problem in two frameworks, namely the chance constrained and stochastic with recourse. In the chance constrained VRPSD, the problem is to design a number of vehicle routes of least distance traveled, subject to the constraint that the probability of route failure on any route is within an allowable limit. In contrast, VRPSD with recourse try to minimize the total expected cost (or distance), including the cost of travel as well as the cost of recourse action when a route failure occurs. The VRPSD with recourse is considerably more difficult than chance constrained VRPSD (Gendreau et al., 1995). Various formulations and algorithms have been proposed and investigated, including the properties and solution frameworks of VRPSD studied by Dror et al. (1989), Bertsimas (1992) who proposed cyclic heuristic and found a priori solution for single vehicle and Dror et al. (1993) who have examined a priori VRPSD in the context of Stochastic Programming where there is only one vehicle and the number of potential failures is small. Yang et al. (2000) developed optimal restocking policy in conjunction with routing decisions for a priori VRPSD for single and multiple vehicles. Secomandi (2001, 2003) considered re-optimisation-type routing policy by means of rollout policy for single vehicle. 6 Bianchi et al. (2004) considered basic implementation of five metaheuristics for single vehicle: Iterated Local Search, Tabu Search, Simulated Annealing, Ant Colony Optimisation and Evolutionary Algorithm (Genetic Algorithm) that found better solution quality in respect to cyclic heuristic. Chepuri and Homem-de-Mello (2005) proposed a new heuristic method based on the Cross-Entropy method for single vehicle. Instead of the work of Bianchi et al. (2004) and Gendreau et al. (1995), the work on the application of GA and TS for VRPSD are lacking in the literature. The work of Bianchi et al. (2004) results that the performance of GA and TS seem to be not significantly different, due to the fact that these algorithms find solutions values which are not very different to each other, but can not compete ILS. These facts have opened a new direction to conduct research on GA and TS for solving VRPSD. Moreover, it is widely known that GA has been proven effective and successful in a wide variety of combinatorial optimisation problems, including TSP and certain types of VRP, especially where time windows are included. TS, the approach that dominates the list of successful algorithms, is known also as a robust, efficient and effective approach to the general VRP family of problem (Laporte, 1992; Osman, 1993). TS often outperform other heuristic techniques in terms of computational speed and solution quality (Osman, 1993). The number of published work on the application of GA for solving basic VRP, TSP, VRPTW, VRPB, and multi depot VRP has been growing. Different approaches were also proposed based on different crossover operator, different mutation operator, or replacement methods. Although pure GA performs well, mostly it does not equal TS in terms of solution quality, sometimes pure GA perform inefficient on practical combinatorial optimisation. To improve pure GA performance, some algorithms are combined with the simple GA, yielding a hybrid algorithm. The statement about GA hybridization is noted by Coley (1999) that hybrid algorithms, which combine a GA with more traditional algorithms, have been hinted as a highly powerful combination for solving practical problem, also by Lacomme et al. (2006) that it is well known that a standard GA must be hybridized with another search procedure to be able to compete with metaheuristics like TS. Baker and 7 Ayechew (2003) showed that hybrid GA with neighbourhood search in the basic VRP is competitive with TS and SA in terms of solution time and quality. Hybrid GAs also have widespread application to VRPTW, including the work of Blanton and Wainwright (1993), Thangiah (1995a and 1995b), Berger et al. (1998) and Braysy et al. (2000). Based on previous research on algorithms developed for VRPSD and the knowledge of the basic structure of GA and TS, in this study we develop metaheuristics based on GA and TS as the enhancement of basic GA and TS for solving single and multiple VRPSD in minimizing single objective function. Our reviews also found that hybrid GA has not been used to solve VRPSD and most of researches in VRPSD with preventive restocking are dealing with single VRPSD and little work has been done for multiple VRPSD, even though decisions relating to routing fleets of vehicles are frequently taken into consideration in distribution and logistics operations. This brings us to also develop the meta-heuristics based on hybrid GA and TS to solve a priori VRPSD comprises single vehicle and multiple vehicles. The approach developed was inspired also by the emerging interest in hybrid metaheuristics that has risen considerably among researchers in combinatorial optimisation. The best results found for many practical or academic optimisation problems are obtained by hybrid algorithms (Talbi, 2002). In this study, the GA will be hybridized with TS. It is highly expected that this hybrid could combine the advantage of GA as population-based method and the strength of TS as trajectory method. As known, population-based methods are better in identifying promising areas in the search space, whereas trajectory methods are better in exploring promising areas in search space. In this study, we also propose metaheuristics for solving bi-objective VRPSD to minimize the total expected cost and the number of vehicles. This study is motivated by fact that many real world design or decision making problems involve simultaneous optimisation of multiple objectives (Srinivas and Deb, 1994). But most of the existing literatures in VRPSD, except of multi-objective’s Tan et al. (2007), use single-objective based heuristics. In a single-objective optimisation, the main 8 goal is to find the global optimum solution. However, in a multi-criterion optimisation problem, there are more than one objective function, each of which may have different individual optimal solution. If there is sufficient difference in the optimal solutions corresponding to different objectives, the objective functions are often conflict each other. Multi-criterion optimisation with such conflicting objective functions gives rise to as set of optimal solutions, instead of one optimal solution. The reason for the optimality of many solutions is that none can be considered to be better than any other with respect to all objectives. 1.3 Problem Statement of Research The VRPSD is defined on a complete graph G = (V, A, C), where V = {0, 1,…, n} is a set of nodes with node 0 denotes the depot and nodes 1, 2, …, n correspond to the customers, A = {(i, j ) : i, j V , i z j} is the set of arcs joining the nodes, and C = ( cij : i, j V , i z j} ) is a non-negative matrix (a matrix where all the elements are equal to or above zero, C t 0, (i, j ), cij t 0 ) that denotes the travel cost (distance) between node i and j. The cost matrix C is symmetric and satisfies the triangular inequality. Customers have stochastic demands [ i , i = 1,…, n, which are a non-negative discrete random variable with known probability distribution pik Pr ob([ i k ) , k = 0, 1,…, K d Q. Assume further that customers’ demands are independent and identical. Actual demand is only known after the vehicle arrives at customer’s location. If there is a route failure at any node, the recourse action has to be taken, the recourse action is to travel back to the depot for replenish and then resume its journey as planned at the node where failure occurred. The problem objective is to find a priori routes that minimize the total expected cost, including travel cost and the expected recourse cost, subject to the routing constraints, under the stochastic demands setting. 9 A stochastic vehicle routing problem arises when not all information relevant to the planning of the routes is known by the planner when the routing process begins and information can change after the initial routes have been constructed. According to Secomandi (2003), for the class of deterministic VRPs, they are generally solved by heuristic or metaheuristic methods; whereas algorithms for stochastic VRP are considerably more intricate than deterministic and it calls for efficient algorithm that is able to work in real-time since the immediate requests should be served. These have made them an important candidate for solution using metaheuristics. This research tries to propose new metaheuristics based on GA and TS to enhance the performance of basic GA and basic TS for solving VRPSD. In this work, we initially consider a single-vehicle model and later expand the analysis to incorporate multiple vehicles. We also develop metaheuristics for solving bi- objective VRPSD. The performances of the proposed algorithms were compared each other and with other heuristics/ metaheuristics. The implementation of these algorithms also will be done to solve real problem in optimizing solid waste collection. 1.4 Objectives of the Study The aim of this study is to develop various approaches to optimize VRPSD solution, particularly in the use of metaheuristics approach. The objectives of this study are to: x develop metaheuristics for solving single VRPSD that include: a. Tabu Search and Reactive Tabu Search. b. Genetic Algorithm and the enhanced GA, i.e. : - Adaptive Genetic Algorithm - Breeder Genetic Algorithm and - Hybrid GA and TS 10 x develop GA-based metaheuristic for solving bi-objective multiple VRPSD. x conduct comparative evaluation on the performance among these metaheuristics. x solving real problem data in optimizing solid waste collection by using the VRPSD model and the developed metaheuristics. 1.5 Scope of the Study 1. In this research, we confine the application of our algorithm to a priori VRPSD under restocking policy. 2. The problem data for the performance testing in simulation study are randomly generated problem data following specific probability distributions. 3. We confine our real problem solving in the case study of optimizing solid waste collection. 4. It is assumed that vehicles start and end at a single depot. 5. It is assumed that every customer demands have the same probability distribution but can have different parameters (for example: different mean and variance for each customer that have normal distribution). 6. The problem data were generated using Minitab version 14 and were tested and analyzed using SPSS version 13 for Windows, while the implementation of metaheuristics was done using Delphi version 6.0. Minitab has special feature in generating random data following specific probability distribution which SPSS does not have, while SPSS has advantage in better graphical representation of the output of data analysis than Minitab. 7. The stopping criteria in addressing convergence for all procedures presented in this study will not using numerical analysis component/ complexity analysis. 11 1.6 Significance of the Study 1. From the view point of algorithm development: our algorithms are the first implementation of - Reactive Tabu Search, - Adaptive GA, - Breeder GA, - and hybrid GA (especially hybrid GA with Tabu Search) for solving single and multiple vehicles appeared in the VRPSD literature. 2. We also propose the new adaptive mutation probability measure. 3. We contribute on the first considering bi-objective VRPSD under restocking policy and proposing new GA-based for solving bi-objective multiple VRPSD. 4. From application aspect, real problem in optimizing waste collection was solved by using the proposed algorithm. 5. We also develop software package for solving VRPSD. 6. And the result of this study will be presented and published at the international publications/ journal. Along the recent increase in the demand for an efficient management system for VRP and logistics and the advances in computer and information technology, the importance of being able to effectively make use of the huge amount of information has become important for a wide range of applications. Cost efficient routing of vehicles play an important role to a wide range of industries. As indicated earlier, our focus would be to work on the problem related to VRP for solid waste collection in the Municipality of the Johor Bahru city. 1.7 Organisation of the Thesis This thesis contains eight chapters. The first chapter is the introduction. This chapter gives an introduction to the background of the problem, the statement of the problem, objectives and scope of the study, and significance of the study. 12 Chapter two is the Literature Review. This chapter presents a literature review about the Vehicle Routing Problem with Stochastic Demands, solution techniques appeared in literature and also techniques which may be applied for solving VRPSD. Chapter three is the Research Methodology. This chapter presents the direction of the study and an overview of the methods used. It begins with the general steps of research framework. A description of the data source for this study and test related to it are also presented include case-study of a real-life application at solid waste collection company (Perniagaan Zawiyah Sdn. Bhd). It follows with the description of algorithm implemented with emphasis on Genetic Algorithm, Tabu Search and the enhancement of these two metaheuristics. In Chapter four, the development of metaheuristic methods based on Tabu Search and Reactive Tabu Search for solving single VRPSD are explored. The discussion of this chapter begins with the detail development of Tabu Search and Reactive Tabu Search for single VRPSD, followed by the experimental results and discussion. Chapter five discusses the development of several Genetic Agorithm-based metaheuristics for solving single VRPSD. The standard Genetic Algorithm is presented, followed by the enhancement of it through Adaptive Genetic Algorithm, hybrid Genetic Algorithm with Tabu Search, and the Breeder Genetic Algorithm. Chapter six considers multiple VRPSD which analog of the deterministic VRP. The use of Breeder Genetic Algorithm is proposed to solve the bi-objective VRPSD in minimizing the number of vehicles required and the total expected cost concurrently, using Pareto-rank by modifying and extending the single-objective Breeder Genetic Algorithm. VRPSD finds its application on wide range of logistics and distribution sector in cases where it is impossible to know the demand of the customers before the vehicles arrives at customer’s location. In Chapter seven, the implementation of 13 VRPSD in the case of picking up of garbage done by solid waste company in Johor Bahru namely Perniagaan Zawiyah Sdn. Bhd. is discussed. Finally, Chapter eight concludes the relevant and important findings from this research. Recommendations on area related to the findings and possible directions for future research are presented. 14 CHAPTER 2 REVIEWS OF THE LITERATURE 2.1 Introduction The process of solving Vehicle Routing Problem (VRP) takes place again and again in many business operations. This has led many researchers in this field to develop solution techniques to generate (near) optimal solution for solving VRP which may also be applied to other variant of VRPs. This research as indicated in the previous chapter focuses on developing solution methods for solving VRP with Stochastic Demands (VRPSD). This chapter reviews available literature on the VRPSD under a priori approach. It commences with the description of the VRPSD, the preview on the solution frameworks, and mathematical model of VRPSD including previous works on VRPSD. These are followed by a discussion on issues related to the use of heuristic methods, the basic concept of metaheuristics and hybrid metaheuristics relevant to this study, and some criteria for classification of metaheuristics. Finally, the last section of this chapter discusses the taxonomy of hybrid metaheuristics. 2.2 Vehicle Routing Problem with Stochastic Demands (VRPSD) VRP and its variants are at the core of many industrial applications in transportation logistics. In this study, a variant of VRP is studied where customer demands are not deterministically known until the time when the vehicle arrives at 15 the customer location. To deal with this problem, the VRP is extended to cover the more realistic case of uncertainty in customer demands by using VRP with Stochastic Demands model. The customer demands are unknown but assumed to follow specific probability distribution according to the past experience about customer demands. 2.2.1 Real world applications The VRPSD finds its applications in all those cases where it is impossible to know the customers demand before the vehicles arrive at customer’s location. The picking up of garbage is one of them. It is of course impossible to know a priori how much garbage has to be collected at each customer location. It is possible that the total quantity of garbage could exceed the vehicle capacity. In such situation, the vehicle needs to go to the depot to replenish and then resume its route. The delivery to petrol stations is another case subject to the stochasticity of demand. When the customer (stations) issues the order, it is still unknown how much he will sell in the time between the order and the new delivery. Another related application is in the cash replenishment of automatic teller machines (ATM) of a bank. The daily demand for cash at a specific machine is a random variable, while the maximum amount of cash that might be carried by a vehicle at any time is specified by a security policy. Not all machines may be able to be supplied on a route from its designated vehicle, forcing a decision to be made as to how to supply the machines when restocking demand may exceed vehicle capacity. According to Yang et al. (2000), VRPSD also appear in cases such as salespersons on peddle routes where salesperson stock their trucks with goods that they anticipate can be sold on the route. Visits are made to predetermined customer sites with the intent of replacing depleted stock. Because there is no advanced reporting of the current inventory level or the size of a replenishment order, the amount to be sold is not known until the site is visited. Examples of such peddle routes are (1) beer distribution to retail outlets, (2) supply of baked goods at food 16 stores, (3) replenishment of liquid gas at research laboratories, and (4) stocking of vending machines. 2.2.2 Solution Frameworks for VRPSD Dror et al. (1989) mentioned that there are two solution frameworks for Stochastic VRP (including VRPSD), namely stochastic programming and Markov decision process. Further in this study, we focus on the discussion on stochastic programming. The mathematical programming problem is defined as follows. Minimise Z MP subject to: f (x) g i ( x) d 0 , (i = 0, 1, …, m), x S Rn , xt0 where the real functions f, g i (i = 0, 1, …, m) are assumed to be deterministic and known. In general, the stochastic programming is a mathematical programming where one or more parameters are random variables. Such cases seem typical of real-life problems, where it may be difficult to determine the values of the parameters with certainty. The stochastic programming can be described as Minimise Z SP subject to: f ( x, [ ) g i ( x, [ ) d 0 , (i = 0, 1, …, m) x S Rn , x t 0. 17 where [ is a vector of random variables, hence ( f ( x, [ ) , g i ( x, [ ) , i = 0, 1, …, m) is a random vector. Stochastic programming terminology distinguishes between wait and see and here and now situations. The wait and see leads to the so called distribution problems by computing the decision variables (planned vehicle routes) after observing the realization of [ (customer demands). Here and now is the situation where the computation of x (route solution) has to precede the observation of [ . The SVRP more naturally belongs to the here and now category since usually routes have to be planned in anticipation of customer demands which become only known only in the process of executing the planned routing sequence. Again, the problems in this category are usually modeled in two ways: so-called chance constrained stochastic programming (CCP) and stochastic programming with recourse (SPR) (Dror et al., 1989). The CCP models consists of designing a set of vehicle routes of least total cost, subject to the constraint that the probability of route failure of any route is within an allowable limit. Stewart and Golden (1983) and Laporte et al. (1989) shown that under some restrictive assumptions on the statistics of demand, the problem can be reduced to a deterministic VRP thus existing deterministic algorithms can be readily applied. Although the CCP tries to control the probability of roué failure, the cost of such failures is ignored. SPR models differ from the CCP at two major points: First, it is assumed that every customer demand has to be fully satisfied, thus at a route failure a recourse action always includes the filling of the uncompleted demand. Secondly, the SPR explicitly model the route failure and the cost of recourse action. Therefore, the result more closely reflects the real routing situation. In general, the SPR models are more difficult to solve than CCP models but their objective functions are meaningful (Gendreau et al., 1996). Stewart and Golden (1983) provide a comparison of the two mentioned frameworks for solving a multiple VRPSD. They concluded that if the route failure penalty cost is known, SPR models produce lower costs than CCP. Laporte and 18 Loveaux (1989) in Dror et al. (1989) propose a stochastic model with recourse with full service (i.e., no split deliveries) is assumed and two cases are considered: 1. The SVRP with early information: all customer demands are known after the route is constructed but before the vehicle leaves the depot and route breaks are planned in advance so as to minimise their expected cost; 2. The SVRP with late information: breaks and failures coincide. In both cases, it is assumed that the planned routing sequence is unaltered by failures or breaks. The two models differ only in their recourse function. The theoretical work in Bastian and RinnooyKan (1992) extends the Stewart and Golden formulations. They revised the SPR model with a fixed penalty for every unit of unsatisfied demand to include the expected cost of transportation instead of the transportation cost for a complete route. 2.2.3 Types of Recourse A general SPR model can be written as Minimise z E[ f ( x, [ ) I ( x, [ )] subject to x S where x is the route solution, [ is a vector of random variables, f ( x, [ ) is the deterministic route cost, I ( x, [ ) is the recourse function which is the cost of recourse action and the S is the set of all possible combinations of m routes (Yang et al., 2000) The first two recourse versions were provided by Stewart and Golden (1983). The first version is to charge a fixed penalty O k every time a route k fails. The second version is to charge a penalty for every unit of demand in excess of the vehicle capacity Q on route k. Both versions assume that all customers must be 19 visited on the route and therefore the objective function includes the deterministic total cost of the route plus the penalty term. Dror and Trudeau (1986) replaced the fixed linear penalty cost in Stewart and Golden model by a non-linear recourse that considers failure location. Their recourse assumed that after a failure all the remaining customers are served through individual deliveries. Assuming this nonoptimistic recourse, the deterministic cost in the objective function is replaced by the expected cost. Dror and Trudeau (1989) introduced a theoretically new recourse defined by a return to the depot whenever the vehicle is unable to satisfy the demand (the capacity becomes exceeded) and resume the service at the customer on the planned route where route failure had occurred. Savelsbergh and Goetschalckx (1995) simplified the recourse to achieve computational efficiency assuming at most one failure in a route. All subsequent publications (e.g. by Laporte and Loveaux, 1998; Gendreau et al., 1996) have maintained the simple recourse policy defined in Dror et al. (1989) with the exception of Bertsimas et al. (1995), Yang et al. (2000), Bianchi et al. (2004), and Chepuri and Homem-de-Mello (2005). The idea for a proactive recourse is introduced by Bertsimas et al. (1995), they improve the expected cost of a priori solutions for single VRPSD using dynamic programming to define routes with proactive returns to the depot for restocking. Yang et al. (2000) also adopt a proactive recourse (preventive restocking) and design routes for a multiple VRPSD. Bianchi et al. (2004) use the dynamic programming as Yang et al. (2000), for solving single VRPSD. The recourse in Chepuri and Homem-de-Mello (2005) is to terminate the route and impose a penalty such as lost revenue and/or emergency deliveries. This recourse is most practical when the time frame within which demand must be met, is critical. 20 2.2.4 Mathematical Formulation of Single VRPSD This section presents the mathematical formulation of the single VRPSD. Definitions of some of the frequently used notations for the VRPSD are given as follows: (1). Customers and depot V = {0, 1, ..., n} is a set of nodes with node 0 denotes the depot and nodes 1, 2, …, n correspond to the customers to be visited. We assume that all nodes, including the depot, are fully interconnected. (2). Demands Customers have stochastic demands [ i , i = 1, ..., n which follows discrete uniform probability distribution pik Pr ob([ i k ) , k = 0, 1, 2, …, K. Assume further that customers’ demands are independent. Actual demand of each customer is only known when the vehicle arrives at the customer location. (3). Vehicle and capacity constraint The vehicle has a capacity limit Q. If the total demand of customer exceeds the vehicle capacity, route failure is said to have occurred. (4). Routes Every route must start at the depot, visit a number of customers and return to the depot. A feasible solution to the VRPSD is a permutation of the customers s = (s(1), s(2), . . . , s(n)) starting and ending at the depot (that is, s(1) = s(n) = 0), and it is called a priori tour. (5) Route failure and recourse action Route failure is said to have occurred if the total demand exceeds the vehicle capacity and the preventive restocking policy (Yang et al., 2000, Bianchi et al., 2004) is applied. 21 (6). Cost and VRPSD objective function A = {(i, j) : i, j V, i z j} is the set of arcs joining the nodes and C = { cij : i, j V, i z j} is a non-negative matrix denotes the travel costs (distances) between node i and j. The cost matrix C is symmetric and satisfies the triangular inequality. The cost matrix is a function of Euclidean distance; where the Euclidean distance can be calculated using the following equation: d ij ( xi x j ) 2 ( y i y j ) 2 Given a vehicle based at the depot, with capacity Q, VRPSD under restocking policy requires finding vehicle routes and a restocking policy at each node to determine whether or not to return to the depot for restocking before visiting the next customer to minimise total expected cost. The costs under consideration are: - Cost of traveling from one customer to another as planned. - Restocking cost: the cost of traveling back to the depot for restocking. - The cost of returning to depot for restocking caused by the remaining stock in the vehicle being insufficient to satisfy demand upon arrival at a customer location. This route-failure cost is a fixed nonnegative cost b plus a cost of traveling to the depot and back to the route. VRPSD is defined as a problem of Minimise f 0 (Q) = E[ f ( x, [ ) I ( x, [ )] (2.1) subject to x S where x is route solution, [ is a vector of customer demands, f ( x, [ ) is the deterministic route cost, I ( x, [ ) is the recourse function which is the cost of recourse action and the S is the set of all possible route solutions. The VRPSD objective function f 0 (Q) is calculated using dynamic programming presented as follows: 22 A feasible solution to the VRPSD is a permutation of the customers s = (s(1), s(2), . . . , s(n)) starting at the depot (that is, s(1) = 0), and it is called a priori tour. Let 0 1 2 … j j+1 … n be a particular vehicle route. Upon the service completion at customer j, suppose the vehicle has a remaining load q (or the residual capacity of the vehicle after having serviced customer j), and let f j (q) denote the total expected cost from node j onward. If L j represents the set of all possible loads that a vehicle can have after servicing customer j, then, f j (q) for q L j satisfies f j (q ) minimum ( f jp (q ), f jr (q )) (2.2) where p f j (q ) c j , j 1 ¦ f j 1 (q k ) p j 1,k k dq ¦ [b 2c j 1,0 f j 1 (q Q k )] p j 1,k k !q (2.3) and K f jr (q) c j ,0 c 0, j 1 ¦ f j 1 (Q k ) p j 1,k (2.4) k 1 with the boundary condition f n (q) c n,0 , q S n (2.5) In equations (2.3-2.5), f jp (q ) represents the expected cost of going directly to the next node, whereas f jr (q ) represents the expected cost of the restocking action. These equations are used to recursively determine the objective value of the planned vehicle route and the optimal sequence of decisions after customers are served (Bianchi et al., 2004). In principle, this procedure leads to a dynamic programming 23 since each time a customer demand is revealed, a decision has to be taken as to where the vehicle should proceed. 2.2.5 Threshold and Expected Cost Evaluation The expected cost-to-go in case of restocking, is constant for every q, since in the case of restocking the vehicle will have full capacity Q before serving the next customer, whatever the current capacity q is. On the other hand, f jp (q ) is a monotonically non-increasing function in q, for every fixed customer j. Therefore there is a capacity threshold value h j such that, if the vehicle has more than this value of residual goods, then the best policy is to proceed to the next planned customer, otherwise it is better to go back to the depot for replenishment, as seen in Figure 2.1 (Yang et al., 2000). Figure 2.1 : Function of q The algorithm in Figure 2.2 is an implementation of the above dynamic programming recursion for the calculation of f 0 (Q ) and of the thresholds (Bianchi et al., 2004). 24 for (q = Q down to 0) do f n (q) = c n ,0 for (j = n-1 down to 1) do compute f jr using f j 1 (.) for (q = Q down to 0) do compute f jp (q ) compare f jr and f jp (q ) for finding the threshold h j compute f j (q ) using f j 1 (.) end for end for end for compute f 0 (Q ) return f 0 (Q ) Figure 2.2 : Algorithm for the computation of the VRPSD objective function f 0 (Q ) 2.2.6 Multiple homogeneous VRPSD Given a fleet of vehicles indexed by m M, is based at a depot with each capacities Q, the problem is to find a set of a priori routes (and the associated optimal restocking policies), each to be served by a vehicle, such that customer demands on the route are fully satisfied and the total expected cost is minimised. The total demand of customers assigned to each route does not exceed the vehicle capacity of the vehicle assigned to it, and the total cost is minimised. In deterministic vehicle routing problems, a single route will always be optimal if the vehicle has enough capacity to carry all customer demand. However, multiple vehicles (routes) are needed when the total customer demand exceeds the vehicle capacity. It is assumed that there are m vehicles for n customer nodes. Let r ^r1 , r2 ,..., rm ` be a particular solution in which ri is the sub tour dedicated to ith vehicle. The function to be minimised is the sum of expected cost for all vehicles whereas the function of each vehicle is similar with the single vehicle (Yang et al., 2000). 25 2.2.7 Previous Works on the VRPSD The summary of main contributions to solve VRPSD and similar problems is given in Table 2.1. [two depots] (1969) (1989) Dror (1986) et Trudeau Dror [multiple vehicles] [single vehicle] al. Theory [multiple vehicles] and Heuristic Golden (1983) and Heuristics Heuristic Tillman Stewart Methods Authors Data multiple terminal deliveries for the VRPSD in the case where there were small points on a modification of Clarke and Wright algorithm terminals and 7 demand the first to propose simple heuristic algorithm based Example data for 2 Description mean variables with finite mean and variances Markovian decision processes from theoretical point. random independent They also present a new solution framework using recourse non-negative along with some properties of optimal solutions. new Discrete or continuous demand the third expected cost. of between zero and one- generated uniformly reversing the direction of a designed route on the and Eilon multiple VRPSD. They also study the impact of customers Christofides were deviation each location, standard recourse. Modify the Clarke and Wright algorithm to solve Extensions of the 75- the mean demand at (GLM) for solving VRPSD under the fixed penalty Christofides and Eilon demand quantity was used as Original Poisson (μ) Demand distribution the superiority of generalized Lagrange multiplier 75-customers SPR with Overview concepts and main issues in VRPSD No data SPR SPR CCP and Adapt the Clarke and Wright algorithm and show Extensions of the 50 and Model Table 2.1 : Previous works on VRPSD 26 (1993) et [single vehicle] al. Theory [single vehicle] (1992) Dror Theory independent identically distributed occur at one of the last k customers of the planned route and are demands problem constraints, where route failure can only individual distribution where Normal b. General demand a. Binary demand failures per route is restricted either by data or the Consider VRPSD in which the number of potential No data are very close to re-Optimisation. b. Gives analytical evidence that a priori strategies customers is the same. especially if the distribution of the demand of the quite well from a worst case perspective based on finding an a priori sequence, performs a. Gives analytical evidence that the cyclic heuristics No data demand) behaviour. Bertsimas it does not have any Optimisation strategies have on average very close of demand of one unit or strategy (n Optimisation. It was shown that a priori and re- the demand customers either has a to Binary Demand distribution re- competitive strategy [single vehicle] Data (1990) Description Introduce the idea of a priori Optimisation as a No data Methods Bertsimas et al. Theory Authors Table 2.1 : Previous works on VRPSD (continued) 27 Methods (1996) Data sets of were Vertices continuous potential moves. Comparisons with known optimal solutions (exact algorithm) vary from 6 to 46 customers [number of vehicle = 2] from optimality. in 89.45% of cases, with an average deviation of 0.38% indicate that the heuristic produces on optimal solution with proxy for the objective function to evaluate VRPSDC Develop a tabu search algorithm called TABUSTOCH 2 vehicles. distribution - Largest instances can be solved is 46 customers and uniform customers. these routes are followed by skipping the absent according vehicle = 2] 2 a first demand were to The uniform distribution according to a discrete the appropriate range was then generated in value of each demand probabilities. a or (10,20) in equal square range of (1,9), (5,15) stages: planned collection routes are designed in first generated in the assigned vertices unit square - Propose an exact integer L-shaped algorithm in two n posteriori solutions of the deterministic realizations Demand distribution n Discrete uniform solutions by comparing to sample averages of a random location in Computational study for assessing quality of a priori 10 Description stage, when the set of present customers is known; [0,100] SPR SPR SPR Model [number of for VRPSDC Gendreau et al. Tabu Search for (1995) Gendreau et al. Exact algorihm (1995) Bertsimas et al. Cyclic heuristics Authors Table 2.1 : Previous works on VRPSD (continued) 28 SPR algorithm with two-phases: solve the (2000) et objective function and in the second phase restocking policy vehicles] 1) as the eleven (50,50) instances up to 15 customers. They also adapt the under dynamic programming of stochastic case. OrOpt local search into the insertion and deletion costs - Vehicle capacity=1 30, 40, 50, 60} 15}, larger size {20, small size {10, 12, - No of customers: possible values (0, 0.1, 0.2,…, 0.9, square, depot at comparisons with branch and bound solutions to with distribution in a 100x100 first-route second. Both algorithms seem to be efficient and robust for small size instances, as shown by discrete triangular A are known mean and variance with generated uniformly with Investigate the route first-cluster second and the cluster - Customer locations and multiple al. Heuristics [single stochastic neighbourhood search methods to improve the solution the distributed general customers Christofides normally consider Yang distribution Demand Solve the problem using a computationally efficient Extensions of the 75- Independently and Data (1995) [multiple vehicles] and SPR Description assignment model for the VRP in the first phase and and Eilon Heuristics Savelsbergh Model Goetschalckx Methods Authors Table 2.1 : Previous works on VRPSD (continued) 29 Methods [single vehicle] Mello (2005) [single vehicle] and Heuristic Homem-de- Chepuri (2004) SPR 2 - A Poisson or a Normal Demand distribution 100 vertices Cross-Entropy method for VRPSD. 75 have 50 Di [50,100] with equal demand customers uniform Gamma ( Ki , E ), E identical independent random numbers for all nodes between 0 and 1 are probability customers and 5 have 200 Spread Si [1,5] with equal customers, 40 have 100 probability: 0.5 - Instances: Propose a new heuristic method based on Distances heuristic. average [ Di Si , Di Si ] Di [1,49] and [0,99] solution quality in respect to cyclic around and Genetic Algorithm that found better distribution Tabu Search, Simulated Annealing, ACO normal interval two where cluster, clusters centers in following metaheuristics: Iterated Local Search, f = 0.9 location Uniform distribution in the instances between 25 and uniform distribution according to a continuous distribution Consider basic implementation of five - Customers minimise the expected solution cost. vehicles] SPR Data Propose an Integer L-Shaped algorithm - N vertices in the [0,100] Description for the VRPSD. The objective is to SPR Model [between 2 and 4 Bianchi et al Metaheuristics (2002) Laporte et al. Exact algorithm Authors Table 2.1 : Previous works on VRPSD (continued) 30 31 2.3 Heuristic Methods Silver et al. (1980) define heuristic method as a procedure for solving welldefined mathematical problem by intuitive approach in which the structure of the problem can be interpreted and exploited intelligently to obtain a reasonable solution. 2.3.1 Why Use a Heuristic Method? The VRP is one of the classical problems of Combinatorial Optimisation (CO). In simple terms, it can be defined as the problem of designing optimal routes for a fleet of vehicles that has to perform a set of transportation tasks. A large number of businesses and public sector agencies have to deal with the VRP on a regular basis. For instance, in waste collection, a company has a fleet of vehicles performing various transportation tasks, including domestic, industrial and commercial waste collection, the transportation tasks problem that also faced by various passenger transport services. Most CO problems, including the VRP, are quite simple to define but extremely difficult to solve. In theory, such problems are known as NP-hard, and most likely it can only be solved by an exhaustive search if an exact optimal solution is required. All known exact algorithms for such problems have super-polynomial time complexity. Despite great efforts, no polynomial-time algorithm has been found for any NP-hard problem, nor has it been proved that such an algorithm does not exist (Silver et al., 1980). According to Lenstra and Kan (1981), the VRP is a well-known integer programming problem which falls into the category of NP-hard problems. Given an NP-hard CO problem, one has essentially the following three options; firstly, to solve small instances of the problem using a super-polynomial exact algorithm; secondly, to solve special cases of the problem using a specially designed polynomial-time algorithm and the third to solve the problem approximately, using a polynomial-time approximation algorithm, often called a heuristic. Real-life instances of the VRP are usually sufficiently large to rule out the 32 first option. Moreover, they usually contain various additional constraints that would be difficult (or even impossible) to incorporate into the exact procedure and, therefore, some solutions obtained can be in fact infeasible. Polynomially solvable cases required by the second option are currently known only for some restricted versions of the VRP, in particular for the TSP. So, typically, there is little hope that a real-life vehicle routing problem would fit a known special case. For these reasons, option 3 often remains the only choice. According to Silver et al. (1980), there are several possible reasons for using heuristic methods. These include: a. The mathematical problem is such a nature that an analytic (closed form) or iterative solution procedure is unknown. b. Although an exact analytic or iterative solution procedure may exist, it may be computationally prohibitive to use or perhaps unrealistic in its data requirements. c. The heuristic method, by design, may be simpler for the decision maker to understand, hence markedly increasing the chances of implementation. d. For well-defined problem that can be solved optimally, a heuristic method can be used for learning purposes, e.g., to develop an intuitive feeling as to what variables are important. (This closely parallel with one of the primary reasons for using simulation methods in operational research.) e. A heuristic may be used as part of an iterative procedure that guarantees the finding of an optimal solution. Two distinct possibilities exist: i. To easily obtain an initial feasible solution. ii. To make a decision at an intermediate step of an exact solution procedure. f. Heuristics can be used to give such ‘good’ starting solutions. In implicit enumeration approaches to problem solving a good starting solution can give a bound that drastically reduces the computational effort. 33 2.3.2 Measuring the Quality of a Heuristic Silver et al. (1980) stated that a good heuristic should possess the following four properties: 1. Realistic computational effort to obtain solution. 2. The solution should be close to the optimum on the average, i.e., we want good performance on the average. 3. The chance of a very poor solution (i.e., far from the optimum) should be low. 4. The heuristic should be as simple as possible for the user to understand, preferably explainable in intuitive terms, particularly if it is to be used manually. Here are some of the ways for measuring the quality of heuristics: 1. Comparison with the optimum solution. 2. Problem relaxation – bounding. 3. Extreme value statistical methods. 4. Other comparisons. i. Comparison with an enumerative method, requiring much more computational effort that is terminated after a large amount of computation, but likely without having found the optimal solution. ii. Comparison with performance of the decision maker, either during an earlier time frame or directly in parallel – there are compelling arguments for this type of comparison. Identification of significant improvement over existing procedures is probably much more important for encouraging implementation than any proof of optimality, or nearness to optimality. iii. Comparison with other heuristic procedures – where other heuristic solution methods have been proposed and/or used, one certainly can compare ‘our’ heuristic against the others. iv. Comparison with a ‘random’ decision rule – an extreme type of heuristic is where one makes a decision completely at random. v. Worst-case analysis, it determines the worst possible performance of the heuristic (and the associated values of the problem parameters). However, 34 even when worst case performance is very poor, typical or average performance can often be very good. 2.4 Metaheuristics The term metaheuristic was firstly introduced by Glover (1977). It derives from the composition of two Greek words. Heuristic derives from the verb heuriskein which means “to find”, while the suffix meta means “beyond, in an upper level”. Before this term was widely adopted, metaheuristics were often called modern heuristics (Reeves, 1993). Examples of metaheuristics include-but not limited to- Ant Colony Optimisation, Evolutionary Computation including Genetic Algorithm, Iterated Local Search, Simulated Annealing and Tabu Search. Nowadays metaheuristics are widely used to solve important practical combinatorial Optimisation problems. However, due to the variety of techniques and concepts comprised by metaheuristics, there is still no commonly agreed definition for metaheuristics. A metaheuristic is formally defined as an iterative generation process which guides a sub-ordinate heuristic by combining intelligently different concepts for exploring and exploiting the search space, learning strategies are used to structure information in order to find efficiently near-optimal solutions (Osman and Laporte, 1996). Stutze (1999) defined metaheuristics as typically high-level strategies which guide an underlying, more problem specific heuristic, to increase their performance. The main goal is to avoid the disadvantages of iterative improvement and, in particular, multiple descents by allowing the local search to escape from local optima. This is achieved by either allowing new starting solutions for the local search in a more ‘intelligent’ way than just providing random initial solutions. Many of the methods can be interpreted as introducing a bias such that high quality solutions are produced quickly. This bias can be of various forms and can be cast as descent bias (based on the objective function), memory bias (based on previously made decisions) or experience bias (based on prior performance). Many of the metaheuristic approaches rely on probabilistic decision made during the search. But, 35 the main difference to pure random search is that in metaheuristic algorithm randomness is not used blindly but in an intelligent biased form. The definition used in the Metaheuristics Network (2000) is as follows. A metaheuristic is a set of concepts that can be used to define heuristic methods that can be applied to a wide range of problems. In other words, a metaheuristic can be seen as a general algorithmic framework which can be applied to different Optimisation problems with relatively few modifications to make them adapted to a specific problem. Blum and Roli (2003) summarised the outline fundamental properties which characterize metaheuristics: - Metaheuristics are strategies that guide the search process. - The goal is to efficiently explore the search space in order to find (near) optimal solutions. - Techniques which constitute metaheuristics algorithms range from simple local search procedures to complex learning processes. - Metaheuristic algorithms are approximate and usually non-deterministic. - They may incorporate mechanism to avoid getting trapped in confined areas of the search space. - Metaheuristics are not problem-specific. - Todays more advanced metaheuristics use search experience (embodied in some form of memory) to guide the search. According to Blum and Roli (2003), metaheuristics are high-level strategies for exploring search spaces by using different methods. Of great importance hereby is that a dynamic balance is given between diversification and intensification. The term diversification generally refers to the exploration of the search space, whereas the term intensification refers to the exploitation of the accumulated search experience. These terms stem from the tabu search field and it is important to clarify that the terms exploration and exploitation are sometimes used instead, for example in the Evolutionary Computation field, with a more restricted meaning. In fact the notions of exploration and exploitation often refer to rather short term strategies tied to randomness, whereas intensification and diversification also refer to medium and long term strategies based on the usage of memory. The use of the terms 36 diversification and intensification in heir initial meaning becomes more and more accepted by the whole field of metaheuristics. According to Glover and Kochenberger (2003) in Raidl (2006), “… these methods have over time also come to include any procedure for problem solving that employs a strategy for overcoming the trap of local optimality in complex solution spaces, especially those procedures that utilize one or more neighbourhood structures as a means of defining admissible moves to transition from one solution to another, or to build or destroy solutions in constructive and destructive processes.” 2.4.1 Classification of Metaheuristics There are several ways of classifying and describing metaheuristic algorithms. Blum and Roli (2003) summarised the classification of metaheuristics as follows. x Nature-inspired vs. non-nature inspired. Perhaps, the most intuitive way of classifying metaheuristics is based on the origins of the algorithm. There are nature-inspired algorithms, like Genetic Algorithm (GA) and Ant Colony Algorithm (ACO), and non nature-inspired ones such as Tabu Search (TS) and Iterated Local Search (ILS). In our opinion this classification is not very meaningful for the following two reasons. Firstly, many recent hybrid algorithms do not fit either class (or, in a sense, they fit both at the same time). Secondly, it is sometimes difficult to clearly attribute an algorithm to one of the two classes. So, for example, one might ask the question if the use of memory in Tabu Search is not nature-inspired as well. x Population-based vs. single point search. Another characteristic that can be used for the classification of metaheuristics is the number of solutions used at the same time: Does the algorithm work on a population or on a single solution at any time? Algorithms that work on single solutions are known as trajectory methods and encompass local search-based metaheuristics. 37 They all share the property of describing a trajectory in the search space during the search process. Population-based metaheuristics, on the contrary, perform search processes which describe the evolution of a set of points in the search space. x Dynamic vs. static objective function. Metaheuristics can also be classified according to the way they make use of the objective function. While some algorithms keep the objective function given in the problem representation “as it is”, some others, like Guided Local Search (GLS), modify it during the search. The idea behind this approach is to escape from local minima by modifying the search landscape. Accordingly, during the search the objective function is altered by trying to incorporate information collected during the search process. x One vs. various neighborhood structures. Most metaheuristic algorithms work on one single neighborhood structure. In other words, the fitness landscape topology does not change in the course of the algorithm. Other metaheuristics, such as Variable Neighborhood Search (VNS), use a set of neighborhood structures which gives the possibility to diversify the search by swapping between different fitness landscapes. x Memory usage vs. memory-less methods. A very important feature of metaheuristics classification is the use of search history, that is, whether they use memory or not. Memory-less algorithms perform a Markov process, as the information used exclusively to determine the next action is the current state of the search process. There are several ways of making use of memory. Usually we differentiate between the use of short term and long term memory. The first usually keeps track of recently performed moves or visited solutions. The second is usually an accumulation of synthetic parameters about the search. The use of memory is nowadays recognized as one of the fundamental elements of a powerful metaheuristic. In the rest of this study, we use the metaheuristics classification according to the single point versus population-based search classification, which divides 38 metaheuristics into trajectory methods and population-based methods. This choice is motivated by the fact that this categorization permits a clearer description of the algorithms. Moreover, a current trend is the hybridisation of methods in the direction of the integration of single point search algorithms in population-based ones. 2.4.2 Trajectory Methods 2.4.2.1 Basic Local Search: Iterative Improvement The basic local search is usually called iterative improvement, since each move is only performed if the resulting solution is better than the current solution. The algorithm stops as soon as it finds a local minimum. 2.4.2.2 Simulated Annealing Simulated Annealing (SA) is one of the oldest among the metaheuristics and surely among the first algorithms that has an explicit strategy to escape from local minima. The origins of the algorithm are in statistical mechanics (Metropolis algorithm) and it was first presented as a search algorithm for CO problem in Kirkpatrick et al. (1983) (given some assumptions on the cooling schedule of the temperature, etc.) that could be shown to converge to an optimal solution. The fundamental idea is to allow moves resulting in solutions of worse quality than the current solution (uphill moves) in order to escape from local minima. The probability of doing such a move is decreased during the search. Simulated Annealing comes from the annealing process of solids. A solid is heated until it melts, and then the temperature of the solid is slowly decreased (according to annealing schedule) until the solid reaches the lowest energy state or the ground state. If the initial temperature is decreased rapidly, the solid at the 39 ground state will have many defects or imperfections. An easy implementation of the algorithm makes it very easy to adapt a local search method (e.g. best improvement local search) to a simulated annealing algorithm, usually rendering the local search with much better results. But although it is proven to converge to the optimum, it converges in infinite time. Not only for this reason, but also since we have to cool down slowly, the algorithm is usually not faster than its contemporaries. 2.4.2.3 Tabu Search Tabu Search (TS) was proposed by Glover in 1986. A description of the method and its concepts can be found in Glover and Laguna (1997). The basic principle of TS is to pursue a best improvement Local Search whenever it encounters a local minimum by allowing non-improving moves, cycling back to previously visited solutions is prevented by the use of memories called tabu lists. These tabu lists record the recent history of the search. According to Glover, TS is not seen as a proper heuristic, but rather as a metaheuristic, i.e., a general strategy for guiding and controlling “inner” heuristics specifically tailored to the problems at hand (Gendreau, 2002). TS is among the most cited and used metaheuristics for combinatorial problems. Many computational experiments have shown that TS has now become an established Optimisation technique which can compete with almost all known techniques and which – by its flexibility – can beat many classical procedures. The word tabu (or taboo) comes from Tongan, a language of Polynesia, where it was used by the aborigines of Tonga Island to indicate things that can not be touched because they are sacred. According to Webster’s Dictionary, the word tabu now also means “a prohibition imposed by social custom as a protective measure: or of something “banned as constituting a risk”. These current more pragmatic senses of the word accord well with the theme of tabu search. The risk to be avoided in this case is that of following a counter-productive course, including one which may lead to entrapment without hope of escape. On the other hand, as in the broader social context where “protective prohibitions” are capable of being superseded when the 40 occasion demands, the “tabus” of tabu search are to be overruled when evidence of a preferred alternative becomes compelling. The most important association with traditional usage, however, stems from the fact that tabus as normally conceived are transmitted by means of a social memory which is subject to modification over time. This creates the fundamental link to the meaning of “tabu” in TS. The forbidden elements of TS receive their status by reliance on an evolving memory, which allows this status to shift according to time and circumstance. More particularly, TS is based on the premise that problem solving, in order to qualify as intelligent, must incorporate adaptive memory and responsive exploration. The adaptive memory feature of TS allows the implementation of procedures that implement a form of sampling (Glover and Laguna, 1997). 2.4.2.4 Explorative Local Search Methods These are the Greedy Randomised Adaptive Search Procedure (GRASP), Variable Neighbourhood Search (VNS), Guided Local Search (GLS) and Iterated Local Search (ILS). 2.4.3 Population-based Methods Population-based methods deal in every iteration of the algorithm with a set (i.e., a population) of solutions rather than with a single solution. As they deal with a population of solutions, population-based algorithms provide a natural, intrinsic way for the exploration of the search space. Yet the final performance depends strongly on the way the population is manipulated. 41 2.4.3.1 Evolutionary Computation Evolutionary Computation (EC) algorithms are inspired by nature’s capability to evolve living beings well adapted to their environment. EC algorithms can be succinctly characterized as computational models of evolutionary processes. At each iteration a number of operators is applied to the individuals of the current population to generate the individuals of the population of the next generation (iteration). Usually, EC algorithms use operator called recombination or crossover to recombine two or more individuals to produce new individuals. They also use mutation or modification operators which cause a self-adaptation of individuals. The driving force in evolutionary algorithms is the selection of individuals based on their fitness (this can be the value of an objective function or the result of a simulation experiment, or some other kind of quality measure). Individual with a higher fitness have a higher probability to be chosen as members of the population of the next iteration (or as parents for the generation of new individuals). This corresponds to the principle of survival of the fittest in natural evolution. It is the capability of nature to adapt itself to a changing environment, which gave the inspiration for EC algorithms. There has been a variety of slightly different EC algorithms proposed over the years. Basically they fall into three different categories which have been developed independently from each other. These are Evolutionary Programming (EP), Evolutionary Strategies and GA. EP arose from the desire to generate machine intelligence. While EP originally was proposed to operate on discrete representations of finite state machines, most of the present variants are used for continuous Optimisation problems. The latter also holds for most present variants of E, whereas GAs are mainly applied to solve combinatorial Optimisation problems. GAs are an effective search and Optimisation method that simulates the process of natural selection or survival of the fittest. Holland in 1974 developed the idea and concepts behind the GA and many authors have refined his initial approach (Ortiz et al., 2004). The purpose of GAs is to provide satisfactory results for Optimisation problems that are hard to solve using exhaustive techniques. The 42 researchers who used GAs to solve complex real-world problems report good results from these techniques. Genetic Algorithms differ from traditional search and Optimisation algorithm in four ways: 1. GAs work with a coding of solution set, not the solution themselves. 2. GAs search from a population of solutions, not a single solution. 3. GAs use payoff information (fitness function), not derivatives or other auxiliary knowledge. 4. GAs use probabilistic transition rules, not deterministic rules. (Goldberg, 1989) Whereas Jung (2000) notes that there are two distinguishing characteristics of the GAs that separate them from the general Optimisation techniques. The first characteristic is that the GAs start with an initial set of random feasible solutions, not a single solution. The GA generates many possible solutions to a given problem and then let them compete and mate to generate improved offspring. In conventional Optimisation techniques, a point to point approach is applied with a stepwise procedure to get the optimum solution, but this approach has the danger of falling in local optima (Gen and Cheng, 1997). However the GAs are population to population approach, and can escape from local optima and are very effective in global search with a multi directional search. The second characteristic is that the GAs do not have any specific functional requirement for the mathematical relationship that express a given problem. Therefore the GAs can handle any kind of objective function and constraints. It is difficult to apply simple GAs to complex Optimisation problem. However with some modification, GAs can solve some particular problems (Jung, 2000). There are three major advantages when applying GA to Optimisation problems (Gen and Cheng, 1997), they are x Due to their evolutionary nature, GAs will search for solutions without regard to the specific inner workings of the problem. Gas can handle any kind of objective functions and any kind of constraints (linear and non linear) defined on discrete, continuous or mixed search spaces. 43 x The ergodicity of evolution operators makes GA very effective at performing global search (in probability). The traditional approaches perform local search by a convergent stepwise procedure, which compares the value of nearby points and moves to the relative optimal points. Global optima can be found only if the problem possesses certain convexity properties that essentially guarantee that any local optimum is global optimum. x GA provides a great flexibility to hybridize with domain dependent heuristics to make an efficient implementation for a specific problem. 2.4.3.2 Ant Colony Optimisation Ant Colony Optimisation (ACO) is a metaheuristic approach proposed in Dorigo (1992) and Dorigo et al. (1999). The inspiring source of ACO is the foraging behavior of real ants. This behavior enables ants to find shortest paths between food sources and their nest. While walking from food sources and the nest and vice versa, ants deposit a substance called pheromone on the ground. They decide which direction to go by choosing the higher probability paths that are marked by stronger pheromone concentrations. This basic behavior is the basis for a cooperative interaction which leads to the emergence of shortest paths. 2.5 Hybrid Metaheuristics Over the last decade a large number of algorithms were reported that do not purely follow the concepts of one single traditional metaheuristic, but they combine various algorithmic ideas. These approaches are commonly referred to as hybrid metaheuristics. As for metaheuristics in general, there exist various perceptions of what a hybrid metaheuristic actually is. According to the May 2006’s issue of the Merriam Webster dictionary, the meanings of hybrid are 44 x something heterogeneous in origin or composition, x something (as a power plant, vehicle, or electronic circuit) that has two different types of components performing essentially the same function, while the current entry in Wiktionary defines this term as x offspring resulting from cross-breeding different entities, e.g. different species, x something of mixed origin or composition. Blum and Roli (2003) distinguish different form of metaheuristics hybridisation. The first one consists of including components from one metaheuristic into anoher one. The second form concerns systems that are sometimes labeled as cooperative search. The third form is the integration of approximate and systematic (or complete) methods. - Component Exchange among Metaheuristics One of the most popular ways to hybridisation concerns the use of trajectory methods in population-based methods. Most of the successful applications of EC and ACO make use of local search procedures. The reason for that becomes apparent when analysing the respective strengths of trajectory methods and population-based methods. The power of population-based methods is certainly based on concept of recombining solutions to obtain new ones. A solution resulting from recombination in population-based methods is usually more different from the parents. The strength of trajectory methods is rather to be found in the way they explore a promising region in the search space. A promising area in the search space is searched in a more structured way than in population-based methods. In this way, the danger of being close to good solutions but missing them is not as high as in population-based methods. - Cooperative Search Cooperative search consists of a search performed by possibly different algorithms that exchange information about states, models, entire sub-problems, solutions or 45 other search space characteristics. Typically, cooperative search algorithms consist of the parallel execution of search algorithms with a varying level of communication. The algorithms can be different or they can be instances of the same algorithm working on different models or running with different parameters setting. Cooperative search nowadays receives more attention, which is among other reasons due to the increasing research on parallel implementations of metaheuristics. The aim of research on parallelization of metaheuristics is twofold. Firstly, metaheuristics should be redesigned to make them suitable for parallel implementation in order to exploit intrinsic parallelism. Secondly, an effective combination of metaheuristics has to be found, both to combine different characteristics and strengths and to design efficient communication mechanism. - Integrating Metaheuristics and Systematic Methods A very successful example of such integration is the combination of metaheuristics and Constraint Programming (CP) (Focacci et al., 2002). The hybridisation is usually achieved by integrating concepts developed for metaheuristics (e.g., probabilistic choices, aspiration criteria, heuristic construction) into tree search methods. A typical application of this integration is the use of a probabilistic backtracking, instead of a deterministic chorological backtracking. For instance, an extreme case is the random choice of a backtracking move. The list of possible backtracking moves can also be sorted by means of a dynamic heuristic or a sampling of the leaves of the search tree. This sampling can be performed by a metaheuristic: the result of each possible backtracking move is chosen as the starting point for producing a complete solution by a metaheuristic (more than one solution can be generated from each partial solution). Then, the quality of these complete solutions is used as score for probabilistically selecting a backtracking move. 2.6 Applications of Genetic Algorithm in the Vehicle Routing Problems For many years, GAs have been proven to be effective and successful in a wide variety of search domain, even for non-linear, multi modality, high dimensionality, discontinuity and noised mathematical models. Therefore GAs have 46 been widely applied in solving combinatorial optimization problems, including certain types of VRP, especially where time windows are included and in TSP. Blanton and Wainwright (1993) were the first to apply a genetic algorithm to VRPTW. They hybridized a genetic algorithm with a greedy heuristic. Under this scheme, the genetic algorithm searches for a good ordering of customers, while the construction of the feasible solution is handled by the greedy heuristic. Thangiah (1995a and 1995b) uses a genetic algorithm to find good clusters of customers within a “cluster first, route second” problem-solving strategy. Thangiah et al. (1995) test the same approach to solve vehicle routing problems with time deadlines. In the algorithm proposed by Potvin and Bengio (1996) new offspring are created by connecting two route segments from two parent solutions or by replacing the route of the second parent-solution by the route of the first parent-solution. Mutation is then used to reduce the number of routes and to locally optimize the solution. Berger et al. (1998) present a hybrid genetic algorithm based on removing certain customers from their routes and then rescheduling them with well-known route-construction heuristics. The mutation operators are aimed at reducing the number of routes by rescheduling some customers and at locally reordering customers. Bräysy and Gendreau (2001a, 2001b) continues the study of Berger et al. (1998) by performing a comprehensive sensitivity analysis, and by creating new crossover and mutation operators. Bräysy et al. (2000) hybridize a genetic algorithm with an evolutionary algorithm consisting of several route construction and improvement heuristics. The recent genetic algorithm by Tan et al. (2001) is based on Solomon’s insertion heuristic, -interchanges and the well-known PMX-crossover operator. Berger et al. (2001) proposed GAs approach involves parallel co-evolution of two populations and partial temporal constraint relaxation to improve solution quality. The first population evolves individuals to minimize total traveled distance while the second population focuses on minimizing temporal constraint violation to generate a feasible solution. Results from a computational experiment showed that Parallel Hybrid GA is cost-effective and very competitive, matching and even outperforming the best-known VRPTW metaheuristics. The developed heuristic improved the overall total number of tours while generating six new best-known solutions for Solomon data sets. 47 GAs also appear to find good solutions for the TSP. However it depends very much on the way the problem is encoded and which crossover and mutation methods are used. It seems that the methods use heuristic information or encode the edges of the tour (such as the matrix representation and crossover) perform the best and give good indications for future work in this area. Overall, it seems that GAs have proved suitable for solving the TSP. As yet, GAs have not found a better solution to the TSP than is already known, but many of the already known best solutions have been found by some genetic algorithm method also. Jog et al. (1991) in Bryant (2000) found that partially modified crossover (PMX) with the tour notation and no mutation operator gave a tour which length was ten percent farther than the known optimum for the 33 city problem. For the 100 city problem, the result was 210 percent larger than the known optimum. The algorithm using order crossover gives a better performance, giving a result of length 425 for the 30 city problem, while cycle crossover only gives a tour of length 517 for the same problem. The best known solution for the 30 city problem is 420, so order crossover seems to be the best so far (Homaifar, 1992 in Bryant, 2000). Homaifar (1992) also found that two point matrix crossover method as well as inversion performed well with 30, 50, 75, 100 and 318 city problems giving tours of lengths 420, 426, 535, 629 and 42154 respectively, which are all less then two percent above the best known solution. So it seems that the idea of using edges rather than the position of cities as our variable is promising. This makes sense, as it is the edge which holds the costs and we want to pick which edges to use to connect all cities. Note however, that the matrix representation takes more space to store and also more computation time for the crossover and mutation processes than the integer representation and basic crossovers. Jog’s heuristic algorithms also performed well. The heuristic crossover, when combined with the 2-opt and Or-opt mutation operators sometimes gives the best known solution for that particular problem, and otherwise returns a solution very close to that value. Heuristic algorithms also take up more space, since the 27 costs of each edge need to be stored. So GAs work best for the TSP when a matrix representation with matrix crossover or a heuristic crossover is used. In both cases the 2-opt mutation operator improves the solution. 48 Choi et al. (2003) proposed GAs for asymmetric TSP with extension on search space by generating and including good quality infeasible solutions with subtours through genetic operators: crossover and mutation. For performance comparison, benchmark problem set: 19 problems from TSPLIB and 8 additional problems from Fischetti and Toth solved by this algorithm are compared to branch and bound algorithm for asymmetric TSP. The solution quality of GAs obtained in the experiment is comparable with, or in some cases surpasses, that of publicly and readily available branch and bound algorithm. The GAs perform better when the assignment relaxation problem provides a poor quality lower bound on the asymmetric TSP. Baker and Ayechew (2003) study the application of a GA to the basic VRP in which costumers of known demand are supplied from a single depot. The experiment was conducted on 14 benchmark problems which can be downloaded from the OR-library. Different crossover methods were compared; the best distances for 1-point and uniform crossover were respectively 0.5% and 0.6% higher than those for 2-point crossover. Whereas the best distances for worst fitness/unfitness replacement were 1.3% higher than those for ranking replacement. Although the pure GAs perform well, it does not equal Tabu Search in terms of solution quality. It appears to be better to use hybrid GA, that is neighborhood search incorporating with GA, produce a significant improvement, giving distances that are only 0.5% above best known result with solution times that are not excessive. The statement about Genetic Algorithm hybridization is also notes by Coley (1999) that hybrid algorithms, which combine a GA with more traditional algorithms, have been hinted as a highly powerful combination for solving practical problem, also by Lacomme et al. (2006) that it is well known that a standard Genetic Algorithm must be hybridized with another search procedure to be able to compete with metaheuristics like Tabu Search. Applications of GAs have also been reported for the VRP with backhauls in Potvin et al. (1996b), for a multi-depot routing problem (Salhi et al., 1998), and a school bus routing problem (Thangiah and Nygard, 1992). A hybrid approach to vehicle routing using neural networks and GAs has also been reported (Potvin et al., 1996a). 49 2.7 Applications of Tabu Search in the Vehicle Routing Problems In Tabu Search, sequences of solutions are examined as in simulated annealing, but the next move is made to the best neighbour of the current solution xt . To avoid cycling, solutions that were recently examined are forbidden, or tabu, for a number of iterations. To alleviate time and memory requirements, it is customary to record an attribute of tabu solutions rather than the solutions themselves. The basic tabu search mechanism can be enhanced by several computational features, such as diversification and intensification strategies, as described by Glover and Laguna (1993, 1997) and Hertz et al. (1997), for example. Over the last fifteen years or so, tabu search has been applied to the VRP by several authors. Some of the first tabu search algorithms not yield impressive results, but subsequent implementations were much more successful. These include the work of Osman (1993), Taillard (1993), Gendreau, Hertz and Laporte (1994), Xu and Kelly (1996), Rego and Roucairol (1996), Rego (1998), Barbarosoglu and Ozgur (1999). In addition, Rochat and Taillard (1995) introduced a useful and powerful concept, the adaptive memory, which can be used to enhance any tabu search-based algorithm. In the same vein, Toth and Vigo (2003) introduced granular tabu search, whose principles have far-reaching applicability (Toth and Vigo, 2002). 2.7.1 Two Early Tabu Search Algorithms On of the first attempts to apply tabu search to the VRP is due to Willard (1989). Here, the solution is first transformed into a giant tour by replication of the depot, and neighbourhoods are defined as all feasible solutions that can be reached from the current solution by means of 2-opt or 3-opt exchanges (Lin, 1965). The next solution is determined by the best nontabu move. On three of the Christofides et al. (1979) benchmark problems, the proposed algorithm does not appear to be competitive with most known approximation algorithms. Pureza and Franca (1991) defined the neighbours of a solution by moving a vertex to a different route or by 50 swapping vertices between two routes while preserving feasibility. As in Willard (1989), the best nontabu feasible move is selected at each iteration. While better than Willard’s algorithm, this implementation did not produce especially good results. Further research has shown that more sophisticated search mechanisms are required to make tabu search work. 2.7.2 Osman’s Tabu Search Algorithm In Osman (1993), neighbourhoods are again defined by means of the O interchange generation mechanism, with O = 2. This includes a combination of 2-opt moves, vertex reassignments to different routes, and vertex interchanges between two routes. In one version of he algorithm called BA (best admissible), the whole neighbourhood is explored and the best nontabu feasible move is selected. In the other version, FBA (first best admissible), the first admissible improving move is selected if one exists; otherwise, the best admissible move is implemented. 2.7.3 Taburoute With respect to the previous tabu search implementation, the Taburoute algorithm of Gendreau et al. (1994) is rather involved and contains several innovative features. The neighbourhood structure is defined by all solutions that can be reached from the current solution by removing a vertex from its current route and inserting it into another route containing one of its p nearest neighbours using GENI, a Generalized Insertion procedure developed by Gendreau et al. (1992) for the Traveling Salesman Problem (TSP). This may result in eliminating an existing route or in creating a new one. A second important feature of Taburoute is that the search process examines solutions that may be infeasible with respect to the capacity or maximum route length constraints. More precisely, the objective function contains two penalty terms, one measuring overcapacity, the other measuring over duration, each weighted by a self-adjusting parameter: every 10 iterations, each parameter is 51 divided by 2 if all 10 previous solutions were feasible or multiplied by 2 if all were infeasible. This way of proceeding produces a mix of feasible and infeasible solutions and lessens the likelihood of being trapped in a local minimum. At various points during the search process, Taburoute re optimises the route in which a vertex has just been inserted. This is achieved by using the Unstringing and Stringing (US) TSP postoptimisation routine developed by Gendreau et al. (1992). Taburoute does not actually use a tabu list but instead uses random tabu tags. Whenever a vertex is moved from route r to route s at iteration t, its reinsertion into route r is forbidden until iteration t+ T , where T is an integer randomly drawn from the interval [5, 10]. Yet another feature of Taburoute is the use of a diversification strategy, which consists of penalizing vertices that have been moved frequently in order to increase the probability of considering slow-moving vertices. The objectie function is artificially increased by adding to it term proportional to the absolute frequency of movement of the vertex v currently being considered. Finally, Taburoute uses false starts. Initially, several solutions are generated and a limited search is carried out on each of them. The best identified solution is then selected as a starting point for the main search. 2.7.4 Barbarosoglu and Ozgur’s Algorithm Barbarosoglu and Ozgur (1999) describe a rather simple tabu search algorithm containing no diversification strategy and in which only feasible solutions are examined. Neighbour solutions are defined by means of a O -interchange scheme that favors vertices relatively far from the centroid of their current route and close to the centroid of the new route. Route reoptimisations are performed by applying a 2-opt procedure. The method was applied to the six capacitated instances of the Christofides et al. (1979) set and yielded interesting results. 52 2.7.5 Adaptive Memory Procedure of Rochat and Taillard One of the most interesting developments to have occurred in the area of tabu search in recent years is the concept of adaptive memory developed by Rochat and Taillard (1995). It mostly used in TS, but its applicability is not limited to this type of metaheuristic. An adaptive memory is a pool of good solutions that is dynamically updated throughout the search process. Periodically, some elements of these solutions are extracted from the pool and combined differently to produce new good solutions. In the VRP, vehicle routes selected from several solutions will be used as a starting point. The extraction process gives a larger weight to those routes belonging to the best solutions. When selecting these routes, care must be taken to avoid including the same customer twice in a solution. This restriction means that the selection process often will terminate with a partial solution that will have to be completed using a constructive heuristic. Rochat and Taillard (1995) showed that the application of an adaptive memory procedure can enhance a search strategy. This has enabled them to obtain two new best solutions on the 14 standard VRP benchmark instances. 2.7.6 Granular Tabu Search of Toth and Vigo Granular Tabu Search (GTS) is yet another very promising concept. It was introduced by Toth and Vigo (2003) and has yielded excellent results on the VRP. The main idea behind GTS stems from the observation that the longer edges of a graph have only a small likelihood of belonging to an optimal solution. Therefore, by eliminating all edges whose length exceeds a granularity threshold, several unpromising solutions will never be considered by the search process. 53 2.8 Review on GA and TS for VRPSD As compared to the development of research in deterministic cases, research on Stochastic Vehicle Routing Problem is rather undeveloped. So, the study of SVRPs is a relatively growing research area which should gain in importance with the spread of real time vehicle routing problems. The Vehicle Routing Problem with Stochastic Demands (VRPSD) is without any doubt the most studied among all SVRPs. Many algorithms for solving VRPSD have been proposed e.g. exact algorithm, heuristic, rollout policy and metaheuristics for single vehicle and multiple homogeneous vehicles. Comprehensive survey on previous researches in VRPSD is presented in Section 2.2.7. In this section we only focus on the details of GA and TS applied to VRPSD, since our research deals with the development of metaheuristics based on GA and TS for VRPSD. As we know, GA has been proven to be effective and successful in a wide variety of search domain and have been widely applied in solving combinatorial Optimisation problems, including certain types of VRP, especially where time windows are included and in TSP. TS was also known as a robust algorithm and often outperforms other heuristics in terms of computational speed and solution quality. But, the use of GA and TS in VRPSD is lacking in the literature. Bianchi et al. (2004) have developed the basic implementation of five metaheuristics: ILS, TS, SA, ACO and GA for single VRPSD that found better solution quality respect to cyclic heuristic. For GA application, a small sample size of 10 individuals is used. Initial solutions are built with the randomized farthest insertion heuristic which picks the first customer at random and after the tour has been completed, shifts the starting customer to the depot. Local search is then applied to each member of the initial population. In the steady state evolution process only one couple of parents reproduces at each generation. Tournament selection of size 2 is used to select which parents are going to be given the chance to reproduce. The crossover used in the final implementation of Bianchi et al. (2004) is the Edge Recombination (ER) readapted to always start at the depot. OX and PMX were 54 also used but ER seems to work better. It tries to build an offspring exclusively from the edges present in both parents, as outlined in Figure 2.3. Swap based mutation was used with swaps two adjacent alleles and never the depot. It is applied with a mutation rate of 0.2. Order based mutation that picks 2 loci at random and exchanges their alleles, and inversion were also tried. Local search is again applied at each generation to improve the quality of the offspring. The improved offspring is then replaces the worst member of the population. 1. Create an edge list from both parents, that provides for each customer all the other customers connected to it in at least one of the parent, 2. start from the depot as current customer, 3. select the customer in the edge list of the current customer, with the smallest number of customers left in its edge list, 4. if there is no customer left in the edge list of the current customer then 5. select a non yet visited customer, 6. end if 7. the selected customer becomes the current customer, 8. update the edge list by removing the current customer from each adjacent customer list, 9. if the tour is complete then 10. stop. 11. else 12. go to step 3. 13. end if. Figure 2.3 : Bianchi et al. (2004)’s Genetic Algorithm for the VRPSD For TS implementation, Bianchi et al. (2004) uses the randomized farthest insertion heuristic as the initial solution. The neighbourhood is derived from Or-Opt local search as states in Yang et al. (2000). The strategy of selection of new solutions is a descent-ascent method with the use of tabu list. Their experimental results show that Iterated Local Search is the only which is always among the best. At the opposite extreme is the SA, which is always among the worst. The performance of the other metaheuristics seems to be not significantly different from one to another. It has been hypothesized that this is due to the fact that all algorithms find solutions which are very near to the optimal, and thus solution values found are not very different from each other. 55 Gendreau et al. (1996) developed TS for a stochastic VRP that combines two types of uncertainty: stochastic demand and stochastic customers (customers present at locations with some probabilities). They were the first to implement exact algorithm for VRPSDC in order to find optimal solutions. These can be used to assess the quality of solutions produced by another heuristics. The problem consists of designing a first stage solution that minimises the expected cost of the second stage solution, i.e., the cost of the first stage solution plus the expected cost of recourse action. The neighbourhood of current solution is defined by removing in turn one of q randomly selected customers and inserting each of them either immediately before, or immediately after one of its p nearest neighbours. If a vertex is moved at iteration v, its reinsertion and displacement is tabu until iteration v+. TABUSTOCH algorithm proceeds as follows: x Initialization. x Neighbourhood Search. x Incumbent update. x Coefficient update: update the list of tabu move. x Intensification or terminate. Results indicate that the running time of the proposed heuristic is reasonable, and optimal solutions were obtained in over 89% of all instances for which an optimum was known. According to Gendreau et al. (1996), the success of TS seems largely due to the neighbourhood structure, to the fact that intermediate infeasible solutions are allowed, and to the proxy function used to evaluate candidate moves. This device is responsible for large time savings as t avoids repeated costly computations of the objective function. In GA and TS application of Bianchi et al. (2004), the fact that that GA and TS seem to have the same result but they can not compete with the ILS, have opened a new direction in developing GA and TS for solving VRPSD. Further, it is well known that a standard GA must be hybridized with another search procedure to be able to compete with other metaheuristics. So this study proposes the development of GA and TS – based metaheuristics for solving VRPSD and the first 56 implementation of hybrid GA with TS for the VRPSD that combines the advantage of GA and the strength of TS. 2.7 Summary This chapter provides an in-depth understanding of the area of VRPSD and solution techniques for it. It began by looking at the description of VRPSD and some related works from researchers and heuristics (or metaheuristics) which can be used to solve the VRPSD. These led to the development of enhanced metaheuristics for solving VRPSD for improving the solution quality by considering Genetic and Tabu Search – based algorithms. 57 CHAPTER 3 RESEARCH METHODOLOGY 3.1 Introduction This chapter presents the direction of the study and an overview of the methods used. It begins with the general steps of the research framework. A description of the data source for this study and test related to it are also presented which include the case-study of a real-life application at solid waste collection company (Perniagaan Zawiyah Sdn. Bhd). It is followed by the description of algorithms implemented with emphasis on Genetic Algorithm, Tabu Search and hybrid of these heuristics while the details of the proposed algorithms are given in the following chapters. We also provide a brief introduction to some of the terminologies used when dealing with different types of applications within a stochastic environment. 3.2 Research Framework This framework of this research is divided into two main parts; these are the development of algorithm for single vehicle and multiple vehicles. The general steps of research framework are summarized in Figure 3.1 while the detail will be given in the subsequent sections. 58 Figure 3.1 : Research framework 3.3 Data Source There are two types of data that will be used to assess the performance of the proposed algorithm: 59 a. Primary Data The primary data is a real life instance of VRPSD originating from the municipal solid waste collection. The data was collected from Perniagaan Zawiyah, Sdn. Bhd., Johor Bahru, one of sub contractor of Southern Waste Management Sdn. Bhd. (SWM) – Johor Bahru branch office. SWM is a provider of a diverse range of waste management services for municipal authorities, commercial and industrial sectors for the Southern Region of Malaysia. We confine our study on residential area in Johor Bahru under municipal authorities of Majlis Perbandaran Johor Bahru. The problem of optimization of waste collection can be described as follows. The solid waste is located in box or containers along the streets. On any given day, the company faces the problem of collecting waste from a set of customer location where the amount of waste disposal is a random variable, while each collecting truck has a limited capacity. The problem is to design a set of solid waste collection routes, each to be served by a truck such that the waste at each customer is fully collected and the total expected cost is minimized. Each vehicle can service several such sites before going to dumpsite to unload. Each vehicle starts from the depot, visits a number of customers and ends at the depot. When a vehicle is full, it needs to go to the closest available dumpsite to empty its load, and then resume their visit. Each vehicle can make multiple disposal trips per day. Detail of company profile and data collected are given in Chapter 7. The variables to be measured in the data collection include: b. x The distance or coordinates of customer locations. x The customer demands. Simulation Data Several sets of instances will be generated to simulate the real life instance of VRPSD in solid waste collection as described in Section 3.4. 60 3.4 Data Generation Since there is no commonly used benchmark for the VRPSD as found from the literature review, we generate our own test bed. We consider several sets of randomly generated instances that simulate real problem data from case study of solid waste collection. Based on experiments reported in Gendreau et al. (1995), three factors seem to give impact to the difficulty of a given VRP instances: number of customers n, number of vehicles m, and filling coefficient f. In a stochastic environment, the filling coefficient can be defined as n f ¦ i 1 E ([ i ) mQ (3.1) where E( [ i ) is the expected demand of customer i and Q denotes the vehicle capacity. This is the measure of the total amount of expected demand relative to vehicle capacity and can be approximately interpreted as the expected number of loads per vehicle needed to serve all customers. Customer locations will be generated in the [0, 100] square area following a discrete uniform distribution with the depot fixed at coordinate (50, 50). Each cij is then defined as travel cost from i to j, as a function of distance traveled. Without loss of generality, it is assumed that the travel cost is 1 unit cost per unit distance, thus the cost function here is equal to distance function. The distance between customers location i and j is calculated using Euclidean distance as follows: d ij ( xi x j ) 2 ( yi y j ) 2 and it is assumed further that the distance is symmetric, that is dij = dji and dii = 0. We consider discrete uniform probability distribution for the data of demands. The problem data will be generated using Minitab 14 software package. 61 3.4.1 Single vehicle For a single vehicle, the customers demands follow discrete uniform distributions: U(1,5), U(6,10) and U(11,15) respectively. There are three different problem size used here that are: - small problem size, that is 10 nodes - moderate problem size, that is 20 nodes - large problem size, that is 50 nodes Twenty instances were generated on each of the problem size. Each algorithm was tested on each instance for a number of iterations and executed for a number of independent runs, thus the reported computational results will be the average values over the number of independent run. When m = 1 then the filling coefficient in Equation (3.1) can be defined as n f ¦ i 1 E ([ i ) Q (3.2) where E( [ i ) is the expected demand of customer i and Q denotes the vehicle capacity. 3.4.2 Multiple vehicles The second experiment considered in this study is the multiple homogeneous instances. For the case of a fleet of vehicles, VRPSD with multiple vehicles analog with the deterministic VRP are considered. The difference is that a priori restocking policy is designed for each vehicle on the routes. The objective is to find a set of routes, each of them to be served by one vehicle such that objective functions are minimized. In this experiment, the bi-objective function to minimize the total expected cost and number of vehicles is considered with the restriction on length constraint of each vehicle. 62 3.5 Demand’s Data Testing After the data are collected or generated, hypothesis test for distributional adequacy of demand data (whether a sample of data comes from specific distribution) will be conducted. One of the primary purposes of a statistics is to estimate unknown properties of the population that are necessarily numerical and include items such as unknown proportions, means, probabilities, and so on. The form of statistical inference that has received the most attention is called hypothesis testing. Some terminologies on hypothesis testing are given as follows. - Hypothesis testing : the process of inferring from a sample whether or not to accept a certain statement about the population. - Null hypothesis : hypothesis to be tested, denoted by H0. - Alternative hypothesis : the negation of the null hypothesis, denoted by H1. - A test statistic : a statistic used to help make the decision in a hypothesis test - The critical region : the set of all points in the sample space that result in the decision to reject the null hypothesis - The significance level : the maximum probability of rejecting a true null hypothesis, denoted by D - The critical level : the smallest significance level at which the null hypothesis would be rejected for the given observation, denote by p-value. Goodness-of-fit test is a test designed to compare the sample obtained with the type of sample one would expect from the hypothesized distribution to see if the hypothesized distribution function “fits” the data in the sample (Conover, 1980). Over the years, many procedures for goodness of fit problems have been proposed, and two best known of these are the chi square goodness of fit test and KolmogorovSmirnov test. The chi-square goodness-of-fit test can be applied to discrete distributions, while Kolmogorov-Smirnov can be applied to continuous distributions. The choice of these statistical goodness-of-fit tests is dependent on the type of variable being studied. Observations can be classified according to a standard 63 measurement scale that goes from “weak” to “strong” depending on the amount of precision of information available in the scale. There are four scales of measurement that can be defined as follows (Freund and Wilson, 2003): 1. Nominal : identifies observed values by name or classification, for example: sex, colors and brand names of the product. 2. Ordinal : distinguishes between measurements on the basis of the relative amounts of some characteristic they possess. Usually the ordinal scale refers to measurements that make only “greater”, “less”, or “equal comparisons between consecutive measurements. For example, if a person were asked to taste five chocolate pies and rank them according to taste, the result would be a set of observations in the ordinal scale of measurement. 3. Interval : uses the concept of distance or measurement and requires a “zero” point, but the definition of zero may be arbitrary. An example of interval scale is the use of degrees Fahrenheit or Celsius to measure temperature. 4. Ratio : uses the concept of a unit of distance or measurement and requires a unique definition of a zero value. It is appropriate for measurements of heights, weights, birth rates, and so on. 3.5.1 Chi-Square Goodness of Fit Test DATA The data consist of N independent observations of a random variable X. These N observations are grouped into c classes/ categories, and the numbers of observations in each class are presented in the form of a 1 x c contingency table (Conover, 1980). The data for analysis may be displayed in tabular form as shown in Table 3.1. The categories may be either nominal or numerical. For example, a sample of individuals may be placed into one of the two nominal categories: male and female. If age is the variable of interest, these same individuals may be placed in one or the other of several age (numerical) categories, such as less than 15 years, 15-24, 25-34, 35-44, 45-54, 55 and older (Daniel, 1990). 64 Table 3.1 : Data display for chi-square goodness of fit test Class/ category 1 2 … i … c Total Observed frequencies O1 O2 … Oi … Oc N ASSUMPTIONS 1. The data is a random sample. 2. The measurement scale is at least nominal. HYPOTHESES The chi-square test is defined for the hypothesis: H0 : The sample has been drawn from a population that follows a specified distribution H1 : The sample has been drawn from a population that does not follow the specified distribution TEST STATISTIC We expect random samples drawn from populations to reflect the characteristics of those populations. Thus, if we have drawn a sample from a specified (hypothesized) population, we expect a close “fit” between observed and expected frequencies falling into the various categories. If the null hypothesis is true, then, we expect close agreement between the observed and expected frequencies falling into the categories. The test statistic for chi-square goodness of fit test is F 2 c (Oi Ei ) 2 ¦ Ei i 1 where Oi is the observed frequency for class i, c is the number of class/ category and Ei is the expected frequency for class i. DECISION RULE Reject H0 if F 2 ! F (21D , c 1) where F (21D , c 1) is the (1- D ) quantile of a chi-square random variable with (c-1) degrees of freedom. Otherwise do not reject the null 65 hypothesis. When we have to estimate parameters of the sample data, we compute the degrees of freedom differently. In addition to subtracting 1 from c, we also subtract 1 for each parameter that we have to estimate. If g is the number of parameters that we have to estimate from sample data, the degrees of freedom are cg-1. For uniform distribution, g = 3 (Daniel, 1990). 3.5.2 The Kolmogorov-Smirnov Test The chi square test discussed in Section 3.4.1 was designed for use with nominal data. The Kolmogorov-Smirnov was designed for testing the goodness of fit for continuous data. Hence it can be used with data measured on at least an ordinal scale (Daniel, 1990). DATA The data consist of a random sample X 1 , X 2 ,..., X n of size n associated with some unknown distribution function, denoted by F (x) . ASSUMPTION The sample is a random sample. HYPOTHESES If we let F0 ( x) be the hypothesized distribution function (cumulative probability function), then we can state the null hypotheses and the corresponding alternatives as follows. A. Two-sided Test H0 : F (x) = F0 ( x) for all values of x H1 : F (x) z F0 ( x) for at least one value of x B. One-sided Test H0 : F (x) t F0 ( x) for all values of x 66 H1 : F (x) < F0 ( x) for at least one value of x C. One-sided Test H0 : F (x) d F0 ( x) for all values of x H1 : F (x) > F0 ( x) for at least one value of x TEST STATISTICS Let S (x) designate the sample (or empirical) distribution function. That is, S (x) is the cumulative probability function computed from the sample data. Specifically S (x) the number of sample observations less than or equal to x n The test statistic depends on the hypothesis under consideration. A. Two-sided Test D sup S ( x) F 0( x) x which is read “D equals the supremum, over all x, of the absolute value of the difference S (x) and F0 ( x) that is S ( x) F 0( x) B. One sided Test D sup[ F 0( x) S ( x)] x which is similar to D except that this statistics considers only the greatest difference where the function F 0( x ) is above the function S (x) . C. One-sided Test D sup[ S ( x) F 0( x)] x 67 which is similar to D except that this statistics considers only the greatest difference where the function S (x) is above the function F 0( x) . DECISION RULE Reject H0 at the significance level D if the statistic under consideration exceeds the (1- D ) quantile w1D . If the sample data have been drawn from the hypothesized distribution, the discrepancies between S (x) and F 0( x) for the observed values of x should not be too large (Daniel, 1990). 3.6 Paired-Samples Procedure A paired t-test is used to compare two population means where we have two samples which observations in one sample can be paired with observations in other sample. Examples of where this might occur are: - Before and after observations on the same subject (e.g. students’ diagnostic test results before and after a particular module or course) - A comparison of two different methods of measurement or two different treatments where the measurements/ treatments are applied to the same subjects (e.g. blood pressure measurements using a stethoscope and a dynamap) Suppose a sample of n subjects were given two different treatments. We want to find out if, in general, the treatment A is different to treatment B. We can use the results from a sample to draw conclusion about this. Let x = results from treatment A, y = results from treatment B (Freund and Wilson, 2003). HYPOTHESES H0 : The mean difference is zero H1 : The mean difference is not equal to zero 68 TEST STATISTIC The procedure is as follows: 1. Calculate the difference ( d i yi xi ) between the two observations on each pair, making sure positive and negative differences are distinguished. _ 2. Calculate the mean difference, d . 3. Calculate the standard deviation of the differences, s d , and use this to _ calculate the standard error of the mean difference SE( d ) = sd n . 4. Calculate the t-statistic, which is given by _ T d _ SE (d ) Under the null hypothesis, T follows a t-distribution with n-1 degrees of freedom (tn-1). 5. Reject H0 at the significance level D if the statistic under consideration exceeds the tn-1 (t-distribution with n-1 degrees of freedom) (Freund and Wilson, 2003). When t-test is used, it is assumed that the population from which the sample data have been drawn is normally distributed. Although modest departures from this assumption do not seriously affect the conclusion when the assumption is grossly violated, we have to seek an alternative method of analysis. One such alternative is a nonparametric procedure. Several nonparametric are available for making inferences about a location parameter. A characteristic of these nonparametric procedures is that the median rather than the mean is the location parameter (Daniel, 1990). The Wilcoxon matched-pairs signed-ranks test can be used as alternative of t-paired samples test when the normal distribution assumption is violated. The Wilcoxon matched-pairs signed-ranks test can be described as follows. 69 ASSUMPTION 1. The data for analysis consist of n values of the difference Di Yi X i . Each pair of measurement (Xi, Yi) is taken on the same subject or on subjects that have been paired with respect to one or more variables. The sample of (Xi, Yi) pairs is random. 2. The differences represent observations on a continuous random variable. 3. The differences are measured on at least an interval scale. 4. The differences are independent. (Daniel, 1990) HYPOTHESES A. Two-sided H0 : The median of the population of differences is zero. H1 : The median of the population differences is not zero B. One sided H0 : The median of the population of differences is less than or equal to zero. H1 : The median of the population differences is greater than zero C. One-sided H0 : The median of the population of differences is greater than or equal to zero. H1 : The median of the population differences is less than zero (Daniel, 1990) TEST STATISTIC To obtain the test statistic, the following procedure is used. 1. Obtain each of the sign differences Di Yi X i 2. Rank the absolute values of these differences from smallest to largest. That is, rank Di Yi X i 70 3. Assign to each of the resulting ranks the sign of the difference whose absolute value yielded that rank 4. Compute T = the sum of the ranks with positive signs T = the sum of the ranks with negative signs There are two types of ties. The first type occurs when X i = Yi for a given pair. We eliminate all pairs of observations having Di = 0 from the analysis and reduce n accordingly. The other type of tie occurs when two or more values of Di are equal. For ties of this type, the Di receive the average of the ranks that otherwise would be assigned to them (Daniel, 1990). DECISION RULE A. Either a sufficiently small value of T or sufficiently small value of T will cause rejection of H0. Therefore the test statistic in this case is T or T whichever is smaller. Reject H0 at significance level D if T is smaller than or equal to d for n and D (two-sided). B. Small values of T will cause rejection of H0. Reject H0 at significance level D if T is less than or equal to d for n and D (one-sided). C. Small values of T will cause rejection of H0. Reject H0 at significance level D if T is less than or equal to d for n and D (one-sided). Suppose, for example, that the observations are taken on subjects before receiving some treatment. Rejecting H0 in A enables us to conclude that the treatment has an effect. If the data result from an experiment designed to compare two treatments, rejecting H0 enables us to conclude that the treatments have different effects. Rejecting H0 in B and C lead to the conclusion that one treatment is more effective than the other (Daniel, 1990). 71 3.7 Genetic Algorithm Solutions to GA are represented by data structures, often a fixed length vector, called chromosomes. Chromosomes are composed of genes which have value called alleles, and the position of the gene in the chromosome is called locus (Goldberg, 1989). Chromosomes have been represented by vectors, strings, arrays, and tables. Alleles have been represented by a simple binary system of zeroes and ones, integers, real number, and letter of alphabet, or other symbols (Gen and Cheng, 1997). Each chromosome has a fitness value which is indicative of the suitability of the chromosome as a solution to the problem (Goldberg, 1989). A simple genetic algorithm can be summarized as follows. 1. Representation: Encode the characteristics of each individual in the initial population as a chromosome (typically, a chromosome is a bit string). Set the current population to this initial population. 2. Evaluation: Evaluate fitness of each chromosome. 3. Selection: Select chromosomes of parent P from the current population via proportional selection, a chromosome with high fitness is more likely to be selected. 4. Recombination: Choose at random a pair of parents for mating. Generate two offspring from the two parents by exchanging sub strings between parent chromosomes (crossover). 5. Mutation: process each offspring by the mutation operator, and insert the resulting offspring in the new population. 6. Repeat steps (4) and (5), until P offspring are created. 7. Replace the old population of chromosomes by the new one. 8. Evaluate the fitness of each chromosome in the new population. 9. Go back to Step 3 if the number of generations is less than a fixed number of generation or until convergence to a population of similar individuals is obtained. Then, the best chromosome generated during the search is decoded into the corresponding individual (Potvin, 1996). The procedure of GA can be described in Figure 3.2 (Gen and Cheng, 1997). 72 Procedure: Genetic Algorithms begin tÅ 0 initialize P(t); evaluate P(t); while (not termination condition) do recombine P(t) to yield C(t); evaluate C(t); select P(t + 1) from P(t) and C(t); t Å t + 1; end end Figure 3.2 : Procedure of genetic algorithm 3.7.1 Selection Methods In selection process, chromosomes are selected from the population to be parents for crossover. According to Darwin's theory of evolution the best ones survive to create new offspring. There are many methods in selecting the best chromosomes. Some of them will be described in following (Obitko, 1998). a. Roulette Wheel Selection Parents are selected according to their fitness. The better the chromosomes are, the more chances for it to be selected. Imagine a roulette wheel where all the chromosomes in the population are placed. The size of the section in the roulette wheel is proportional to the value of the fitness function of every chromosome: the bigger the value is, the larger the section is. For an example, see Figure 3.3. Figure 3.3 : Illustration of roulette wheel selection 73 A marble is thrown in the roulette wheel and the chromosome where it stops is selected. Clearly, the chromosomes with bigger fitness value will be selected more times. This process can be described by the following algorithm. 1. [Sum] Calculate the sum of the fitness values of all chromosomes in the population - sum S. 2. [Select] Generate a random number between 0 and the sum of the fitness value. 3. [Loop] Select the chromosome whose fitness value added to the sum of the fitness values of the previous chromosomes is greater or equal to the random. (Obitko, 1998) b. Rank Selection The previous type of selection will have problems when they are big differences between the fitness values. For example, if the best chromosome fitness is 90% of the sum of all fitnesses then the other chromosomes will have very few chances to be selected. Rank selection ranks the population first and then every chromosome receives fitness value determined by this ranking. The worst will have the fitness 1, the second worst will have the fitness 2 etc. and the best will have the fitness PopSize (number of chromosomes in population). The following picture describes how the situation changes after changing fitness to the numbers determined by the ranking. Figure 3.4 : Situation before ranking (graph of fitnesses) Figure 3.5 : Situation after ranking (graph of order numbers) 74 Now all the chromosomes have a chance to be selected. However this method can lead to slower convergence, because the best chromosomes do not differ so much from other ones (Obitko, 1998). c. Steady-State Selection This is not a particular method of selecting parents. The main idea of this type of selection is that a big part of chromosomes can survive to next generation. The steady-state selection GA works in the following way. In every generation a few good (with higher fitness) chromosomes are selected for creating new offspring. Then some bad (with lower fitness) chromosomes are removed and the new offspring is placed in their place. The rest of population survives to new generation (Obitko, 1998). d. Elitism When creating a new population by crossover and mutation, we have a big chance, that we will loose the best chromosome. Elitism is the name of the method that first copies the best chromosome (or few best chromosomes) to the new population. The rest of the population is constructed in ways described above. Elitism can rapidly increase the performance of GA, because it prevents a loss of the best found solution (Obitko, 1998). 3.7.2 Crossover The simplest type of crossover is one point crossover. As illustrated in Loft and Snow (2006) where chromosomes are strings of symbols (here, 0’s and 1’s), there are two chromosomes; one from Parent A and one from Parent B, both the of same length. A crossover point is selected randomly. The two chromosomes are cut at this point, and new chromosomes are formed by using the chromosome from Parent A before the crossover point and from Parent B after the crossover point and vice versa. This is depicted in Figure 3.6. 75 Parent A: 0 1 1 0 1 0 1 1 segment of A Parent B: 1 0 1 1 1 0 0 0 segment of B Offspring 1 0 1 1 1 1 0 0 0 Offspring 2 1 0 1 0 1 0 1 1 Figure 3.6 : One point crossover A first generalization of one point crossover is two point crossover. In two point crossover, two crossover points are randomly chosen. Genetic material is copied from A before the first crossover point. Between the crossover points, material is taken from Parent B. After the second crossover point, material is again taken from A. This is depicted in Figure 3.7. Parent A: 0 1 1 0 1 0 1 1 initial and final segments of A Parent A: 1 0 1 1 1 0 0 0 middle segment of B Offspring 0 1 1 1 1 0 1 1 Figure 3.7 : Two point crossover From two point crossover, one can imagine three point crossover, four point, five point, and so on. The logical conclusion of this is uniform crossover. In uniform crossover, each symbol in the offspring’s chromosome is chosen randomly to be equal to the corresponding symbol of the chromosome of either Parent A or Parent B as shown in Figure 3.8. Parent A: 0 1 1 0 1 0 1 1 Parent A: 1 0 1 1 1 0 0 0 Offspring 0 0 1 0 1 0 0 1 Figure 3.8 : Uniform crossover (the underlined symbols are the ones chosen for the offspring) 76 Loft and Snow (2006) observed that if a pattern appears in the chromosomes of both parents, then recombination will preserve that pattern. For example, both parents above have 1’s as the third and fifth symbol in their chromosomes and 0 as the sixth then in one point, two point, and uniform crossover the offspring has the same pattern. Other crossovers that usually used for TSP and VRP are Partially Match Crossover (PMX), Cycle Crossover (CX), Order Crossover (OX), Modified Crossover (MOX), Order-Based Crosover (OBX) and Position-Based Crossover (PBX) (Potvin, 1996). They can be described in the next sub sections. 3.7.2.1 Partially-Mapped Crossover (PMX) For PMX operator, firstly we randomly select two cut points on both parents. In order to create offspring, the substring between the two cut points in the first parent replaces the corresponding substring in the second parent. Then, the inverse replacement is applied outside of the cut points, in order to eliminate duplicates and recover all cities. In Figure 3.9, the offspring is created by first replacing the subset {2, 3, 6} in parent 2 by the subset {5, 6, 4}. Hence, city 5 replaces city 2, city 6 replaces city 3, and city 4 replaces city 6 (step 1). Since cities 4 and 6 are now duplicated in the offspring, the inverse replacement is applied outside of the cut points. Namely, city 2 replaces city 5, and city 3 replaces city 4 (step 2). In the latter case, city 6 first replaces city 4, but since city 6 is already found in the offspring at position 4, city 3 finally replaces city 6. Multiple replacements at a given position occur when a city is located between the two cut points on both parents, like city 6 in this example. Parent 1 : 1 2 5 6 4 3 8 7 Parent 2 : 1 4 2 3 6 5 7 8 Offspring: Step 1 : 1 4 5 6 4 5 7 8 Step 2 : 1 3 5 6 4 2 7 8 Figure 3.9 : Partially-mapped crossover 77 3.7.2.2 Cycle Crossover (CX) The cycle crossover focuses on subsets of cities that occupy the same subset of positions in both parents. Then, these cities are copied from the first parent to the offspring (at the same positions), and the remaining positions are filled with the cities of the second parent. In this way, the position of each city is inherited from one of the two parents. However, many edges can be broken in the process, because the initial subset of cities is not necessarily located at consecutive positions in the parent tours. In Figure 3.9, the subset of cities {3, 4, 6} occupies the subset of positions {2, 4 , 5} in both parents. Hence, an offspring is created by filling the positions 2, 4 and 5 with the cities found in parent 1, and by filling the remaining positions with the cities found in parent 2. Parent 1 : 1 3 5 6 4 2 8 7 Parent 2 : 1 4 2 3 6 5 7 8 Offspring: 1 3 2 6 4 5 7 8 Figure 3.10 : Cycle crossover 3.7.2.3 Modified Crossover This crossover was proposed by Davis in 1985 as an extension of the onepoint crossover for permutation problems. A cut position is chosen at random on the first parent chromosome. Then, an offspring is created by appending the second parent chromosome to the initial part of the first parent (before the cut point), and by eliminating the duplicates. An example is provided in Figure 3.11. The two parent chromosomes are cut in the position between second and third positions. An offspring is formed by using the chromosome of Parent 1 before the cut point, that is the subset {1, 2} and from second parent (after cut position) {2, 3, 6, 5, 7, 8}, since the city 2 is already on the offspring, the city 2 is discarded and replaced by 4. 78 Parent 1 : 1 2 5 6 4 3 8 7 Parent 2 : 1 4 2 3 6 5 7 8 Offspring: 1 2 4 3 6 5 7 8 Figure 3.11 : Modified crossover 3.7.2.4 Order Crossover (OX) This crossover extends the modified crossover of Davis (1985) by allowing two cut points to be randomly chosen from the parent chromosomes. In order to create an offspring, the string between the two cut points in the first parent is first copied to the offspring. Then, the remaining positions are filled by considering the sequence of cities in the second parent, starting after the second cut point (when the end of the chromosome is reached, the sequence continues at position 1). In Figure 3.12, the subset {5, 6, 4} in parent 1 is first copied to the offspring (step 1). Then, the remaining positions are filled one by one after the second cut point, by considering the corresponding sequence of cities in parent 2, namely subset {5, 7, 8, 1, 4, 2, 3, 6} (step 2). Hence, city 5 is first considered to occupy position 6, but it is discarded because it is already included in the offspring. City 7 is the next city to be considered, and it is inserted at position 6. Then city 8 is inserted at position 7, city 1 is inserted at position 8, city 4 is discarded, city 2 is inserted at position 1, city 3 is inserted at position 2, and city 6 is discarded. Parent 1 : 1 2 5 6 4 3 8 7 Parent 2 : 1 4 2 3 6 5 7 8 Offspring (step 1): - - 5 6 4 - - - Offspring (step 2): 2 3 5 6 4 7 8 1 Figure 3.12 : Order crossover 79 3.7.2.5 Order-Based Crossover (OBX) This crossover focuses on the relative order of the cities on the parent chromosomes. First, a subset of cities is selected from the first parent. In the offspring, these cities appear in the same order as in the first parent, but at positions taken from the second parent. Then, the remaining positions are filled with the cities of the second parent. In Figure 3.13, cities 5, 4 and 3 are first selected in parent 1, and must appear in this order in the offspring. These cities occupy positions 2, 4 and 6, respectively, in the offspring. The remaining positions are filled with the cities found in parent 2. Parent 1 : 1 2 5 6 4 3 8 7 Parent 2 : 1 4 2 3 6 5 7 8 Offspring: 1 5 2 4 6 3 7 8 Figure 3.13 : Order-based crossover 3.7.2.6 Position-Based Crossover Here, a subset of positions is selected in the first parent. Then, the cities found at these positions are copied to the offspring (at the same positions). The other positions are filled with the remaining cities, in the same relative order as in the second parent. The name of this operator is rather misleading, because it is the relative order of the cities that is inherited from the parents (the absolute position of the cities inherited from the second parent are rarely preserved). This operator can be seen as an extension of the order crossover, where the cities inherited from the first parent do not necessarily occupy the consecutive positions. In Figure 3.14, position 3, 5 and 6 are first selected in parent 1. Cities 5, 4 and 3 are found at these positions, and occupy the same positions in the offspring. The other positions are filled one by one, starting at position 1, by inserting the remaining cities according to their relative order in parent 2, namely the set {1, 2, 6, 7, 8}. 80 Parent 1 : 1 2 5 6 4 3 8 7 Parent 2 : 1 4 2 3 6 5 7 8 Offspring: 1 2 5 6 4 3 7 8 Figure 3.14 : Position-based crossover 3.7.3 Mutation Mutation is a genetic operator that alters one or more gene values in a chromosome from its initial state. This may produce entirely new gene values being added to the gene pool. With these new gene values, the GA may be able to arrive at a better solution than what was previously possible. Mutation is an important part of the genetic search as helps to prevent the population from stagnating at any local optima. Mutation occurs during evolution according to a user-definable mutation probability rate. This probability rate should usually be set low. If it is set too high, the search will turn into a primitive random search (Mitchell, 1996). The primary purpose of mutation is to increase variation in a population. Especially in the case where the initial population may be a small subset of all possible solutions, mutation is the most important operator in GA. It is possible, for example, that every instance of an essential bit might be zero in the initial population. In such a case, crossover could never set that bit to one; mutation, however, can set that bit to one. Mutation takes place after the crossover has been performed. Mutation changes the new offspring randomly. For binary encoding, it is done by switching a few randomly chosen bits from 1 to 0 or from 0 to 1 (Mitchell, 1996; Shen et al., 2001). A variety of mutation methods are used in GAs, e.g. inversion, insertion, displacement and reciprocal exchange mutation. Inversion mutation selects two positions within a chromosome at random and then inverts the substring between these two positions. Insertion is where individual is randomly selected and inserted in a random position. Displacement is where a subtour is selected at random and 81 inserted in a random position. Whereas reciprocal exchange where we select two positions at random and swap them (Gen and Cheng, 1997). Another mutation operators are 2-opt, 3-opt and Or-opt. In the 2-opt operator, two edges (a, b) and (c, d) are randomly selected from the tour and check if we can connect these four nodes in a different manner that will give a lower cost. To do this check if cab + ccd > cac + cdb. If this is the case, replace the edges (a, b) and (c, d) with the edges (a, c) and (d, b). Note that it is assumed that a, b, c and d appear in that specific order in the tour even if b and c are not connected. A 3-opt operator looks at three random edges instead of two. If there are edges (a, b), (c, d) and (e, f), check if cab + ccd + cef > cac + cbe + cdf. If it is, replace (a, b), (c, d) and (e, f) with the edges (a, c), (b, e) and (d, f). The Or-opt operator is similar to the 3-opt. A set of connected nodes are randomly chosen and checking is made if the string can be inserted between two other connected nodes to give a reduced cost. We can calculate this by finding the total cost of the edges being inserted and the total cost of the edges being removed. If the cost of the edges being removed is greater than the cost of those being inserted the switch is made (Bryant, 2000). 3.6.4. Operator Settings in Genetic Algorithm It has long been acknowledged that the choice of operator settings has a significant impact upon GA performance. These settings come in the form of components and parameters such as chromosome representation, population sizes, crossover and mutation operators, crossover and mutation probability, replacement techniques, etc. However, finding a good choice is somewhat of a black art. The most commonly used method is empirically through hand tuning. This is where the GA’s settings are determined by first experimenting with a selection of combinations of settings and then selecting the combination that gives the best results. 82 The crossover and mutation operators are considered to be two of the main conduits by which to control exploration and exploitation of the search space of GA. This is partly why most of the work performed on finding good configurations for a GA consists of keeping the other settings constant and just looking for good operator rates. In one of earliest works of variation of settings in a GA, Davis (1989) suggests the division of operators into two categories based on the roles they play. In the first category are those operators that directly improve a chromosome, while in the second category, operators that set the stage for such improvement. Different forms of schemata exist in solutions for different problems (Starkweather et al., 1991) and different crossover or mutation operators are better at exploring different forms of schemata. Where a crossover operator successfully exploits wanted traits from a particular solution space, for a solution space of a different problem, it may be that it is able to exploit the wanted traits, but at a different rate of efficiency (thus explaining the need for different operator rates) or unable to do so at all. While classic GAs employ the use of settings that remain static throughout its application run, some existing work was found that indicated that by varying these settings appropriately during the GA’s application, improvements can be made to overall performance of the GA in terms of both solution quality and the amount of time required to find it. The adaptive variation approach, also known as online approach (Spears, 1995) involves the utilization of information gained about the state of the GA during the run of the GA, which may consist of information about the population as a whole, individuals in the population or components of the GA, to adaptively vary its settings there. 3.8 Tabu Search Tabu Search (TS) is among the most cited and used metaheuristics for CO problems. TS basic ideas were first introduced in Glover (1986), based on earlier ideas formulated by Glover in 1977 (Blum and Roli, 2003). Glover (1977) 83 introduced the basic strategic oscillation approach and associated “strong determination” and “consistency” notions involving frequency memory and statistical analysis. Recency memory, sometimes considered a primary feature of TS, was illustrated as a way to implement strategic oscillation. According to Glover (1990), TS is founded on three primary themes: 1. The use of flexible attribute-based memory structures designed to permit evaluation criteria and historical search information to be exploited more thoroughly than by rigid memory structures (as in branch and bound) or by memoryless systems (as in SA and other randomized approach). 2. An associated mechanism of control – for employing the memory structures – based on the interplay between conditions that constrain and free the search process (embodied in tabu restriction and aspiration criteria). 3. The incorporation of memory functions of different time spans, from short term to long term, to implement strategies for intensifying and diversifying the search. (Intensification strategies reinforce move combinations and solution features historically found good, while diversification strategies drive the search into new regions). In the following are some terminologies used in Tabu Search: x A move : a transition from a solution s to another solution s’ in N (s) x An attribute : the elements that constitute the move x Tabu list : a list of moves that are currently tabu x Tabu list size : the number of iterations for which a recently accepted move is not allowed to be reversed x Tabu tenure : an integer number telling for how long a given move will remain tabu The TS features are presented as follows: 1. Neighbourhood structures. The search starts with initial solution and defines a subset, N (s), of possible solutions that are neighbours of s (solution) under N. Each neighbour is evaluated against the objective function. 84 2. Short term memory. The core of TS is embedded in its short term memory process (Glover, 1990). Tabu is used to prevent cycling when moving away from local optima through non-improving moves, it is most common to prohibit reverse moves for certain iterations. Tabu is also useful to help the search move away from previously visited portions of the search space and thus perform more extensive exploration (Cordeau and Laporte, 2002). The neighbourhood of the current solution is restricted to the solutions that do not belong to the tabu list. At each iteration the best solution from the allowed set is chosen as the new current solution. Additionally, this solution is added to the tabu list and one of the solutions that were already in tabu list is removed (usually in FIFO order). The algorithm stops when a terminate condition is met. It might also terminate if the allowed set is empty, that is, if all the solution in N (s) are forbidden by the tabu list. The use of tabu list prevents from returning to recently visited solutions; therefore it prevents from endless cycling and forces the search to accept even uphill moves. The length of tabu list (i.e., the tabu tenure) controls the memory of the search process. With small tabu tenures the search will concentrate on small area of the search spaces. On the opposite, a large tabu tenure forces the search process to explore larger regions, because it forbids revisiting a higher number of solutions (Blum and Roli, 2003). 3. Aspiration criteria. Tabu is sometimes too powerful, they may prohibit attractive moves, even when there is no danger of cycling, or they may lead to an overall stagnation of the searching process. It is thus necessary to use algorithmic devices that will allow one to revoke (cancel) tabus. These are called aspiration criteria. The simplest and most commonly used aspiration criteria consist in allowing a move even if it is tabu, if it results in a solution with an objective value better than of the current best-known solution (since the new solution has obviously not been previously visited (Gendreau, 2002). 4. Stopping criteria. In theory, the search could go on forever, unless the optimal value of the problem at hand is known beforehand. In practice, obviously, the search has to be stopped at some point. The most commonly used stopping criteria in TS are: - after a fixed number of iterations (or a fixed amount of CPU time) 85 - after some number of iterations without an improvement in the objective function value (the criterion used in most implementations) - when the objective reaches a pre-specified threshold value In complex tabu schemes, the search is usually stopped after completing a sequence of phases, the duration of each phase being determined by one of the above criteria (Gendreau, 2002). 5. Intermediate and long-term memory as a basis of strategies for Intensification and Diversification. In fact, the fundamental elements of intensification and diversification strategies are already present in the short-term memory component of TS, since a short-term memory tabu list has an intensification role by temporarily locking in certain locally attractive attributes (those belonging to moves recently evaluated to be good), while it also has a diversification role by compelling new choices to introduce (or exclude) attributes that are not among those recently discarded (or incorporated) (Glover, 1990). There are several types of tabu list: x Strict Tabu : Forbid all previous solutions. x Fixed Tabu : x The size of tabu list is fixed The possibility of cycles remain Reactive Tabu : Adapt list size to properties of a problem dynamically According to Crainic et al. (2005), two key concepts in TS are those of search intensification and search diversification. The idea behind search intensification is that regions of the search space that appear “promising” (usually because good solutions have been encountered close by) should be explored more thoroughly in order to make sure that the best solutions in these regions are found. Intensification is usually based on some type of intermediate-term memory, such as a recency memory, in which one would record the number of consecutive iterations that various “solution components” have been present without interruption in the current solution. Intensification is typically performed periodically restarting the search from the best currently known solution and by “freezing” (fixing) in this solution the 86 components that seem more attractive. It is also often involves switching to a more powerful neighborhood operator for a short period of time. Search diversification addresses the complementary need to perform a broad exploration of the search space to make sure that the search trajectory has not been confined to regions containing only mediocre solutions. It is thus a mechanism that tries to force the search trajectory into previously unexplored regions of the search space. Diversification is usually based on some form of long-term memory, such as frequency memory, in which one would record the total number of iterations (since the beginning of the search) that various “solution components” have been present in the current solution or have been involved in the selected moves (Crainic et al., 2005). The basic structure of TS (Glover, 1990) is depicted at Figure 3.15. 87 Begin with Starting Current Solution Create a Candidate List of Moves (each move would generate a new solution from the current solution) Evaluate each Candidate Move Does the move yield a higher evaluation than any other move found admissible so far from the current candidate list? Yes Check Tabu Status Is the candidate tabu? Tabu Yes Not Tabu Check Aspiration Level Does move satisfy aspiration criteria? No Yes No Move is Admissible Designate as best admissible candidate Candidate List Check Is there a “good probability” of better moves left, or should candidate list be extended No Make the Chosen Best Admissible Move Stopping Criterion Continue Stop Terminate Globally or Transfer A transfer initiates an intensification or diversification phase embodied in an intermediate or long term memory component Figure 3.15 : Basic tabu search algorithm Update Admissibility Conditions Update Tabu Restrictions and Aspiration Criteria 88 3.9 The Hybrid Genetic Algorithm and Tabu Search Scheme One of the developments of metaheuristics for VRPSD was based on the hybrid Genetic Algorithm with Tabu Search. The Tabu Search was incorporated to the body of GA. There were two types of Hybrid GA and TS as described further in Chapter 5. The proposed hybrid algorithm of GA and TS consists of several properties such as the order or permutation representation; small population in which all individuals are distinct; inclusion of good simple heuristic solutions in the initial population; Roulette Wheel Selection with elitism; Order Crossover and the Tabu Search to be incorporated to the GA. The algorithm is implemented in the Visual C++ language under the operating windows XP. The data were analyzed using Minitab version 14 and SPSS version 13 for Windows. 3.10 Illustration of the Calculation of VRPSD Objective Function Consider a case of 5 customers where customers’ coordinates and demands, and its distance matrix are shown at Tables 3.2 and 3.3, respectively. Set route to be followed is 0 Æ 2 Æ 4 Æ 5 Æ 3 Æ 1 Æ 0 as described in Figure 3.16. Table 3.2 : Customer coordinates and demands i X Y Demand 0 50 50 0 1 82 23 U(1,3) 2 21 63 U(2,6) 3 79 46 U(0,2) 4 6 80 U(0,2) 5 35 33 U(1,3) 89 Table 3.3 : Distance matrix of customers Node 0 1 2 3 4 5 0 0 42 32 29 53 23 1 42 0 73 23 95 48 2 32 73 0 60 23 33 3 29 23 60 0 81 46 4 53 95 23 81 0 55 5 23 48 33 46 55 0 The filling coefficient f defined in Equation (3.2) is the measure of the total amount of expected demand relative to vehicle capacity and can be approximately interpreted as the expected number of loads per vehicle needed to serve all customers. If f is equal to 1 then the load to be serviced is the same with the vehicle capacity. If f is less than 1 then the load to be serviced is less than the capacity, while if f is bigger than 1 than the load to be serviced exceeds the vehicle capacity. For the illustration of VRPSD objective function, let f = 1.1. Then the quantity of garbage is ¦ E ([ ) i Q n f = (5)([2 4 1] / 3) = 11, vehicle’s quantity Q = 11 1.1 Route: 0 – 2 – 4 – 5 – 3 – 1 – 0 4 (j = 2) 2 (j = 1) 0 3 (j = 4) 5 (j = 3) 1 (j = 5) Figure 3.16: 5 customers network in Table 3.2 (depot excluded) From Figure 3.16, j represents the order/ sequence to be visited. st For example: j = 1 means 1 location to be visited, that is node 2. j = 2 means 2nd location visited, that is node 4, and so on. 90 Iteration 1 : j = 5 Set f j 5 (q) cj 5, 0 = 42 note that j = 5 doesn’t mean that node 5, but the customer no 5th visited, that is node 1. So f 5 represents travel cost from node 1 and node 0 that is 42. Iteration 2 : j = 4 j = 5-1 = 4 Æ 4th visited Æ node 3, a. Calculate f 4r (q) based on Eq. (2.4). K f jr (q) c j ,0 c0, j 1 ¦ f j 1 (Q [ k ) p j 1,k k 1 3 f 4r (q) c 4, 0 c0, 41 ¦ f 41 (11 [ k ) p 41,k , k 1 where x c 4,0 Æ travel cost from node 4th visited (node3) to node 0 is 29 (see distance matrix in Table 3.3) x p5,k represents probability for node 5th visited (node 1). Node 1 follows U(1,3), so k = 1, 2, 3. p5,k =1/3, since there are 3 outcomes (1,2 and 3) for the 2nd iteration, set f 5 (q) = 42 for all q. thus: f 4r (q ) 29 42 p 5,k [ f 5 (11 1) f 5 (11 2) f 5 (11 3)] 29 42 13 [ f 5 (10) f 5 (9) f 5 (8)] 29 42 13 [(3) x( f 5 )] 29 42 13 [(3) x(42)] = 113 The value f 4r (q ) is the same for all q, f 4r (q) = 113. b. Calculate f 4p (q ) based on Eq. (2.3) 3 set b = 0, f 4p (11) c 4,5 ¦ f 41 (11 k ) p 41,k k 1 91 23 {[ f 5 (11 1) p 5 ,1 ] [ f 5 (11 2 ) p 5 , 21 ] [ f 5 (11 3) p 5 ,1 ]} 23 13 {[ f 5 (10)] [ f 5 (9)] [ f 5 (8)]} 23 ( 13 )(3)(42) = 65 f 4p (11) f 4p (2) f 4p (10) ... f 4p (3) 65 2 3 k 1 k 3 c 4,5 ¦ f 5 (2 k ) p5,k ¦ 2c5,0 f 5 (2 11 k ) p5,k = 23 {[ f 5 (11 1) p5,1 ] [ f 5 (11 2) p5, 2 ]} [(2).(42) f 5 (2 11 3) p5,3 ] 23 13 {[ f 5 (10)] [ f 5 (9)] 84 [ f 5 (10)]} 23 13 {42 42 84 42} = 93 f 4p (1) 1 3 k 1 k 2 c 4 , 5 ¦ f 5 (1 k ) p 5 , k ¦ 2 c 5 , 0 f 5 (1 11 k ) p 5 , k = 23 {[ f 5 (1 1) p5,1 ]} {[2c5,0 f 5 (12 2) p5, 2 ] [2c5, 0 f 5 (12 3) p5,3 ])} 23 13 {[ f 5 (0)] [(2)(42) f 5 (11) (2)(42) f 5 (10)]} 23 13 {42 [(2)(42) 42 (2)(42) 42]} = 120.9 3 f 4p (0) c 4,5 ¦ 2c5,0 f 5 (0 11 k ) p5,k k 1 = 23 {[2c5,0 f 5 (11 1) p5,1 ] [2c5,0 f 5 (11 2) p5, 2 [2c5,0 f 5 (11 3) p5,3 ])} = 23 13 {[ f 5 (10)] [(2)(42) f 5 (11) (2)(42) f 5 (10)]} = 23 13 {42 [(2)(42) 42 (2)(42) 42]} = 149 c. Compare f 4r (.) with f 4p (q) for finding threshold h4 and f 4 (q ) . h4 is the last value of q when f 4r (.) d f 4p (q) , so h4 =2. f 4 (q) min{ f 4p (q), f 4r (q )} thus f 4 (11) f 4 (10) ... f 4 (3) 65 , f 4 (2) =93, f 4 (1) =113, f 4 (0) =113 These values of f 4 (q ) will be used for the next iteration. 92 160 140 120 100 fp 80 fr 60 40 20 h4 0 0 2 4 6 8 10 12 Figure 3.17 : Illustration of hj determination Iteration 3 : j = 3 j = 5-2 = 3 Æ 3rd visited Æ node 5, a. Calculate f 3r (q) 2 r 3 f (q) c3, 0 c0,31 ¦ f 31 (11 k ) p31,k , k 0 where x c3, 0 Æ travel cost from node 3th visited (node5) and node 0 is 23 (see distance matrix in Table 3.3) x p 4,k represents probability for node 4th visited (node 3). Node 3 follows U(0,2), so k = 0,1, 2. p 4,k =1/3, since there are 3 outcomes (0,1,2) thus: f 3r (q ) 23 29 p 4,k [ f 4 (11 0) f 4 (11 1) f 4 (11 2)] 23 29 13 [ f 4 (11) f 4 (10) f 4 (9)] , use result from 2nd iteration for f j (q) values 52 13 [65 65 65] = 117 The value f 3r (q ) is the same for all q, f 3r (q) = 117. 93 b. Calculate f 3p (q ) 2 c3, 4 ¦ f 31 (11 k ) p31,k f 3p (11) k 0 46 {[ f 4 (11 0) p 4,1 ] [ f 4 (11 1) p 4, 2 ] [ f 4 (11 2) p 4,3 ]} 46 13 {[ f 4 (11)] [ f 4 (10)] [ f 4 (9)]} 46 ( 13 )(65 65 65) = 111 f 3p (11) f 3p (1) f 3p (10) ... f 3p (2) 111 1 2 k 0 k 2 c3, 4 ¦ f 4 (1 k ) p 4,k ¦ 2c 4,0 f 4 (1 11 k ) p1,k 46 13 {[ f 4 (1) f 4 (0)] [(2)(29) f 4 (10)]} 46 13 {113 113 58 65} = 162.33 0 2 k 0 k 1 c 3 , 4 ¦ f 4 ( 0 k ) p 4 , k ¦ 2 c 4 , 0 f 4 ( 0 11 k ) p 4 , k f 3p (0) 46 13 {[ f 4 (0)] [(2)(2)(29) f 4 (10) f 4 (11)]} 46 13 {113 116 65 65} = 165.67 c. Compare f 3r (.) with f 3p (q) for finding threshold h3 and f 3 (q) . h3 is the last value of q when f 3r (.) d f 3p (q) , h3 =2. f 3 (q) min{ f 3p (q), f 3r (q)} so f 3 (11) f 3 (10) ... f 3 (2) 111 , f 3 (1) =162.33, f 3 (0) =165.67 These values of f 3 (q ) will be used in the next iteration. These procedures are repeated until f 0 (Q) is found. The f 0 (Q) = 221 and the values of threshold are h4 = 2, h3 = 2, h2 = 2 and h1 = 1. 94 3.11 Summary In this study, several metaheuristics based on Tabu Search and Genetic Algorithm are developed. Two main parts of the development are considered; these are the development of metaheuristics for single-objective single vehicle and bi-objective multiple vehicles. There are two kinds of data used to assess the performance of the proposed algorithm, the first is real data from case study of solid waste collection and the second is generated data simulates the real data from solid waste collection problem. The performance of algorithms is compared each other and with previous work. The summary of the metaheuristic algorithms developed is given in Table 3.4. Table 3.4: Summary of the metaheuristic algorithms considered in this study Single vehicle – single objective Multiple vehicles – bi objective 1. Genetic Algorithm (GA) 1. Pareto Genetic Algorithm 2. Tabu Search (TS) 2. Pareto Breeder Genetic Algorithm 3. Adaptive Genetic Algorithm (AGA) 4. Hybrid Genetic Algorithm and Tabu Search (HGATS) 5. Breeder Genetic Algorithm (BGA) 6. GA of Bianchi (previous research in single VRPSD) 95 CHAPTER 4 SOLUTION APPROACHES BASED ON TABU SEARCH AND REACTIVE TABU SEARCH FOR SINGLE VRPSD 4.1 Introduction Tabu Search has been used for solving many complex combinatorial problems but its potential for solving single vehicle routing problem with stochastic demands (VRPSD) has not been fully explored. The aim of this chapter is to explore the development of heuristic method based on Tabu Search for solving single VRPSD followed by the development of Reactive Tabu Search. One of the ways our method is different from previous researches in VRPSD is the use of reactive tabu search (RTS). From our reviews, this is the first time that RTS has been applied to the VRPSD. The initial development of Reactive Tabu Search was proposed by Battiti and Tecchiolli (1994). This approach maintains the basic ideas of TS with the following additional features: - A fully automated way of adapting the size to the problem and to the current evolution of the search, - An escape strategy for diversifying the search when the first mechanism is not sufficient. The RTS scheme uses an analogy with the theory of dynamical systems, where the tabu list size depends on the repetition of solutions and consequently tabu list size is determined dynamically, as opposed to the standard version of TS where tabu list 96 size is fixed. RTS seems to be robust enough and there may be a little effect of parameter changing (Wassan et al., 2007). The discussion of this chapter begins with the detail development of TS and RTS for single VRPSD, followed by the computational results and discussion. 4.2 Tabu Search for Single VRPSD In the context of TS related to the VRPSD, a decision has to be made regarding the most appropriate solution procedure to solve this problem. This involves the choice of the initial feasible solution, the neighbourhood structure, the tabu criterion, the fitness function, the aspiration function and the stopping criterion. All these decisions are related to the body of solution procedure which proved to be the most challenging. For the problem under consideration, the primary requirement of an initial feasible solution is that each customer is fully served while maintaining that each collecting truck has a limited capacity. At the same time the company faces the problem of not knowing the exact amount of demand (for example the demand is waste disposal to be picked up). The task here is to design a route such that the demand of each customer is fully collected and the total expected cost is minimized. 4.2.1 Initial Solution It is necessary to generate a number of solutions to initialize the main search process. The choice of the initial solution is known to be important. Perttunen (1994) investigated whether the use of a constructive heuristic leads to better results than using random initial solutions. He found that the use of initial solutions generated by applying a constructive heuristic, instead of a random initial solution, typically improve the performance of the algorithm. Derigs and Kaiser (2007) stated that starting from a set of randomly generated solution takes significantly more CPU- 97 time/ iterations than applying constructive heuristics. Adrabinski and Syslo (1983) in Helsgaun (2000) found that the Farthest Insertion construction heuristic was capable of producing good initial solutions for the Lin Kernighan heuristic. In this study, two simple and fast heuristic methods were used to generate the initial solution; the methods were Nearest Neighbour (NN) and Farthest Insertion (FI) heuristics. The best among them was chosen as the starting solution to the main body of the search itself, from which heuristic method which yields lower VRPSD objective value (the total expected cost). a. Nearest Neighbour The nearest neighbour is a fast and simple heuristic for constructing a TSP tour (Hurkens and Woeginger, 2004), but the solution generated is usually not the optimal one. It can sometimes miss shorter routes which are easily noticed with human insight, due to its "greedy" nature. These are the steps of the algorithm: 1. Start from the depot. 2. Scan remaining nodes for the node nearest to last node added in the tour. Add this node to the existing tour. 3. b. Repeat step 2 until all nodes are added. Close path to form a tour. Farthest Insertion Farthest Insertion was firstly introduced by Golden and Stewart (1985). These are the steps of the algorithm: 1. Start with a subtour made of the depot. 2. Select a node k farthest from depot. Form subtour depot-k-depot. 3. Scan remaining nodes for the node k farthest from any node in tour. 4. Find edge (i,j) that minimize cik + cjk - cij where i and j are in the tour. Insert k between i and j. 5. Repeat step 3 and 4 until all cities are in the tour. In both Randomized NN and Randomized FI, the first node to be visited is randomly chosen and after the tour has been completed, shifts the starting customer to the depot. 98 4.2.2 Neighbourhood Exploration The neighbourhood of a solution can be obtained by applying Or-opt local search methods. The Or-opt procedure, well known as node exchange heuristic, was first introduced by Or (Bard et al., 1998). Marinakis and Migdalas (2002) describe the procedure of Or-opt algorithm. Or-opt removes a sequence of up-to-three adjacent nodes and inserts it at another location within the same route. Or-opt can be considered as a special case of 3-opt (three arcs exchanges) where three arcs are removed and substituted by three other arcs. When removing a chain of consecutive nodes in or-opt, two arcs are deleted, and the third is eliminated when inserting the chain back into the route. However, the number of possible or-exchanges is far less than that of possible 3-exchanges. Or-opt is also shown to produce improved solutions of comparable quality to those produced by 3-opt, while requiring significantly less computational time. The procedure of Or-opt is described in Figure 4.1. Consider an initial tour and set t = 1 and s = 3. Remove from the tour a chain of s consecutive vertices, starting with the vertex in position t, and tentatively insert it between all remaining pairs of consecutive vertices on the tour Step 2.1: If the tentative insertion decreases the cost of the tour, implement it immediately, thus defining a new tour Step 2.2: If no tentative insertion decreases the cost of the tour, set t = t+1. If t = n + 1 then proceed to Step 3, otherwise repeat step 2. Step 3: Set t = 1 and s = s - 1. If s > 0 then go to step 2, otherwise stop. Step 1: Step 2: Figure 4.1 : Or-opt algorithm 4.2.3 Tabu Moves A move is a transition from a solution s to another solution s’ in N (s). Once a move is made, revisiting this solution is prohibited (or declared tabu) for a number of iterations. Tabu is used to prevent cycling when moving away from local optima through non-improving moves, it is most common to prohibit reverse moves for 99 certain iterations. Tabu is also useful to help the search move away from previously visited portions of the search space and thus perform more extensive exploration. (Cordeau and Laporte, 2002) Tabu list is a list of moves that are currently tabu. Tabu list is an ordered queue containing forbidden moves following FIFO (First In First Out) order; whenever a move is made, it is inserted to the end of the tabu list and the first element from the list is removed. For the first iteration, the tabu tenure of all edges is set to be 0. If tabu list size is too small, then it may not be able to prevent cycling but if tabu list size is too long then it will create too many restrictions. In this study, two types of tabu list size are used: 1. Static tabu list size (based on our preliminary experiment on the effect of different static tabu list size to the Tabu Search performance, the tabu list size set to be N/3 seems to be the best) and 2. Dynamic tabu list size. In dynamic tabu list size, if an edge is moved at iteration v, its addition or deletion is tabu until iteration v + , where is randomly selected value in the interval [tlsmin, tlsmax]. The idea of using random tabu list size was introduced by Taillard (1991) in the context of the quadratic assignment problem. In the application of Tabu Search for solving VRPSDC, Gendreau et al. (1996) randomly select tabu list size in the interval [n-5, n]. In this study, we use interval of tabu list size within [ N3 N 5 , N3 N 5 ]. The best admissible move is then chosen as the highest evaluation move in the neighbourhood of the current solution in terms of the objective function value and the tabu restrictions. The whole neighbourhood is explored and the best nontabu move is selected; however, in this study we also consider the feasible tabu improving move. An improving move is not accepted if it is in tabu list unless it satisfies the aspiration criterion. After a consecutive s nodes has been extracted form position i and re-inserted at position j, the concept of tabu move is: 1. It is tabu to re-insert subsequent node from s in the original tour to immediately position after s. 100 2. It is tabu to re-insert preceding node from s in the original tour to immediately position before s. The illustration of tabu moves is given in Figure 4.2. 1 2 3 4 5 6 7 8 9 10 i j tabu 1 5 6 7 8 2 3 4 9 10 tabu Figure 4.2 : Illustration of tabu moves 4.2.4 Aspiration Criterion The aspiration criterion is a measure solely designed to override the tabu status of a move if this move leads to a solution better than the best solution found by the search so far. As a rule, the search process moves at each iteration from the current solution to the best non tabu solution in neighbourhood solutions. However, a tabu solution may be selected if the value of objective function decreased upon the best value of a solution (aspiration criterion) so far encountered. We also used aspiration by defaults namely: x free the “least tabu tenure” move when all the move is tabu. x if there is a tie of least tabu tenure, then free the one with smallest objective value. 101 4.2.5 Stopping Criterion In using the optimization algorithms, the goal is to search for the global optimum. However, in general it is not clear when the goal is achieved especially in our application in the real world situation. Therefore, it is sometimes not that easy to decide when execution of an optimization algorithm should be terminated. There are many different mechanisms can be used for the detection of an appropriate time for ending an optimization run. The most obvious way is simply to stop after a pre specified number of iterations. But perhaps it would be better to stop when there is very little change between iterations, indicating that the process has reached a convergence (Tong et al., 2004). In our implementation, the TS procedure is repeated until there is no improvement in aspiration cost for 500 successive iterations. The whole processes of Tabu Search Algorithm described in Section 4.2 above were summarized in Figure 4.3. 102 BEGIN Initial Solution using NN and FI Calculate cost using VRPSD objective function Set iteration count = 1, aspiration level = = min cost of Initial Solutions , Create a Candidate List of Moves (Move: 2-opt and Lin and Kerghan, Find neighbourhood and determine cost) v=v+1 Yes Anymore neighborhood? No Choose the minimum cost of neighbourhood Consider next lower cost neighbourhood solution No Cost < No ? No Is move (that result min cost) is Tabu? Yes Is all move Tabu? Yes No Yes Accept as current solution Update and Tabu list Accept as current solution Update Tabu list Freeing strategy: aspiration by default Is stopping criterion met? Yes Set optimal solution as Final Solution END Figure 4.3 : Tabu search algorithm for single VRPSD 103 4.3 Reactive Tabu Search The structure of our RTS-VRPSD algorithm is generally the same as described in previous section about the development of TS for single VRPSD, while its “reactive” aspects are discussed furthermore. Step 1: Initial Solution Generate initial solutions using two simple and fast constructive heuristics Nearest Neighbour (NN) and Farthest Insertion (FI) heuristics. The best among them was chosen as the starting solution S to the main body of the search itself, based on which heuristic that yields lower cost from the calculation of VRPSD objective function. Step 2: Initialization - Initialize the tabu search data structures - Set number of iterations - Initialize the RTS parameters values Step 3: Neighbourhood Exploration - Evaluate the neighbourhood of a solution defines by the Or-opt local search methods and choose the best neighbouring solution, S’. - The best admissible move is then chosen as the highest evaluation move in the neighbourhood of the current solution in terms of the objective function value and the tabu restrictions. The whole neighbourhood is explored and the best non-tabu move is selected; however, in this study we also considering the feasible tabu improving move. An improving move is not accepted if it is in the tabu list unless it satisfies the aspiration criterion. - A tabu solution may be selected if the value of objective function decreased upon the best value of a solution (aspiration criterion) so far encountered. Step 4: Stopping Criterion Perform Step 3 until there is no improvement in aspiration cost for 500 successive iterations. 104 The RTS employs two mechanisms, both mechanisms react to the repetitions. The first mechanism of RTS is used to produce a balanced tabu list size and consists of two reactions that were fast and slow reactions. The fast reaction increases the tabu list size when solutions are repeated. The slow reaction reduces the tabu list size for those regions of the search space that do not need large list lengths. In a fast reaction, after some reactions of repetition, the size is increased and becomes large enough to break any limit cycle and explore new regions. While in slow reaction, decrease tabu list size: - if a number of iterations is greater than a moving average - when all movements are tabu and none is better than the aspiration criterion The second mechanism of RTS provides a systematic way to diversify the search when it is only confined to one portion of the solution space. Sometimes tabu (prohibition) is not sufficient to avoid long cycles. A "chaotic trapping" of the trajectory in a limited portion of the search space is still possible (the analogy is with chaotic attractors of dynamical systems, where the trajectory is confined in a limited portion of the space, although a limit cycle is not present). In order to increase the robustness of the algorithm, an escape diversity strategy is needed. The escape phase is triggered when too many configurations are repeated too often, in other words when the number of “chaotic” (the repetition of a solution is more than a specific times) is greater than the threshold then reset the tabu (escape). Battiti and Tecchiolli (1994) performed random repositioning of customers for this purpose. In our case, the escape mechanism is modified, instead of random repositioning of customers the diversification is obtained by generating Or-opt of randomized farthest insertion. In developing RTS, we define the following variables: - tls : tabu list size - repetition : the number of times the solution was accepted. When repetition > 1, it is an often-repeated solution - Chaotic : the number of often repeated solutions - MovAvg : an average of the detected repetitions 105 - LastChange : the number of iterations executed after the last change of tabu list size - GapRep : Gap between two consecutive repetitions (number of iterations between this and previous occurrence of current solution) The initialization and parameter settings used in the RTS are depicted in Figure 4.4. Initialization: tls = 1 Chaotic = 0 MovAvg = 0 GapRep = 0 LastChange = 0 Iter = 0 Repetition = 0 Iteration number when last noticed: LastTimeRep = 0 time an identical solution was Iteration number of the most recent repetition: CurTimeRep = 0 When the number of repetitions for a solution is greater than REP, it is added to the set of often-repeated solutions: REP = 3 Maximum number for the set of often-repeated solutions allowed: Chaos = 6 Percentage increase for the tabu tenure value: Increase = 1.1 Percentage decrease for the tabu tenure value: Decrease = 0.9 Constant used to compare with GapRep to get the moving average: GapMax = 50 Figure 4.4 : Initialization and parameters setting in RTS The constant values for the above parameters are the same as in the standard RTS scheme of Battiti and Tecchioli (1994) except for the value of Chaos where it is the same as implemented by Wassan et al. (2007). The RTS mechanism, called in Step 3 of the RTS, is given in Figure 4.5 while the Escape phase is presented in Figure 4.6. 106 (1). Search for repetition of S, if found then GapRep = CurTimeRep – LastTimeRep, and go to (2); Else go to (4). (2). If (repetition of S) > REP, then set Chaotic = Chaotic + 1; Else go to (3). If Chaotic > Chaos, then set Chaotic = 0, clear and rebuild tabu search data structures and go to Step 3 of the RTS algorithm; Else go to (3). (3). If GapRep < GapMax, then tls = tls x Increase, set LastChange = 0, MovAvg = (0.1 x GapRep) + (0.9 x MovAvg); and go to (5); Else go to (4). (4). If LastChange > MovAvg, then tls = tls x Decrease, and set LastChange = 0; Else set Last Change = LastChange + 1, store the solution S and go to (5). (5). Stop the RTS mechanism. Figure 4.5 : The RTS mechanism x Set the current and best escape solutions to S (i.e., Sec = S and Seb = S ) x Set escape iterations x Perform Or-opt neighbourhood moves x Scan for the best solution, S’ec, from neighbouring solutions of Sec x If C(S’ec) < C(Seb), then update Seb = S’ec and Sec = S’ec x Else Sec = S’ec x Repeat until there is no improvement for 100 iterations x Return to the main algorithm by setting its current solution S to Seb (if found) or to Sec Figure 4.6 : The escape phase 107 4.4 Computational Results The metaheuristics were tested on a set of instances generated from procedure described in Section 3.5. For each instance, N nodes were generated in [0,100]2 according to a uniform distribution. The demand of each node was generated as follows. Nodes were first assigned a demand range of [1,5], [6,10], and [11,15] in equal probability. The value of each [ i (customer demands) was then generated in the appropriate range according to a discrete uniform distribution. In this study, twenty instances were generated on each of the problem size that are small problem size (number of nodes is equal to 10), moderate problem size (number of nodes is equal to 20) and large problem size (number of nodes is equal to 50). Actually the algorithm and software presented here can solve larger number of nodes, but in this study, the computational experiments were confined on these three problem sizes. Each algorithm was tested on each instance until there was no improvement in the aspiration cost for 500 successive iterations. Here is how the TS works. In the search process, TS allows the search to accept non improving move (move that obtain larger VRPSD objective function than the aspiration cost) as long as it is not tabu, and on the other side it also allows tabu move as long it gives an improvement to the aspiration cost. Accepting the non improving move can be seen in upper graph of Figure 4.7. In iteration 2, the cost of 269, that larger than the aspiration cost of 217, was accepted as the current solution since it was the best non tabu move. 4.4.1 Static versus Dynamic Tabu List Size As described in Section 4.2.3, two types of tabu list size are used. The first is static tabu list size which is set to be N/3 and the second is dynamic tabu list size which is set to be a random number within [ N3 N 5 , N3 N 5 ]. Static tabu list size means that the tabu list size is fixed from iteration to iteration; while dynamic tabu list size means that the tabu list size is dynamically changed from iteration to 108 iteration depend on the random number generated within the specific range. For example for 30-node problems, using static tabu list size gives a tabu list size equal to 10 for every iteration, while by using dynamic tabu list size, the tabu list size in every iteration may be different each other according to the random number generated. Firstly, the effect of static and dynamic tabu list size to the search process were analyzed. For the illustration, lets consider instance consist of 5 nodes with demand ranges are in [0,2], [1,3] and [2,6]. The TS was executed until the number of iteration is equal to 10. Although the final best result from both types of tabu list size were the same, it was quite different in the search process refers to the current solution values as depicted in Figure 4.7. 109 Figure 4.7 : The comparison between static and dynamic tabu list size implementation Cycling is a condition during the search when the move finds solutions that have been visited. Here the cycling found in the search process of both types of tabu list size was given: - Using static tabu list size: - the same solution configuration found at iteration 1 and 3 (current cost value = 217) 110 - the same solution configuration found at iteration 2 and 4 (current cost value = 269) - the same solution configuration found at iteration 6 and 8 (current cost value = 324) - the same solution configuration found at iteration 7 and 9 (current cost value = 263) - Using dynamic tabu list size - the same solution configuration found at iteration 2 and 6 (current cost value = 269) - the same solution configuration found at iteration 3 and 7 (current cost value = 255) The same current cost also occurred between iteration 1 and 5, and between iteration 8 and 9, but these were not cycle since the solutions were not in the same order of node visited (the solution configurations were different) although the VRPSD objective function computed were equal. Furthermore we can see that static tabu list size shows weakness since it can still find solutions that have been reached from a few last iterations. By using dynamic tabu list size, the probability of cycling can be reduced significantly. Thus, for the rest of study, we prefer to use dynamic tabu list size rather than the static one. 4.4.2 Tabu Search versus Reactive Tabu Search In this section, performances of TS and RTS were investigated and evaluated. Most of the many heuristics developed for large optimization problems are evaluated empirically—by applying the procedures to a collection of specific instances and comparing the observed solution quality and computational burden. In this study, twenty instances were generated on each of the 10-node problems, 20-node problems and 50-node problems where the depot is excluded. Each algorithm was tested on each instance until there is no improvement in the aspiration cost for 500 iterations. The computational experiment results based on the total expected cost obtained were reported in Table 4.1. Rows correspond to problem instances and columns 111 correspond to algorithms being tested for each problem size. Each cell represents the running of a particular algorithm on a specific instance. Table 4.1 : The total expected cost of solutions obtained from TS and RTS PROBLEM INSTANCE ALGORITHM Number of Number of Number of nodes = 10 nodes = 20 nodes = 50 TS RTS TS RTS TS RTS Instance 1 357 343 411 409 628 610 Instance 2 353 348 447 447 676 654 Instance 3 253 248 467 456 648 623 Instance 4 267 257 376 375 612 582 Instance 5 300 300 399 393 599 590 Instance 6 310 311 343 343 612 580 Instance 7 319 319 449 432 609 601 Instance 8 295 295 367 368 629 625 Instance 9 287 280 403 404 592 577 Instance 10 352 344 415 399 578 557 Instance 11 351 351 425 422 619 619 Instance 12 308 303 447 408 710 654 Instance 13 296 296 372 340 622 604 Instance 14 269 266 395 396 607 606 Instance 15 242 242 327 327 585 578 Instance 16 338 338 414 413 622 618 Instance 17 288 288 389 396 606 572 Instance 18 331 331 445 445 560 548 Instance 19 261 261 345 337 588 586 Instance 20 328 326 384 373 570 565 AVERAGE 305.25 302.35 401 394.15 613.6 597.45 112 Table 4.2 presented the average computation time of the TS and RTS for each number of nodes. Computation times in this section were based on laptop machine of Intel Centrino CoreTM 2 Duo processor with 2.0 GB of RAM. The average computation time for 10 nodes is 32.4 seconds using TS, and we need more than 24,354.3 seconds for the 50-node problems. On the other hand, on average, we can solve the same problems in 27.4 and 3,039.5 seconds respectively with the RTS. The RTS reduced computation time about 16.7% for 10-node problems and the differences in computation time of TS and RTS grows considerably as problem size increases. It seems that RTS was superior to TS in both of solution quality and computation time since RTS returned to less total expected cost and less computation time than TS. Table 4.2 : Average computation time of TS and RTS (secs) Number of nodes TS RTS 10 32.4 27.4 20 577.2 205.6 50 24,354.3 3,039.5 The data in Table 4.1 was analyzed further using statistical software package SPSS Version 13. In order to get information from the data, usually the first step in data analysis is to conduct descriptive statistics to describe the basic features of the data gathered from computational experiments. It consists of simple summaries about the distribution, the central tendency and the dispersion. There are various techniques that are commonly used in descriptive statistics, the first is in graphical displays of the data which graphs summarize the data or facilitate comparisons. The second is tabular description in which tables of numbers summarize the data and the third is summary statistics (single numbers) which summarize the data. Figure 4.8 shows the graphical summary by means of a box and whisker plot to describe the distribution of solutions obtained by the TS and the RTS for each problem size. The solutions were grouped by algorithm. A box and whisker plot can be used to show the shape of the distribution, its central value, and variability. The picture produced consists of the most extreme values in the data set (maximum and 113 minimum values), the lower and upper quartiles and the median. Box and whisker plots are very useful when large numbers of observations are involved and when two or more data sets are being compared. As it can be observed from the box and whisker plots, it was worth noticing that the relative performance of the algorithms was similar across different problem size: the solution quality produced by the RTS clearly outperforms the results of TS since the RTS can yield lower total expected cost for every problem size. The second descriptive statistics technique namely summary statistics were reported in Table 4.3. It can be seen that the larger number of nodes, the higher the total expected cost. Central tendency measures (mean and median) and the dispersion measures (range and standard deviation) of solution qualities generated from RTS are smaller than solution qualities obtained by TS for all problem size (all number of nodes examined in this study). Smaller mean value refer to higher solution quality that is a lower total expected cost. 114 800 12 700 600 500 400 300 200 TS_10 RTS_10 TS_20 RTS_20 TS_50 RTS_50 Figure 4.8 : Box and whisker plots of solutions produced by TS and RTS To verify whether the differences between solutions found by the two algorithms are statistically significant or not, we performed paired samples test between TS and RTS results for every problem size (every number of nodes examined in this study). The paired-samples t-test procedure compares the means of two variables for a single group. It computes the differences between values of the two variables for each case and tests whether the average differs from 0. Before the paired t-test was conducted, the test of normal distribution assumption of the difference between two variables must be conducted. The results of KolmogorovSmirnov test for normal distribution test were given in Table 4.4. We reported the p-value for the null hypothesis “The data follow normal distribution” where the significance level which the null hypothesis rejected is 0.05. The p-value that smaller than 0.05 is sufficient to reject the null hypothesis. 115 Table 4.3 : Descriptive statistics measures Statistics Number of independent runs Valid Missing TS_10 20 RTS_10 20 TS_20 20 RTS_20 20 0 0 TS_50 20 RTS_50 20 0 0 Mean 305.25 302.35 401.00 394.15 613.60 0 597.45 0 Std. Deviation 35.559 35.042 39.030 37.788 35.024 29.280 Range 115 109 140 129 150 106 Minimum 242 242 327 327 560 548 Maximum 357 351 467 456 710 654 25 273.50 269.50 373.00 369.25 589.00 577.25 50 304.00 301.50 401.00 397.50 610.50 595.50 75 336.25 336.25 440.00 419.75 626.50 618.75 Percentiles In the Table 4.4, the p-values of normality test for 10-node problems, 20-node problems and 50-node problems were 0.046, 0.241 and 0.809, respectively. Since the p-values of normality test for 20-node problems and 50-node problems were larger than = 0.05, thus we have no evidence to reject the null hypothesis. We can conclude that the difference values for 20-node problems and 50-node problems follow normal distribution and the paired t-test can be used for this data set. Otherwise for 10-node problems, the p-value is less than = 0.05, thus we must reject null hypothesis and conclude that the difference was not follow normal probability distribution. Since the normal distribution assumption was violated, thus the non parametric Wilcoxon signed rank test was used for this problem size (number of nodes). Table 4.4 : Kolmogorov-Smirnov normality test results for differences between TS and RTS One-Sample Kolmogorov-Smirnov Test Number of independent runs Normal Parametersa,b Mean Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. diff_TS_ RTS_10 20 2.9000 4.16628 .307 .307 -.193 1.372 .046 diff_TS_ RTS_20 20 6.8500 11.60887 .230 .230 -.199 1.028 .241 diff_TS_ RTS_50 20 16.15 14.184 .143 .143 -.127 .639 .809 116 We were interested in comparing the performance of TS and RTS for each problem size. In paired t-test, the hypothesis related to this comparison is stated as follows. H0 : P d 0 H1: P d z 0 whereas the null hypothesis in Wilcoxon signed-rank test is different from the null hypothesis in paired t-test, that is: the median difference between pairs of observations is zero. The result of Wilcoxon signed-ranks test for number of nodes 10 and paired t-test for 20-node problems and 50-node problems were presented in Figure 4.9 and Figure 4.10, respectively. The p-value of difference between TS and RTS performance is 0.007, 0.016 and 0.000 for 10-node problems, 20-node problems and 50-node problems, respectively. Since all p-values are less than = 0.05, the null hypothesis was rejected and it can be concluded that the two compared groups tend to yield different result. There were statistically significant differences between the performance of TS and RTS in term of solution quality for solving VRPSD. The extent of this difference was shown clearly by the confidence interval of the difference in Figure 4.10 which not encompasses zero. Ranks RTS_10 – TS_10 Negative Ranks Positive Ranks Ties Total Number of runs 9 a Mean Rank Sum of Ranks 6.00 54.00 1 b 1.00 1.00 10 c 20 a. RTS_10 < TS_10 b. RTS_10 > TS_10 Test Statistics b c. RTS_10 = TS_10 Z Asymp. Sig. (2-tailed) RTS_10 TS_10 -2.708a .007 a. Based on positive ranks. b. Wilcoxon Signed Ranks Test Figure 4.9 : Wilcoxon signed-ranks test results for 10-node problems 117 Furthermore, it can also be shown that the RTS can produce less total expected cost. As we can see from Figure 4.8, the number of negative ranks refer to (RTS < TS) is higher than the number of positive ranks refer to (RTS > TS). The same information can also be obtained from Figure 4.10, where the mean values of the differences between performance of TS and RTS for 20-node problems and 50node problems were positive, means that the values of total expected cost resulted from TS were higher than the cost produced from TS. a. Paired Samples for 20-node problems Paired Test Samples Test Mean 6.850 TS_20 - RTS_20 Paired Differences 95% Confidence Std. Interval of the Error Std. Difference Mean Deviation Lower Upper 11.609 2.596 1.417 12.283 t Sig. (2-tailed) df 2.639 19 .016 b. Paired Samples for 50-node problems Paired Test Samples Test Paired Differences Mean TS_50 - RTS_50 16.150 Std. Deviation Std. Error Mean 14.184 3.172 95% Confidence Interval of the Difference Lower Upper 9.512 22.788 t 5.092 df Sig. (2-tailed) 19 .000 Figure 4.10 : Paired t-test results for 20-node and 50-node problems 4.5 Conclusion In this chapter, the effect of static and tabu list size was analyzed and the solution approaches based on Tabu Search and Reactive Tabu Search for single VRPSD were developed. From the computational experiments, the result shows the advantage of using dynamic tabu list size in TS. By using dynamic tabu list size, the probability of cycling was reduced significantly. Furthermore, the RTS is developed for solving the VRPSD and comparative study between TS and RTS is conducted. The result shows that there are statistically significant differences between the performances of the two algorithms; further, the RTS is better than TS in both of solution quality (based on the total expected cost) and computation time. 118 CHAPTER 5 VARIOUS GENETIC ALGORITHM-BASED METAHEURISICS FOR SOLVING SINGLE VRPSD 5.1 Introduction Genetic Algorithm (GA) is a population based search method based on principles of natural selection and genetics. A set of points is generated, promising points are selected, and new points are generated using the genetic operators’ recombination/crossover and mutation (Muhlenbein et al., 1999). GAs categorized as a global search heuristics, classed under Evolutionary Algorithm that use technique inspired by evolutionary biology. In these early days, the application domains were mostly learning tasks and optimization of numerical functions. In application to solve combinatorial optimization problem like TSP and VRP, the original GA has to be modified. In this chapter, we explore the dynamism of GA in solving the VRPSD by developing various GA-based metaheuristics for solving single VRPSD. The VRPSD is encoded in the form of chromosomal manner and the fitness values are established to define good or bad solutions based on its objective function. Further we examined the selection procedure, reproduction system and mutation with giving more emphasis on the choice of probability of mutation. This chapter begins with the development of GA followed by the development of the Adaptive GA for solving single VRPSD. In this study, we propose a new adaptive mutation probability scheme based on diversity measure. The use of fixed and adaptive mutation probability was also compared. Furthermore, two enhanced GAs were proposed, the 119 first is the Hybrid GA-TS and second is the Breeder GA. Brief description of GAbased metaheuristics that were implemented was given, followed by the experimental results and the discussion. 5.2 Genetic Algorithm for Single VRPSD GA starts with an initial set of solutions, called population. Each solution in the population is called a chromosome, which represents a point in the search space. The chromosomes evolve through successive iterations, called generations. During each generation, the chromosomes are evaluated using some measures of fitness. The fitter the chromosomes, the higher the probabilities of being selected to perform the genetic operations, including crossover and mutation. In the crossover phase, the GA attempts to exchange portions of two parents, that is, two chromosomes in the population to generate an offspring. The crossover operation speeds up the process to reach better solutions. In the mutation phase, the mutation operation maintains the diversity in the population to avoid being trapped in a local optimum. A new generation is formed by selecting some parents and some offspring according to their fitness values, and by rejecting others to keep the population size constant. After the predetermined number of generations is performed, the algorithm converges to the best chromosome, which hopefully represents the optimal solution or may be a nearoptimal solution of the problem. The main characteristics in GA for solving single VRPSD were given as follows. These include the chromosome representation, selection, recombination and mutation. Step 0. [Define] Define operator settings of GA suitable with the problem which is VRPSD. Step 1. [Initialization] Create an initial population P of PopSize chromosomes that consists of constructive heuristics solutions and randomly mutation of it where all individuals are distinct or clones are forbidden. 120 Step 2. [Fitness] Evaluate the fitness f(Ci) of each chromosome Ci in the population. The fitness is the VRPSD objective function (the total expected cost). High fitness denoted by low VRPSD objective function. Step 3. [Selection] Apply Roulette Wheel Selection. This gives the set of Mating Population M with size PopSize. Step 4. [Crossover] Pair all the chromosomes in M at random forming PopSize /2 pairs. Apply crossover with probability pc to each pair and form PopSize chromosomes of offspring, if random number t pc then offspring is the exact copy of parents. Step 5. [Mutation] With a mutation probability pm mutate the offspring. Step 6. [Replace] Evaluate fitness of parents and new offspring. Choose the best PopSize chromosomes. Replace the old population with newly generated population. Step 7. [Test] If the stopping criterion is met then stop, and return to the best solution in current population, else go to Step 2. 5.2.1 Chromosome Representation In the early days, most Genetic Algorithms used binary encodings and wellstudied crossover and mutation operators. More recently, alternate encoding schemes have been considered in order to account for problem-specific information (Grefenstette, 1987). Poon and Carter (1995) have classified different vector schemes to represent a tour of cities in the traveling salesman problem: a path representation, an adjacency representation, an ordinal representation, a position listing representation, and an adjacency listing representation. Among them, the path representation in particular has been frequently utilized to develop many genetic algorithms for the traveling salesman problem because of its simplicity (Choi et al., 2003). In order to represent enlarged search space effectively, an appropriate stringcoding scheme is needed to describe efficiently an infeasible solution with subtours. The path representation of a chromosome is a natural coding scheme for the traveling salesman problem and vehicle routing problem (Potvin, 1996; Schmitt and Amini, 1998). 121 Davis (1991) proposed a hybrid Genetic Algorithm for the graph coloring problem in which individuals are represented as permutations of the nodes. In developing the algorithm, the permutation representation or the path representation or order representation is used since the typical approach using binary strings will simply make coding more difficult. Order representation is perhaps the most natural and useful representation of a VRP tour, where customers are listed in the order in which they are visited (Davis, 1991). A chromosome represents a route and a gene represents a customer and the values of genes are called alleles. The search space for this representation is the set of permutations of the customers; every chromosome is a string of numbers that represent a position in a sequence. Works in GA for solving VRP using path representation were including the work of Schmitt and Amini (1998), Machado et al. (2002), Tong et al. (2004), Lacomme et al. (2006). Order representation can be described as follows. Chromosome A 3 2 5 4 7 1 6 9 8 Chromosome B 1 5 3 2 6 4 7 9 8 Figure 5.1 : Illustration of order representation 5.2.2 Initialization and Population Size Term population used in genetic algorithm is different with term population in statistics. In statistics, population is the set of all possible values of a random variable under observation where a sample is a subset of the population. In genetic algorithm, population is a set of candidate solutions to be selected as parents. In the case of vehicle routing problem, genetic algorithm does not work with the number of whole possible chromosomes (which is the number of possible permutation of n nodes = n!) as the population but rather works with a subset of it. The number of candidate solutions in genetic algorithm is called population size. Usually the initial population of candidate solutions in genetic algorithm is generated randomly across the search space. However, other information can be 122 easily incorporated to yield better results. The inclusion of good heuristic in initial solution is stated in Prins (2004) by using Clarke and Wright, Mole and Jameson and Gillett and Miller heuristics for solving distance-constrained VRP (DVRP) instances. In this study, the Nearest Neighbour (NN), Farthest Insertion (FI) and mutation results of NN and FI were applied to generate the initial solution. The population is an array P of PopSize (population size) chromosomes. Each chromosome Pk is initialized as a permutation of customers. Clones (identical solutions) are forbidden in P to ensure a better dispersal of solutions and to diminish the risk of premature convergence. An example of initial population is depicted in Table 5.1. Table 5.1 : An illustration of initial population Chromosome PopSize is even number PopSize is odd number Generated by Chromosome 1 P1 P1 NN Chromosome 2 P2 P2 FI Chromosome 3 P3 P3 Mutation of NN … … … … P P 2 ( PopSize 2 2) P 3 ( PopSize 2 2) P 2 ( PopSize 2 3) Mutation of NN 3 ( PopSize 2 3) Mutation of FI … … … … Chromosome PopSize PPopSize PPopSize Mutation of FI The population size is one of the factors affecting the performance of genetic algorithm. Small population size might lead to a premature convergence. On the other hand, large population size may lead to unnecessary expenditure of valuable computational time. In practice, the population size is often determined by experimenter. Reviews on several population sizes used in previous researches on Genetic Algorithm for VRP were presented in Table 5.2. 123 Table 5.2 : Reviews on several population sizes used in Genetic Algorithm for VRP AUTHORS APPLICATION POPULATION SIZE Whitley (1989) TSP Thangiah (1995a) VRPTW Baker and VRP Ayechew (2003) 50 50 30 50 Jaszkiewicz and VRP Kominek (2003) Bianchi et al. VRPSD (2004) Prins (2004) VRP 40 Lacomme et al. (2006) Ho et al. (2008) 5.2.3 CARP VRP NO. OF NODES/ CUSTOMERS 100 customers 50 customers Larger sizes of problem (75, 100, 150, 199) 100 sectors 10 50, 100 and 200 customers Population size < 25 or Ranging from 50 to 483 customers > 50 will give moderate degradation of the average solution and found that population size equal to 30 performs best. 60 7-27 nodes and 1155 edges 25 50 and 100 customers Evaluation Once the population is initialized or an offspring population is created, the fitness values of candidate solutions are evaluated. The fitness value is the function of VRPSD objective function (the total expected cost). High fitness denoted by low VRPSD objective function. 5.2.4 Roulette Wheel Selection with elitism This research employs the combination of two types of GA selection techniques, namely roulette wheel and elitism. The roulette wheel selection works by selecting the chromosome by looking at their proportional fitness rank. This is 124 where the evolution concept ‘survival of the fittest’ comes into plays. Some researchers found that this technique will lead to only the best chromosome been selected in the population. It is because the fittest chromosome rank is bigger compared to the less fit chromosome and in probability of course chromosome with the highest rate will have a big chance to be selected. The elitism technique is a simple selection operator, which reserved the best found chromosome in the current population to rebirth for the next generation. Mitchell (1996) said that elitism could increase rapidly the performance of genetic algorithm, because it prevents losing the best-found solution. When creating a new generation using the reproduction operator, we could have a chance of losing the best-found chromosome in the current population. This is where elitism plays their role in preventing the lost of this chromosome. In this example, after calculating the probability of each selection, the elitism operator will automatically reserved the chromosome that produce the lowest expected cost. 5.2.5 Order Crossover The standard mutation and crossover operators designed for bit-strings and parameter lists produce illegal offspring when applied to permutation lists. To combat this problem, a number of special operators have been developed which produce legal permutation lists for offspring. Many of these operators were first developed and tested on the Traveling Salesman Problem (TSP), where the permutation represents a (circular) list of cities in a TSP tour. A very large number of permutation crossovers exist in the literature, many of which have been developed specifically for the TSP, which remains the most popular of the test bed problems involving permutations (for example see Whitley et al. (1989) (Valenzuela, 2000). A recent review of permutation crossovers can be found in Whitley (1997). In Oliver et al. (1987), Partially Match Crossover (PMX), Cycle Crossover (CX) and Order Crossover (OX) were applied to the 30-city problem of Hopfield and Tank. They found that the best tour generated with OX was 11% shorter than the best PMX 125 tour, and 15% shorter than the best CX tour. Starkweather et al. (1991) tested six different crossover operators on the same problem. Thirty different runs were performed with each operator. In this experiment, OX found the optimum 25 times (out of 30), while PMX found the optimum only once, and CX never found the optimum solution. offspring. Thus in this study, OX was employed in the generation of OX crossover operator extends the modified crossover of Davis by allowing two cut points to be randomly chosen on the parent chromosomes. In order to create an offspring, the string between the two cut points in the first parent is first copied to the offspring. Then, the remaining positions are filled by considering the sequence of cities in the second parent, starting after the second cut point (when the end of the chromosome is reached, the sequence continues at position 1). The detail of how OX crossover works was given in Chapter 3. 5.2.6 Mutation Mutation alters one or more genes (positions) of a selected chromosome (solution) to reintroduce lost genetic material and introduce some extra variability into the population. The role of mutation in GAs has been that of restoring lost or unexplored genetic material into the population to prevent premature convergence of the GA sub optimal solutions (Laoufi et al., 2006). In this study, we implement a swap mutation. In swap mutation, two customer locations are swapped, and their positions are exchanged. This mutation operator is the closest in philosophy to the original mutation operator, because it only slightly modifies the original tour. For example, choose two random positions, i.e. position 2 and 7 and swap entries from tour 7,4,0,3,2,1,5,6 and the tour becomes 7,5,0,3,2,1,4,6 In standard Genetic algorithm, the mutation probability is set to be fixed or remains the same from generation to the next generation. Here we employ small 126 values of pm (0.001 until 0.05) as it was commonly used in GA practice as stated by Davis (1991), Fogarty (1989) and Hesser and Manner in Laoufi et al. (2006). 5.2.7 Stopping criterion Stopping the genetic algorithm process can be done in several ways, depending on the problem. The most obvious way is simply to stop after a pre-specified number of generations. But perhaps it would be better to stop when there is a little change between generations, indicating that the genetic algorithm process has reached a convergence (Tong et al., 2004). In our implementation, the GA procedure is repeated until there were non improving moves of the best solution for 500 successive generations. The structure of Genetic Algorithm is depicted in Figure 5.2 where the mutation operator is fixed during generations. 127 Figure 5.2 : Structure of genetic algorithm and adaptive genetic algorithm 128 5.3 The Development of Adaptive Genetic Algorithm In majority of GA implementation, the operator settings are remaining static during the GA run. However, some existing works found were showed that varying GA settings during the GA application can lead to improvement of GA performance. Herrera and Lozano (1996) have reviewed many aspects of the adaptation of GA parameters settings such as mutation probability (pm), crossover probability (pc) and population size (N). The awareness of the importance of mutation is growing within the evolutionary algorithm community and interest is increasing in a closer consideration of its features (De Falco et al., 2002). Mutation operator may be considered to be an important element in GA for solving the premature convergence problem, since it serves to create random diversity in the population. If the lack of population diversity takes place too early, a premature stagnation of the search is caused. Under these circumstances, the search is likely to be trapped in a local optimum before the global optimum is found. Most approaches adapt pm along with other GA parameters (see Lee and Takagi (1993), Srinivas and Patnaik (1994), Sugisaka and Fan (2001), Mei-yi et al. (2004), Xing et al. (2007), Law and Szeto (2007)) and so, the specific effects of the adaptation of pm alone were not studied. Lee and Takagi (1993) present experimental study which was aimed at isolating the effects of the adaptation by Fuzzy Logic Controllers of PopSize, pc and pm. It showed that the adaptation of pm contributes most to high performance. A time-dependency of pm was first suggested by Holland (1992) although he did not give a detailed choice of the parameter for the time-dependent reduction of pm. Later, the variation of pm was proposed by decreasing it exponentially during the GA run by Fogarty (1989). The idea of sustaining genetic diversity through mutation is then developed by measuring the Hamming distance between the two parents during reproduction. One of it was done by Herrera and Lozano (1996) using the adaptive control of pm by Fuzzy Logic Controllers. Thierens (2002) propose the constant gain and the declining adaptive pm for binary genotypes. The constant gain 129 method obtains feedback of the search process by testing the results of increased and decreased pm, and adapts the pm with a constant multiplicative gain. Liu and Feng (2004) present a modified GA based on tuning of pm by the value of individual fitness. The modified GA implements mutation first, after that crossover. Skinner et al. (2004) presents a performance study of a parallel, coarse-grained, multiple deme GA with adaptive mutation where the adaptive pm is a function of maximum number of generations in a single epoch T, the problem dimensionality n, the gene bit length l and generation step t. In the following section, we compare the performance of several schemes of adaptive mutation probability. 5.3.1 Mutation probability is random numbers in the range of [pmmin, pmmax]. Mutation probability is dynamically changed in the range of [0.001, 0.05] from generation to other generation. 5.3.2 Adaptive mutation probability based on PDM Lee and Takagi (1993) proposed two Phenotypic Diversity Measure (PDM) performance measures: PDM 1 f best f and PDM 2 f f worst PDM1 and PDM2 belong to the interval [0,1]. If they are near to 1, convergence has been reached, whereas if they are near to 0, the population shows a high level of diversity. 130 5.3.3 Adaptive mutation probability based on Euclidean Distance Herrera and Lozano (1996) propose genotypic diversity measure (GDM) based on Euclidean distances of the chromosomes in the population from the best one. The GDM is denoted by ED. d d min d max d min ED N where d 1 N ¦ d (C best , C i ) , d max max{d (C best , C i ) , d min min{d (C best , C i ) , Ci is 1 chromosome in population. Euclidean distance between object x and y is defined as n th 2 ¦ ( xi yi ) , where xi is the value of x at its i element and yi is the 1 d ( x, y ) value of y at its ith element, i = 1, …, n. The range of ED is [0,1]. If ED is low, most chromosomes in the population are concentrated around the best chromosome and so convergence is achieved. In Section 5.3.1 and Section 5.3.2, Lee and Takagi (1993) and Herrera and Lozano (1996) respectively proposed the use of Fuzzy Logic Controller to dynamically control the mutation probability. In this study we prefer the use of simple linear formula of pm = PDM1 or pm = PDM2 and pm = 1-ED. We use these formula since the value of PDM1, PDM2, and ED are in the range of [0,1] as the mutation probability. The nearer to the convergence is shown by higher PDM1, higher PDM2 (nearer to 1) and lower ED (nearer to 0). Higher PDM1, PDM2 and ED require higher pm. But since we attempt to compare performance of algorithms, we have considered that these techniques should handle the same range of possible pm values in the range of [0.001, 0.1]. So, a transformation was made from the interval considered by these techniques into [0.001, 0.1]. Beside the above measures, we also propose the new adaptive mutation probability as follows. 131 5.3.4 Adaptive mutation probability based on Lr Distance We propose another diversity measure based on Lr distance (LD) that was usually used to measure dissimilarity between two objects. We adopt the formula proposed by Herrera and Lozano (1996). We substitute the ED with LD where Lr distance between two objects is d ( x, y ) 5.4 xi y i , thus pm = 1-LD. The Development of Hybrid GA and TS The proposed hybrid algorithm of GA and TS (HGATS) consists of several properties such as the order or permutation representation; small population in which all individuals are distinct; inclusion of good simple heuristic solutions in the initial population; Roulette Wheel Selection with elitism; Order Crossover and the incorporation of Tabu Search to the GA. It is hope that this hybrid could combine the advantage of GA as population-based method and the strength of TS as trajectory method. As known, population-based methods are better in identifying promising areas in the search space, whereas trajectory methods are better in exploring promising areas in search space. We propose two schemes for the HGATS. The first is TS used as a powerful mutation operator in GA, called HGATS type A. Different to the standard GA where mutation is applied with probability of pm; in this HGATS, the Tabu Search is applied for each offspring. This approach may be viewed as multistart Tabu Search, with starting points obtained from the search space obtained from GA. The second scheme is TS used as an improvement of the offspring after mutation is applied; we called it HGATS type B. This approach can be regarded as multistart Tabu Search where the starting points are obtained through a sampling of the search space of GA. The illustration of development of metaheuristic for VRPSD based on HGATS is described in Figure 5.3. 132 INITIAL POPULATION Nearest Neighbour Mutation of NN SELECTION Random Mutation of FI Mutation of NN Mutation of FI Farthest Insertion TS TS RECOMBINATION . . . . . . SELECTION . . . Best individuals of parents and offspring TS Parent Offspring . . . New population MUTATION (i). HGATS type A Parent INITIAL POPULATION Nearest Neighbour . . . Mutation of NN Mutation of FI Mutation of FI Mutation of NN SELECTION Farthest Insertion . Mutation of FI RECOMBINATION MUTATIO N Parent MUTATIO N . . . . . . MUTATIO N . . + Offspring IMPROVE WITH TABU SEARCH SELECTION Best individuals of parents and offspring . . . . New population Offspring (ii). .HGATS type B Figure 5.3 : Illustration of Hybrid GA – TS schemes 133 5.5 The Development of Breeder Genetic Algorithm According to Muhlenbein (1994), there exist at least three kinds of theories in science: - theories which are able to predict the outcome of experiments - theories which conceptually describe experimentally observed phenomenon - theories of a “third kind” which do not have any predictive capabilities The popular theory of Genetic Algorithm is of the third kind while the theory of Breeder Genetic Algorithm (BGA) is of the first kind. It models artificial selection as performed by human breeders. The science of breeding is based on advanced statistical methods. In fact, quantitative genetics was the driving force behind modern statistics. The development started with Galton and Pearson in Muhlenbein (1994), who invented the scatter diagram, regression and correlation in order to understand the heritability of the height of sons in families living in England. The need to recast the macroscopic Darwinian theory, as formalized by Pearson in the microscopic Mendelian chance model, leads to the concept of decomposition of variance and covariance. This theory was initiated by Fisher. This subsection proposes the BGA for solving VRPSD, according to our knowledge, this is the first time BGA has applied for solving VRPSD. The BGA is inspired by the science of breeding animals. In this algorithm, each one of a set of virtual breeder has the task to improve its own subpopulation. Occasionally the breeder imports individuals from neighboring subpopulations. According to Muhlenbein and Schlierkamp-Voosen (1993a), the BGA is a robust global optimization method where selection, recombination and mutation are well tuned and have a synergetic effect. Now we define the ingredients of the BGA. First, a genetic encoding of the VRPSD, initialization and evaluation of fitness function are made. Then improvement by OrOpt local search, crossover and mutation are presented. The proposed BGA for VRPSD is presented as follows. 134 Step 0. [Define] Define operator settings of GA suitable with the problem which is VRPSD. Step 1. [Initialization] PopSize Create chromosomes an that initial population consists of P of constructive heuristics solutions and randomly mutation of it where all individuals are distinct or clones are forbidden. Step 2. [Fitness] Evaluate the f(Ci) fitness chromosome Ci in the population. of each The fitness is the function of VRPSD objective function. Step 3. [Improvement] Apply improvement method by using OrOpt local search for each individual Step 4. [Selection] Select T % best individual in population to be parents for mating, set this set as S(t), in this study T is in the range of 35 – 50%. Step 5. [Crossover] Pair all the chromosomes in S(t) at random Apply OX crossover with probability pc forming pairs. to each number t pair pc and then produce offspring offspring, is the if exact random copy of parents. Step 6. [Mutation] With a mutation probability pm mutate the offspring using swap mutation. Step 7. [New Population] Insert offspring to the population. Form new population P(t+1) Step 8. [Stopping Criterion] If the stopping criterion is met then stop, and return to the best solution in current population, else go to Step 9. The BGA procedure is repeated until there were non improving moves of the best solution for 500 successive generations. Step 9. [Acceptance Criterion] Check whether new population is better than acceptance criterion, if yes, go to Step 3, if no then go to Step 4. In general, the properties of BGA are similar to the standard GA as described in Section 5.2 except that there were some additional features to the standard GA: the addition of Step 3, 4 and 9. Or-opt local search in Step 3 was described in Section 4.3. The detail of Step 4 and 9 are presented as follows. 135 Step 4: Selection Let M(t) denote the mean fitness of the population at time t. The change in fitness caused by the selection is given by R(t ) M (t ) M (t 1) and is called response to selection. R(t) measures the expected progress of the population. Breeder measure the selection with the selected differential, which is symbolized by S(t). It is defined by the difference between the mean fitness of the selected individuals, Ms(t) and the population mean: S (t ) M s (t ) M (t ) These two definitions are very important. They quantify the most important variables. In the process of artificial breeding, both R(t) and S(t), can be easily computed. The breeder tries to predict R(t) from S(t). Breeder often uses truncation selection. In truncation selection with threshold T, the T % best individuals will be selected as parents. T is normally chosen in the range 10% to 50% (Muhlenbein and Schlierkamp-Voosen, 1993b). Step 9: Acceptance Criterion The connection between R(t) and S(t) is given by the equation R(t ) bt .S (t ) In quantitative genetics bt is called the realized heritability. It is normally assumed that bt is constant for a number of generations. This leads to R(t ) b.S (t ) 136 In general, the progress due to a genetic search as long as the ratio R(t)/S(t) is greater than 0.1 (Crisan and Muhlenbein, 1998). The structure of Breeder Genetic Algorithm is depicted in Figure 5.4. START Generate Initial Population Pop(0) Set iteration t = 1 Apply OrOpt for each individual, set as Pop(t) Calculate mean fitness of population Pop(t), M(t) TRUNCATE POPULATION Select 35% to 50% best individuals of population as parent for mating Calculate mean fitness of selected population TruncPop(t), Ms(t) Calculate R(t) = M(t) - M(t-1) Calculate S(t) = Ms(t) - M(t) Crossover the TruncPop(t) t = t+1 t = t+1 Mutation No Yes R (t ) ! 0.1 ? S (t ) Insert new offspring to the unselected 50% - 65% of population. Form new population Pop(t+1) No Stopping criteria met? Yes Choose the best individual END Figure 5.4 : Structure of Breeder Genetic Algorithm 137 5.6 Results and Discussion Genetic Algorithm – based metaheuristics described in previous section were tested on a set of instances following data generation procedure in Chapter 3. There is an extra consideration when testing on randomized procedures like genetic algorithms. Even for a single instance and a single algorithm implementation, successive trials can produce quite different outcomes because of the impact of random choices along the way. Several runs will usually need to be made, to get a sense of the robustness of the procedure. In this chapter, twenty instances were generated on each of the number of nodes 10, 20 and 50. Each algorithm was tested on each instance for 100 generations and 10 runs. The value to be observed was the average value of 10 runs. In Section 5.6.1, a preliminary study on the effect of the population size to the performance of GA was presented, while in Section 5.6.2, the relative performance of Adaptive GA and standard GA was evaluated and compared. A comparative study between the performances of two types of HGATS and between each type of HGATS with both TS and GA alone were reported in Section 5.6.2. Section 5.6.3 demonstrated the advantage of Breeder GA whereas Section 5.6.4 attempted to study the comparison between Tabu Search and Genetic Algorithm – based metaheuristics described in this study. 5.6.1 Preliminary Study on the Choice of Population Size In this study, a preliminary study on the effect of population size to the performance of Genetic Algorithm on VRPSD was presented; the results were given in Table 5.3. The preliminary study objective was to determine which population size that can give relatively good performance of Genetic Algorithm. All the parameter setting of the Genetic Algorithm is fixed including the mutation probability, crossover probability and stopping criterion, except for the population size. The GA was implemented in fifteen (15) instances and five (5) independent runs for each instance, thus each cell contains the average value over the runs. The 138 problem instances consist of four problem sizes that were 10 nodes, 30 nodes and 50 nodes. Table 5.3 : The performances of GA for different population sizes Instance Number Population size of nodes 10 30 50 100 10_1 10 355.4 [17] 343 [54] 343 [91] 343 [189] 10_2 10 344.4 [21] 340 [56] 340.5 [100] 340 [247] 10_3 10 249.3 [17] 248 [52] 248 [87] 248 [188] 10_4 10 265.3 [17] 263 [53] 263 [89] 262 [226] 10_5 10 262 [17] 261 [50] 261 [88] 261 [198] 20_1 20 411.2 [85] 403.7 [218] 398.2 [355] 400.3 [725] 20_2 20 447 [60] 447 [186] 447 [310] 447 [618] 20_3 20 453.2 [88] 445 [260] 447.2 [392] 445 [742.5] 20_4 20 403.6 [81] 400.6 [248] 399.8 [329] 404.6 [639] 20_5 20 376 [57] 376 [176] 373 [322] 376 [738] 50_1 50 608.6 [471] 602.4 [1497] 604.8 [2497] 603.3 [4721] 50_2 50 625 [619] 611.8 [1528] 607.4 [2539] 599 [5154] 50_3 50 633 [351] 629 [1433] 629.5 [2011] 633 [3700] 50_4 50 675.7 [480] 657 [1882] 654 [3215] 659 [3800] 50_5 50 655 [573] 639 [1542] 639 [2346] 639 [4831] 443.69 444.01 Average 450.98 444.43 * the computation times are given in brackets (in seconds) To verify whether the differences between solutions found by different population sizes are statistically significant or not, we performed paired samples test for each pair of algorithms compared, i.e. between solutions found using population size of 10 and 30, between solutions found using population size of 10 and 50, etc. The paired-samples t-test procedure compares the means of two variables for a single group. It computes the differences between values of the two variables for each case and tests whether the average differs from 0. Before the paired t-test was conducted, the test of normal distribution assumption of the difference between two variables must be conducted. The results of Kolmogorov-Smirnov test for normal distribution test were given in Table 5.4. We reported the p-value for the null hypothesis “The data follow normal distribution” where the significance level which the null hypothesis rejected is 0.05. The p-value that smaller than 0.05 is sufficient to reject the null hypothesis. 139 Table 5.4 : Kolmogorov-Smirnov normality test results for differences of GA solution qualities for different population sizes One-Sample Kolmogorov-Smirnov Test N Normal Parameters a,b Most Extreme Differences Mean Std. Deviation Absolute Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) diff_10_30 15 6.5500 6.01365 .173 .173 -.138 .670 .760 diff_10_50 15 7.2900 6.93717 .287 .287 -.147 1.113 .168 diff_10_100 15 6.9700 7.95384 .183 .183 -.158 .709 .696 diff_30_50 15 .7400 2.25414 .295 .295 -.158 1.144 .146 diff_30_100 15 .4200 3.87818 .343 .343 -.190 1.329 .058 diff_50_100 15 -.3200 3.28486 .205 .156 -.205 .796 .551 a. Test distribution is Normal. b. Calculated from data. Since the p-values of normality test for all the differences were larger than = 0.05, thus we have no evidence to reject the null hypothesis. We can conclude that the difference values follow normal distribution and the paired t-test can be used for this data set. The results of paired t-test were presented in Table 5.5. Since the p-value of difference between the use of population size of 10 and 30, 10 and 50, 10 and 100 are less than = 0.05, the null hypothesis was rejected and it can be concluded that the solution qualities generated by using population size of 10 is different with the use of other population sizes. While the use of population size of 30, 50 and 100 did not give significant differences on the GA performance (solution qualities) since the p-values were larger than = 0.05. The preliminary study on the effect of different population size to the GA performance discussed in this sub section suggest that the use of population size 30 is sufficient to number of nodes up to 50, since there were no statistically significant differences between the solution qualities resulted from the use of population size of 30 with population size of 50 and 100 but the use of population size of 30 give much less computation time than the use of population size of 50 and 100. This result also supported by literature reviews on research on population size used in GA for VRP in Table 5.2 at Section 5.2.2 that Baker and Ayechew (2003) used population size of 30 for 50-node problems, while Prins (2004) stated that population size < 25 or > 50 will give moderate degradation of the average solution and found that population size equal to 30 performs best. 140 Table 5.5 : Paired Samples Test Results of the Differences Paired Samples Test Paired Differences Pair 1 Pair 2 Pair 3 Pair 4 Pair 5 Pair 6 5.6.2 10-30 10-50 10-100 30-50 30-100 50-100 Mean 6.5500 7.2900 6.9700 .7400 .4200 -.3200 Std. Deviation 6.0136 6.9371 7.9538 2.2541 3.8781 3.2848 Std. Error Mean 1.5527 1.7911 2.0536 .5820 1.0013 .8481 95% Confidence Interval of the Difference Lower Upper 3.2197 9.8802 3.4483 11.1316 2.5653 11.3746 -.5083 1.9883 -1.7276 2.5676 -2.1390 1.4990 t 4.218 4.070 3.394 1.271 .419 -.377 df 14 14 14 14 14 14 Sig. (2-tailed) .001 .001 .004 .224 .681 .712 Adaptive GA versus Standard GA In this section, the performances of fixed and adaptive mutation probability were compared. Table 5.6 presented the solution quality obtained for number of nodes 10, 20 and 50, based on performance: average of the best fitness function (best total expected cost) found at the end of each independent run. For each combination of number of nodes and type of mutation probability, five instances were generated. Each cell is the average value of 10 independent runs. The minimum total expected cost under fixed setting is in bold and italic, while the best performance measure (the minimum total expected cost) under all mutation probability types (both for fixed and adaptive setting) is in asterisk. Regarding to the GA versions under fixed pm values, the best performance measures for each problem set are obtained by different pm values. Considering the performance between fixed versus adaptive mutation probability, it is found that the adaptive algorithms leads in better solution quality rather than fixed parameter, since for each problem set, it returns results that better than all fixed pm values, or the same as the ones of the most successful GAs with fixed pm settings. The adaptive scheme plays a role in improving solution quality and possibly directing search to unknown regions to avoid being trapped in local optimum. By using the adaptive GA, the amount of time to spend in finding appropriate mutation probability values of GA can be reduced. 141 Table 5.6 : The performance of fixed parameter versus adaptive GA Number of nodes 10 20 50 Types and values of mutation probability Instance 1 Instance 2 Instance 3 Instance 4 Instance 5 Fixed pm = 0.001 346.6 342.0 248.0 263.0 300 Fixed pm = 0.005 347.4 341.6 248.0 263.0 300 Fixed pm = 0.01 346.0 342.0 248.0 263.0 300 Fixed pm = 0.05 344.4 342.6 248.8 264.2 300 Fixed pm = 0.1 346.6 341.8 248.0 264.2 300 RANGE (0.001;0.1) 344.4 341.8 249.0 263.2 300 ED 345.2 342.0 248.0 263.2 300 LD 343.0* 342.0 248.0 263.6 300 PDM1 343.8 341.2* 248.0 261.8* 300 PDM2 345.0 341.8 248.0 263.6 300 Fixed pm = 0.001 404.8 447 454.0 376.0 406.6 Fixed pm = 0.005 408.6 447 455.0 375.0 404.0 Fixed pm = 0.01 407.6 447 452.4 376.0 404.6 Fixed pm = 0.05 408.8 447 460.2 376.0 403.8 Fixed pm = 0.1 410.4 447 453.0 374.6 405.4 RANGE (0.001;0.1) 410.0 447 454.0 376.0 404.0 PDM1 404.8 447 454.4 373.8* 409.0 PDM2 412.2 447 454.6 375.0 406.2 ED 412.8 447 457.2 376.0 404.6 LD 404.0* 447 451.0* 374.8 399.0* Fixed pm = 0.001 633.0 592.6 610.2 631.2 722.8 Fixed pm = 0.005 632.8 593.0 608.6 631.0 719.6 Fixed pm = 0.01 632.6 590.2 608.4 621.6 721.8 Fixed pm = 0.05 633.0 591.6 607.6 621.0 724.0 Fixed pm = 0.1 633.0 593.0 610.2 628.0 721.0 RANGE (0.001;0.1) 632.8 591.6 608.4 625.2 717.0* PDM1 632.8 591.2 608.0 624.4 721.0 PDM2 632.4* 591.6 608.8 624.6 722.0 ED 632.6 592.8 608.8 625.4 719.0 LD 633.0 589.2* 607.2* 619.0* 717.4 * denotes best total expected cost for all mutation probability settings 142 From the results in Table 5.6 it was shown that different AGAs are better suited to different problem sets. Compared to the other adaptive schemes, the proposed LD showed superiority since the proposed LD measure was proven to yield best performance measure in almost all instances, while if we compare it to fixed pm, the lowest values of VRPSD objective function from LD were still lower than almost overall that can be resulted from fixed pm setting, or the same with fixed pm results. The next best adaptive mutation probability is PDM1. 5.6.3 Hybrid GA and TS (HGATS) versus GA and TS In this section, comparative study between the performances of two types of HGATS and between each type of HGATS with both TS and GA alone were conducted. Twenty instances were generated on each of the number of nodes 10, 20 and 50. Each algorithm was tested on each instance for 100 iterations. Figure 5.5 shows the graphical summary by means of a box and whisker plot to describe the distribution of solutions obtained by GA, TS and two types of HGATS for number of nodes 10. The solutions were grouped by algorithm. As it can be observed from the box and whisker plots, the relative performance of GA was better than TS, similar with HGATS type A and worse than HGATS B. Compared to other algorithms, TS seems to give worst performance since the expected costs from TS were higher than others. Regarding to the Hybrid GA with TS, it is worth noticing that different implementation of TS in GA can produce significant difference. As shown in Figure 5.5, the HGATS type B can obtain better relative performance than HGATS type A. 143 360 340 320 300 280 260 240 GA_10 TS_10 HGATS_10A HGATS_10B Figure 5.5 : Box and whisker plots of solutions obtained from GA, TS and HGATS for 10-node problems To verify whether the differences are statistically significant, the paired test should be used. Firstly, the Kolmogorov-Smirnov was conducted to test the null hypothesis “The data follow normal distribution”. The probability to reject the null hypothesis was set to be 0.05. Table 5.7presented the Kolmogorov-Smirnov normality test results of differences of GA, TS and HGATS for number of nodes 10. Table 5.7: Kolmogorov-Smirnov normality test results of differences of GA, TS and HGATS for 10-node problems One-Sample Kolmogorov-Smirnov Test Number of runs Normal Parameters Mean Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal b. Calculated from data. DIFF_ GA_TS_ 10 DIFF_ GA_ HGATSA _10 20 -2.650 4.308 .331 .212 -.331 1.479 .025 20 -.580 1.811 .426 .183 -.426 1.903 .001 DIFF_ GA_ HGATSB_ 10 20 1.200 2.211 .274 .274 -.244 1.227 .098 DIFF_ TS_ HGATSA _10 DIFF_ TS_ HGATSB _10 DIFF_ HGTSA_ HGATSB _10 20 2.070 2.9829 .406 .406 -.244 1.816 .003 20 3.850 5.6407 .303 .303 -.247 1.353 .051 20 1.780 3.3181 .404 .404 -.296 1.808 .003 144 The p-values for difference between GA and TS, GA and HGATSA, GA and HGATS type B, TS and HGATS type A, TS and HGATS type B, and HGATS type A and B were 0.025, 0.001, 0.098, 0.003, 0.051, and 0.003, respectively. Thus the difference between solution obtained from GA and HGATS type B follows normal distribution, and also the difference between TS and HGATS type B since the pvalues were larger than D = 0.05; while the other differences do not follow normal distribution. For the differences that satisfy normal distribution assumption, the paired t-test can be used, in the contrary when the normal distribution assumption was violated; the Wilcoxon paired-matched signed rank test was used. The summary of paired samples test results were reported in Figure 5.6 whereas the detail of it was given in Appendix B. Paired Samples Statistics Pair 1 Pair 2 GA_10 HGATS_10B TS_10 HGATS_10B N 20 20 20 20 Std. Deviation 34.05735 33.94795 35.55851 33.94795 Paired Differences Std. 95% Confidence Std. Error Interval of the Deviation Mean Difference Mean Pair 1 GA_10 HGATS_10B Pair 2 TS_10 HGATS_10B Mean 302.6000 301.4000 305.2500 301.4000 Lower Upper Std. Error Mean 7.61546 7.59099 7.95113 7.59099 t df Sig. (2-tailed) 1.200 2.21193 .49460 .16479 2.23521 2.426 19 .025 3.850 5.64078 1.26132 1.21003 6.48997 3.052 19 .007 (a). Paired t-test results Test Statisticsc Z Asymp. Sig. (2-tailed) TS_10 HGATS_10A - HGATS_10A - HGATS_10B GA_10 GA_10 TS_10 HGATS_10A -2.448a -.844a -2.375b -2.207b .014 .398 .018 .027 a. Based on negative ranks. b. Based on positive ranks. c. Wilcoxon Signed Ranks Test (b). Wilcoxon signed rank test results Figure 5.6 : Paired test results of GA, TS and HGATS for 10-node problems 145 As shown in Figure 5.6 (a), the mean differences of GA and HGATS type B solution costs and the mean differences of TS and HGATS type B solution costs were statistically significant, since the p-values were less than 0.05 and the 95% confidence interval of the differences were not encompass zero. Furthermore we can notice that the relative performance of HGATS type B was better than GA and TS since the mean value of its differences were positive (in terms of GA – HGATS type B and TS – HGATS type B). From Figure 5.6 (b) we can also notice that the relative performance of GA seems to be not significantly different from HGATS type A, while the relative performance of TS and GA, TS and HGATS type A and HGATS type A and B, were statistically significantly different from one to another. The relative performance of GA is better than TS, not significantly different from HGATS A and worse than HGATS type B. The TS seems to be the worst among the others whereas the HGATS type B seems to give best performance relative to the others. The distribution of solutions obtained from GA, TS and HGATS for number of nodes 20 were given in Figure 5.7. The relative performance of the algorithms was similar across number of nodes 10 and 20 although the differences in number of nodes 20 were more lightly to be seen. As it can be observed from the box and whisker plots, the relative performance of GA was better than TS, similar with HGATS type A and worse than HGATS B. Compared to other algorithms, TS seems to give worst performance. The last is the comparison between two types of HGATS; it was shown that the HGATS type B can obtain better relative performance than HGATS type A. 146 475 450 425 400 375 350 325 GA_20 TS_20 HGATS_20A HGATS_20B Figure 5.7 : Box and whisker plots of solutions obtained from GA, TS and HGATS for 20-node problems The next step is normality test based on Kolmogorov-Smirnov test against the null hypothesis of “The data follows normal distribution” with the probability to reject the null hypothesis is set to be 0.05. The results were reported in Table 5.8. Since all the p-values were larger than 0.05 thus the null hypothesis can not be rejected and it was concluded that the differences satisfied normal distribution assumption in order to conduct the paired t-test. The paired t-test results were presented in Figure 5.8. Table 5.8: Kolmogorov-Smirnov normality test results of differences of GA, TS and HGATS for 20-node problems One-Sample Kolmogorov-Smirnov Test DIFF_GA Number of runs 20 a,b Normal Parameters Most Extreme Differences DIFF_GA_ DIFF_GA_ HGSTSA_20 HGATSB_20 TS _20 20 20 DIFF_ DIFF_TS_ DIFF_TS_ HGATSA_ HGATSA_20 HGATSB_20 HGATSB_20 20 20 20 Mean -5.7200 1.4800 3.8800 7.2000 9.6000 2.4000 Std. Deviation 9.85290 3.96479 4.87416 9.31665 10.32320 4.13458 Absolute .271 .248 .173 .224 .198 Positive .191 .248 .173 .224 .198 .292 Negative -.271 -.134 -.163 -.170 -.152 -.231 1.212 1.110 .773 1.001 .884 1.307 .106 .170 .588 .268 .416 .066 Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. .292 147 From Figure 5.8 we can see that the only difference that was not statistically significant was the difference between GA and HGATS type A (shown by the p-value = 0.111 that was larger than D = 0.05, thus we can not reject H0 that there was no difference between the performance of GA and HGATS type A), while the other pairs result significant differences since the p-values were less than D = 0.05. This condition also occurred in number of nodes 10. It seems that the inclusion of TS as mutation operator in GA does not give significant impact to the performance of GA for small and moderate number of nodes (number of nodes 10 and 20). It is worth noticing that the relative performance of the algorithms is similar across number of nodes 10 and 20. From associated figure we can draw the same conclusion for number of nodes 20 as in number of nodes 10, that the relative performance of GA was better than TS, similar to HGATS type A, and worse than HGATS type B. TS seems to give worst performance among others whereas the HGATS type B seems to obtain the best performance relative to the others since the mean value of difference between HGATS type B with other algorithms were always positive. Mean GA_20 TS_20 GA_20 HGATS_20A GA_20 HGATS_20B TS_20 HGATS_20A TS_20 HGATS_20B HGATS_20A HGATS_20B Paired Differences 95% Confidence Interval of the Std. Difference Error Std. Deviation Mean Lower Upper t df Sig. (2tailed) -5.72 9.85290 2.20317 -10.33130 -1.10870 -2.596 19 .018 1.48 3.96479 .88655 -.37558 3.33558 1.669 19 .111 3.88 4.87416 1.08990 1.59882 6.16118 3.560 19 .002 7.20 9.31665 2.08327 2.83967 3.456 19 .003 9.60 10.32320 2.30834 4.76859 4.159 19 .001 2.40 4.13458 .92452 .46496 2.596 19 .018 11.5603 3 14.4314 1 4.33504 Figure 5.8 : Paired samples test results of GA, TS and HGATS for 20-node problems 148 Finally we compared the performance of GA, TS and HGATS for large number of nodes that is 50. Figure 5.9 shows the graphical summary by means of a box and whisker plot to describe the distribution of solutions obtained by GA, TS and HGATS. The solutions were grouped by algorithm. As it can be observed from the box and whisker plots, the HGATS type B seems to give best relative performance since the mean value of solution given by HGATS type B was smallest compared to other metaheuristics. The HGATS type A was the second best, followed by TS, while GA gave the worst solution quality since it obtained the highest total expected cost. It can be seen that for 50-node problems, inner outliers (denote by circles) were present in the box and whisker for solution cost values of GA, TS and HGATS-A for problem instance 12, but not present at solution cost values of HGATS-B. Outlier refers to an observation that is numerically distant from the rest of the data, where inner outlier is an observation which over 1.5 box lengths from upper/lower quartiles. This phenomenon indicated the power of HGATS-B which gave much lower cost than GA, TS and HGATS-A for the same problem instance, i.e. problem instance 12. 720 12 12 12 690 660 630 600 570 540 GA 50 TS 50 HGATS 50A HGATS 50B Figure 5.9 : Box and whisker plots of solutions obtained from GA, TS and HGATS for 50-node problems 149 The following step is normality test based on Kolmogorov-Smirnov test against the null hypothesis of “The data follow normal distribution” with the probability to reject the null hypothesis is set to be 0.05. The results were reported in Table 5.9 Since all the p-values were larger than 0.05 thus we can not reject the null hypothesis and we conclude that the differences satisfied normal distribution assumption to conduct the paired t-test. The paired t-test results were presented in Figure 5.10. Table 5.9: Kolmogorov-Smirnov normality test results of differences of GA, TS and HGATS for 50-node problems One-Sample Kolmogorov-Smirnov Test DIFF_ HGATSA_ HGSTSA_50 HGATSB_50 HGATSA_50 HGATSB_50 HGATSB_50 DIFF_GA_TS DIFF_GA_ 50 N 20 a,b Normal Parameters Mean Std. Deviation 6.6200 20 9.1450 DIFF_GA_ 20 25.5700 DIFF_TS_ 20 2.5250 DIFF_TS_ 20 18.9500 20 16.4250 8.1377 8.8924 16.1688 7.8312 13.7935 13.9776 Absolute .171 .145 .110 .225 .143 .127 Positive .171 .145 .110 .225 .143 .127 Negative -.145 -.126 -.081 -.132 -.120 -.106 Kolmogorov-Smirnov Z .763 .650 .494 1.008 .639 .568 Asymp. Sig. (2-tailed) .606 .792 .968 .262 .809 .903 Most Extreme Differences a. Test distribution is Normal. b. Calculated from data. From Figure 5.10 we can see that the only difference that was not statistically significant was the difference between TS and HGATS type A, while the other pairs result significant differences. From associated figure we can draw conclusion for that the relative performance of TS is better than GA, similar to the HGATS type A, and worse than HGATS type B. The relative performance of HGATS type A is better than GA. GA seems to give worst performance among others whereas the HGATS type B seems to obtain the best performance relative to the others since the mean value of difference between HGATS type B with other algorithms were always positive. 150 Paired Samples Statistics Pair 1 Pair 2 Pair 3 Pair 4 Pair 5 Pair 6 GA_50 TS_50 GA_50 HGATS_50A GA_50 HGATS_50B TS_50 HGATS_50A TS_50 HGATS_50B HGATS_50A HGATS_50B Mean 620.6700 614.0500 620.6700 611.5250 620.6700 595.1000 614.0500 611.5250 614.0500 595.1000 611.5250 595.1000 N 20 20 20 20 20 20 20 20 20 20 20 20 Std. Deviation 35.12470 34.88398 35.12470 33.92502 35.12470 28.91530 34.88398 33.92502 34.88398 28.91530 33.92502 28.91530 Std. Error Mean 7.85412 7.80030 7.85412 7.58587 7.85412 6.46566 7.80030 7.58587 7.80030 6.46566 7.58587 6.46566 Paired Differences Mean GA_50 TS_50 GA_50 HGATS_50A GA_50 HGATS_50B TS_50 HGATS_50A TS_50 HGATS_50B HGATS_50A HGATS_50B Std. Deviation Std. Error Mean 95% Confidence Interval of the Difference df Lower Upper t Sig. (2tailed) 6.620 8.13774 1.81965 2.81142 10.42858 3.638 19 .002 9.145 8.89248 1.98842 4.98319 13.30681 4.599 19 .000 25.570 16.16888 3.61547 18.00273 33.13727 7.072 19 .000 2.525 7.83124 1.75112 -1.14013 6.19013 1.442 19 .166 18.950 13.79350 3.08432 12.49445 25.40555 6.144 19 .000 16.420 13.97768 3.12551 9.88324 22.96676 5.255 19 .000 Figure 5.10 : Paired samples test results of GA, TS and HGATS for 50-node problems 5.6.4 Breeder GA versus Standard GA The algorithms compared here are the Breeder GA (BGA) and the standard GA. Twenty instances were generated on each of the number of nodes 10, 20 and 50. Each algorithm was tested on each instance for 100 iterations. Figure 2 shows the results of solution quality based on total expected cost obtained by the GA and the BGA for each number of nodes. As it can be observed from the box and whisker plots, it is worth noticing that the relative performance of the algorithms is similar across different number of nodes: the solution quality produced by the BGA clearly 151 outperforms the results of standard GA since the BGA can yields lower total expected cost for every number of nodes. 800 12 700 600 500 400 300 200 GA_10 BGA_10 GA_20 BGA_20 GA_50 BGA_50 Figure 5.11: Box and whisker plots of solutions obtained from GA and BGA To verify that the differences between solutions found by the two algorithms are statistically significant, we performed paired samples test between GA and BGA results for every number of nodes. The paired-samples t-test procedure compares the means of two variables for a single group. It computes the differences between values of the two variables for each case and tests whether the average differs from 0. Before the paired t-test was conducted, the test of normal distribution assumption of the difference between two variables must be conducted. The results of Kolmogorov-Smirnov test for normal distribution test were given in Table 5.10 We reported the p-value for the null hypothesis “The data follow normal distribution” where the significance level which the null hypothesis rejected is 0.95. The p-value 152 that smaller than 0.05 is sufficient to reject the null hypothesis. In the table associated, the p-values for number of nodes 10, 20 and 50 are 0.066, 0.363 and 0.832, respectively. Thus we can conclude that the difference values of GA and BGA for all number of nodes follow normal distribution and the paired t-test can be conducted for these data. Table 5.10 Normality test results of the differences between GA and BGA One-Sample Kolmogorov-Smirnov Test N Normal Parameters a,b Most Extreme Differences Mean Std. Deviation Absolute Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) DIFF_BGA_ GA_10 20 -1.0500 2.09649 .292 .208 -.292 1.305 .066 DIFF_BGA_ GA_20 20 -2.7300 4.66579 .206 .116 -.206 .922 .363 DIFF_BGA_ GA_50 20 -22.6700 16.44823 .139 .109 -.139 .623 .832 a. Test distribution is Normal. b. Calculated from data. The p-value of paired difference test were presented in Figure 5.12, the values were 0.037, 0.017 and 0.000 for number of nodes 10, 20 and 50, respectively. These results show that the two algorithms tend to yield different result. There were statistically significant differences between the performance of GA and BGA in term of solution quality for solving VRPSD. The extent of this difference was shown well by the confidence interval of the difference which not encompasses zero. From the mean values of the differences on Figure 5.12, it also can be shown that on average, the BGA produced less total expected cost than GA since the mean value of the differences between BGA and GA (i.e. BGA - GA) were always negative. In the other words, the mean values of total expected cost resulted from BGA were less than the cost obtained from GA. 153 Paired Samples Statistics Pair 1 Pair 2 Pair 3 BGA_10 GA_10 BGA_20 GA_20 BGA_50 GA_50 Mean 301.5500 302.6000 392.5500 395.2800 598.0000 620.6700 N 20 20 20 20 20 20 Std. Deviation 34.07341 34.05735 37.97572 38.62704 28.98094 35.12470 Std. Error Mean 7.61905 7.61546 8.49163 8.63727 6.48033 7.85412 Paired Samples Correlations N Pair 1 Pair 2 Pair 3 BGA_10 & GA_10 BGA_20 & GA_20 BGA_50 & GA_50 20 20 20 Correlation .998 .993 .886 Sig. .000 .000 .000 Paired Samples Test Paired Differences Pair 1 Pair 2 Pair 3 Mean BGA_10 - GA_10 -1.05000 BGA_20 - GA_20 -2.73000 BGA_50 - GA_50 -22.67000 Std. Deviation 2.09649 4.66579 16.44823 Std. Error Mean .46879 1.04330 3.67794 95% Confidence Interval of the Difference Lower Upper -2.03119 -.06881 -4.91366 -.54634 -30.36801 -14.97199 t -2.240 -2.617 -6.164 df 19 19 19 Sig. (2-tailed) .037 .017 .000 Figure 5.12 : Paired-differences test results between GA and BGA performance 5.6.5 Comparative Study between Tabu Search and Genetic Algorithm – based Metaheuristics In Sections 5.6.1, 5.6.2 and 5.6.3 we gave comparative studies between the performance of standard GA with each of the proposed AGA, HGATS and BGA. In this section we presented the comparative study between all metaheuristic algorithms described in this study. Furthermore, comparison was made with previous work considering single VRPSD under restocking action. From our review, previous work on metaheuristics for solving single VRPSD under restocking action was done only by Bianchi et al. (2004). Thus in this study, the relative performance of Genetic Algorithm-based metaheuristics were compared to the GA’s work of Bianchi et al. (2004). Descriptive statistics for solutions expected cost of various metaheuristics implemented in this study were reported in Table 5.11. 154 Table 5.11 : Descriptive statistics for the solutions of metaheuristics implemented ALGORITHM Number of nodes Number of Problem Instance Range Minimum Maximum Mean Std. Deviation BGA_10 109.00 242.00 351.00 301.5500 34.07341 GA_10 109.00 242.00 351.00 302.6000 34.05735 BIANCHI_10 109.00 242.00 351.00 302.0700 34.69927 TS_10 10 20 115.00 242.00 357.00 305.2500 35.55851 RTS_10 109.00 242.00 351.00 302.3500 35.04174 HGATS_10A 109.00 242.00 351.00 303.1800 34.98414 HGATS_10B 109.00 242.00 351.00 301.4000 33.94795 BGA_20 GA_20 129.00 133.20 327.00 327.00 456.00 460.20 392.5500 395.2800 37.97572 38.62704 BIANCHI_20 131.20 327.00 458.20 394.0300 37.92726 TS_20 140.00 327.00 467.00 401.0000 39.03035 RTS_20 129.00 327.00 456.00 394.1500 37.78788 HGATS_20A 127.00 327.00 454.00 393.8000 38.54130 HGATS_20B 120.00 327.00 447.00 391.4000 37.69741 BGA_50 GA_50 103.00 151.60 554.00 564.60 657.00 716.20 598.0000 620.6700 28.98094 35.12470 110.20 553.80 664.00 602.5000 28.52954 150.00 560.00 710.00 614.0500 34.88398 RTS_50 106.00 548.00 654.00 596.9500 29.49839 HGATS_50A 134.00 560.00 694.00 611.5250 33.92502 HGATS_50B 106.00 548.00 654.00 595.1000 28.91530 20 20 BIANCHI_50 50 TS_50 20 From Table 5.11 the comparative study showed that based on solution quality, HGATS type B relatively perform the best among others for all number of nodess, since the mean values of solutions obtained from HGATS were the smallest among others for all the number of nodes. On the other hand, TS showed weakness in number of nodes 10 and 20 since the mean values of solutions obtained from TS were the largest compared to other metaheuristics. GA also performed worst in large number of nodes (N = 50) since it obtained highest total expected cost. Firstly, the performance of the metaheuristics in number of nodes 10 was evaluated. As mentioned before, HGATS type B produced lowest mean value of cost, followed by Breeder GA, Bianchi, RTS, GA, HGATS type A and TS which obtain the largest total expected cost. Secondly in larger number of nodes that was 20, the performance of algorithms based on the total expected cost can be ranked from the best to the worst as HGATS type B, Breeder GA, HGATS type A, Bianchi, RTS, GA and TS. Finally for number of nodes 50, the HGATS type B still performed best, 155 followed by RTS, BGA, Bianchi, HGATS type A, TS and GA. To verify whether the differences of solution quality obtained from the metaheuristics are statistically different, further the paired samples test is used. Before the paired samples tests were conducted, the assumption of normality test of each pair differences must be conducted. The results of Kolmogorov-Smirnov normality test were given in Appendix A. Table 5.12 gives the summary of paired test of metaheuristics solutions to test whether the differences of solution quality between two groups are statistically different. The detail of the paired test results were given in Appendix B. From Table 5.11, Table 5.12 and Appendix B it can be concluded that the relative performance of GA is better than TS for number of nodes 10 and 20. The relative performance of GA, HGATS type A, RTS, and Bianchi are similar for number of nodes 10 and 20, but GA performs worst for large number of nodes (N = 50) compared to TS, HGATS type A, RTS, and Bianchi. Among other metaheuristics, TS seems to perform worst except for N = 50 where TS can perform better than GA and similar to the HGATS type A. RTS is proven to improve the basic TS application; it is showed by the relative performance of RTS that was significantly better than TS. In number of nodes 10 and 20, RTS gives similar relative performance to GA, HGATS type A, and Bianchi but RTS showed better performance for large number of nodes (N = 50), since the mean of total expected cost obtained from RTS was less than GA, HGATS type A and Bianchi. However RTS can not compete with HGATS type B in terms of solution quality. The interesting things are that even the mean values of solutions obtained from RTS are larger than BGA for number of nodes 10 and 20, and at the contrary for number of nodes 50 where the mean value of solutions obtained from RTS are smaller than BGA; the relative performances of RTS are not statistically different from BGA for all number of nodes. The BGA shows superiority over GA, TS, Bianchi and HGATS type A for almost all number of nodess, except for N = 10 where the relative performance of BGA is similar to Bianchi, and N = 20 where relative performance of BGA is similar to HGATS type A although for these N = 10 and N = 20 the mean value of cost obtained from BGA is less than the cost obtained from Bianchi and HGATS type A. Previous algorithm developed that is GA of Bianchi shows similar performance with 156 GA, RTS and HGATS type A in number of nodes 10 and 20. It is worth noticing that standard GA developed in this study (that does not involve local search), is able to compete with GA of Bianchi that involve twice application of Or-opt local search method that are in improving the initial population and offspring. Probably it caused by the management of initial population in our standard GA that have more chromosome number than GA’s Bianchi that is 30 in this study that larger than 10 in GA’s Bianchi, generated from good heuristics and all individuals must be distinct, thus with good heuristics solutions involved in our standard GA, the diversity of initial population is larger than GA of Bianchi but the solution qualities were not worse than GA’s Bianchi. In this study, we develop two types of Hybrid GA and TS and it was found that different implementation of TS in GA can produce significant difference in the performance of algorithms. The inclusion of TS as mutation operator in GA with mutation probability of 1 (HGATS type A) results better performance than TS for 10-node and 20-node problems, but it can not give high improvement to GA in 10-node and 20-node problems since the relative performance of HGATS type A, GA and Bianchi are not significantly different. From Table 5.9, we can see that the larger number of nodes, the larger improvement can be given by HGATS type A to GA. In small number of nodes 10 the mean value of GA solutions cost is smaller than HGATS type A, while in larger number of nodes: 20 and 50, the mean value of HGATS solutions cost is smaller than solutions obtained from GA. Although in general HGATS type A is better than TS and GA for all number of nodes and similar to GA of Bianchi in 10-node problems and 20-node problems, HGATS type A still can not compete the GA’s Bianchi in large number of nodes. 157 Table 5.12 : Summary of paired test of metaheuristics solution quality differences ALGORITHM TS GA N 10 10 z 20 type-A 20 z 10 type-B 20 10 z z z 10 10 20 50 20 50 10 20 50 z z = z z = z = z = = z = = = z z z z = z 50 z z = z = z = = z z 20 z z z 50 10 50 = = z 20 BIANCHI 20 = z = 50 BGA 10 z z = 50 HGATS 50 BGA z = 50 10 20 HGATS - B z = 20 HGATS 10 HGATS - A z 50 10 50 RTS z 20 RTS TS = z = = z (under significance level of 0.05, z refer to the difference of two algorithms performance is statistically different ) On the other side, the implementation of TS as improvement to the offspring after mutation applied; highly affect the performance of the algorithm for solving the problem by giving significant improvement to the solution quality. The HGATS seems to give best performance among metaheuristics used in this study for all number of nodes. Even in the time when RTS, BGA and Bianchi can not go further, the HGATS is still able to find solutions better than or equal to those metaheuristics. The reason behind this is that in our GA and HGATS; we already start from good initial solution and by using roulette wheel selection, where the probability of higher fitness solution to be selected as mating population is larger, the crossover operator can not give high impact to produce offspring better than their parent. Mutation plays important role here by helping to escape from this condition. It can help to z z 158 prevent the population from stagnating in any local optimum by introducing some extra variability into the population in order to the search to go further. The average computation time of the metaheuristics was summarised in Table 5.13. Computation times in this section were based on laptop machine of Intel Centrino CoreTM 2 Duo processor with 2.0 GB of RAM. It can be seen that the weakness of HGATS type B is its longest average computational time among all metaheuristics. RTS was the fastest algorithm although the computation time grows significantly for 50-node problems. Among the metaheuristics, RTS was the best one in combining the advantage of both solution quality and computation time. For 10-node problems, the computation time of TS, GA, BGA and HGATS was not significantly different, but as the number of nodes increases the differences between these algorithms computation times was considerably large. For large number of nodes, GA was the fastest, but as mentioned before, GA has inferior performance in solution quality if compared to other metaheuristics. If the metaheuristics based on GA were compared (including GA, BGA, HGATS-A, and HGATS-B), GA was the fastest, except for 10-node problems. Compared to HGATS-A, the use of GA showed 1.4% and 27% average reduction in computational time with no significant deterioration for problems with 10 and 20 nodes. For 10-node problems, BGA was the fastest and but the computation time grows very significant as the number of nodes increases. If computation is not a big concern, the BGA provide significantly better solution quality than GA. The longest computation time was produced by HGATS type B where the computation time grows dramatically as the number of nodes increases. Even for small number of nodes, HGATS-B gives much longer computation time compared to other metaheuristics. But, the fact that HGATS type B provide the best quality solution is a promising result for research in VRPSD. Table 5.13 : Average computation time of the metaheuristics (secs) Number of nodes ALGORITHM 10 20 50 TS 32.4 577.2 24,354.3 RTS 27.4 205.6 3,039.5 GA 53.7 247.2 1,635.9 BGA 48.6 373.3 25,945.7 HGATS-A 54.5 342.4 4,580.5 HGATS-B 811.8 17,999.9 * *more than 8 hours 159 5.7 Conclusion In this chapter, several metaheuristics based on Tabu Search and Genetic Algorithm for single VRPSD were developed. It started with the development of Adaptive GA. The computational result of solutions generated using Adaptive GA was better than the solution quality generated using a method with fixed parameter. For each problem set, it returns results that better than all fixed pm values, or the same as the ones of the most successful GAs with fixed pm settings. By using the adaptive GA, the amount of time required in finding the appropriate mutation probability values of GA can be reduced. From the results it can also be deduced that different Adaptive GAs were better suited to different problem sets. When compared to other adaptive schemes, the proposed LD has shown its superiority. Furthermore, two types of HGATS were developed and comparative study between HGATS and TS and between HGATS and GA were conducted. The result showed that the proposed HGATS did improve the relative performance of TS and GA alone. Finally all metaheuristics described in this study were evaluated, and the proposed HGATS showed superiority compared to other metaheuristics, followed by BGA and RTS in the second and third best performance respectively. But HGATS type B showed weakness in producing longest average computation time. RTS demonstrated an advantage in combining both of relatively good solution quality and average computation time. In general, the proposed HGATS, BGA and RTS may lead to a better performance in terms of solution quality than the previous research on GA by Bianchi et al. (2004). 160 CHAPTER 6 SOLVING THE BI-OBJECTIVE MULTIPLE VRPSD VIA BREEDER GENETIC ALGORITHM 6.2 Introduction In the deterministic VRP, multiple vehicles (routes) are used because the vehicles have finite capacity. In the stochastic case, Yang et al. (2000) stated that a single route is proven to be the optimal solution, if there are no additional constraints. However, in most real world situations, a single route may not be usable due to several company regulations such as a. a limit on the expected length (or time) of the route, b. customers time windows for delivery or pickup, c. limit on the probability of more than k route failures and or replenishment trips to a pre-specified level, say . In this research, multiple VRPSD with the first restriction is considered, that is, the expected length of each route must not exceed a pre-specified value, say L. According to Yang et al. (2000), for a single route problem even for moderately sized problems (ten or more customers), they have to rely on heuristic methods. Therefore, for the more complex case like solving multiple vehicles (routes) in this chapter, we focused on the development of metaheuristics, namely genetic algorithm. Many real world decision making problems involve simultaneous optimization of multiple objectives (Srinivas and Deb, 1994). But most of the existing literatures in VRPSD, except for the work of Tan et al. (2007), use singleobjective based heuristics. In a single-objective optimization, the main goal is to find 161 the global optimum solution. However, in a multi-criterion optimization problem, there are more than one objective function, each of which may have different individual optimal solution. If there is a sufficient difference in the optimal solutions corresponding to different objectives, the objective functions are often conflict each other. Multi-criterion optimization with such conflicting objective functions gives rise to as set of optimal solutions, instead of a single optimal solution. The reason for the optimality of many solutions is that none can be considered to be better than the other with respect to all the objectives. In a typical multi-objective optimization problem, there exists a set of solutions which are superior to the rest of solutions in the search space in one or more objectives. These optimal solutions are known as Pareto-optimal solutions or non-dominated solutions. The rest of the solutions are dominated solutions. Since none of the solutions in the non-dominated set is absolutely better than any other, any solution is an acceptable solution. One way to solve multi-objective problems is to scalarize the vector of objectives into one objective by averaging the objectives using a weight vector. This process allows a simpler optimization algorithm to be used, but the obtained solution largely depends on the weight vector used in the scalarization process. Since genetic algorithm (GA) works with a population of points, a number of Pareto-optimal solutions may be captured using GAs. In this chapter, we propose the use of Breeder Genetic Algorithm (BGA) to solve the bi-objective VRPSD in minimizing the number of vehicles required and the total expected cost concurrently, using Pareto-rank by modifying and extending the single-objective BGA. This approach is motivated by the results in Chapter 5 that shown superiority of BGA compared to other GA types. Extensive reviews also found that this is the first time BGA has applied for solving bi-objective VRP especially on VRP with Stochastic Demand. Section 6.2 introduces the description of multiple VRPSD. Multiobjective optimization and Pareto definition are described in Section 6.3 followed by the proposed Breeder GA in Section 6.4 and computational results in Section 6.5. Finally, a short conclusion is presented. 162 6.3 Problem Formulation of Multiple VRPSD The mathematical model for the multiple VRPSD is directed into bi-objective function subject to constrain under the stochastic demands setting. The definitions of some of the frequently used notations for the multiple VRPSD are given as follows. x Customers and depot V = {0, 1, ..., n} is a set of nodes with node 0 denotes the depot and nodes 1, 2, …, n correspond to the customers to be visited. x Demands Customers have stochastic demands [ i , i = 1, ..., n follow discrete uniform probability distributions pik Pr ob([ i k ) , k = 0, 1, 2, …, K. Assume further that customers’ demands are independent. Actual individual customer demand will only be known when the vehicle arrives at the customer location. x Vehicles and capacity constraint All vehicles are identical and each one has a capacity limit Q. If the total customer demand exceeds the vehicle capacity, route failure said to be occured. x Routes Every vehicle must start at the depot, visit a number of customers and return to the depot. A feasible solution to the VRPSD is a permutation of the customers s = (s(1), s(2), . . . , s(n)) starting and ending at the depot (that is, s(1) = s(n) = 0), and it is called a priori tour. x Length constraint The length constraint is such that the expected length of each route should not exceed a given limit L. x Route failure and recourse action Route failure is said to be occurred if the total demand exceeds the vehicle capacity and the preventive restocking policy (Yang et al., 2000, Bianchi et al., 2004) is employed. x Cost and VRPSD bi-objective function A non-negative matrix C = { cij : i, j V, i z j} denotes the travel costs (distances) between node i and j. The cost matrix C is symmetric and 163 satisfies the triangular inequality. The cost matrix is a function of Euclidean distance. Let 0 1 2 … j j+1 … n be a priori vehicle route. The objective value of the planned vehicle route cost is calculated using a dynamic programming as implemented by Yang et al. (2000) and Bianchi et al. (2004). The multiple VRPSD, therefore, involves a solution that minimizes the bi-objective of the total expected cost and number of vehicles m. 6.4 Multi-objective Optimization Multi-objective optimization (also known as multi-criteria optimization, multi-performance or vector optimization) can be defined as: A vector of decision variables which satisfies constraints and optimizes a vector function whose elements represent the objective functions. These functions form a mathematical description of performance criteria which are usually in conflict each other. Hence, the term ‘optimize’ means finding such a solution which would give the values of the entire objective functions acceptable to the designer (Coello, 1999). In minimization problem, a multi-objective optimization problem can be formulated as follows: Find the vector x = >x1 , x 2 ,..., x n @ which minimizes the vector function T f (x) = [f1(x),f2(x),..,fk(x)]T, x S (6.1) where k is the number of criteria, x = >x1 , x 2 ,..., x n @ is the vector of decision T variables, f is objective vector and S is a set of feasible solutions. In other words, we wish to determine among the set of all members, the particular set x1 , x 2 ,..., x n which yields the optimum values of all the objective functions. 164 Zitzler et al. (2000) assumed, without loss of generality, the following definition in a minimization problem. Definition 1 (Pareto Dominance) A vector a = ( a1 , a 2 ,..., a k ) is said to dominate b = ( b1 , b2 ,..., bk ), also written as (a % b) if and only if a is partially less than b, i.e., i {1,..., k} , f i (a)% f i (b) j {1,..., k} : f j (a) % f j (b) Additionaly, a covers b ( a%b ) if and only if a % b or f(a) = f(b) Definition 2 (Non-dominated and Pareto–optimal) 1. The vector a is said to be non-dominated regarding a set S’ S if and only if there is no vector in S’ which dominates a; 2. The vector a is Pareto-optimal if and only if a is non-dominated regarding S. Pareto-optimal vectors cannot be improved in any objective without causing degradation in at least one other objective; as they represent globally optimal solutions. However, analogous to the single-objective optimization problems, there may also be local optima which constitute a non-dominated set within a certain neighbourhood. Definition 3 (Local and Global Pareto-optimal set) Consider a set of vectors S’ S. 1. The set S’ is denoted as a local Pareto-optimal set if and only if a’ S ' a % a’ there exist no solution a S : a-a’ < H f(a)-f(a’) < G where . is a corresponding distance metric and H ! 0, G ! 0 2. The set S’ is called a global Pareto-optimal set if and only if a ' S ': there exist no solution a S : a % a’ 165 Note that a global Pareto-optimal set does not necessarily contain all Pareto-optimal solutions. Term ‘Pareto-optimal set’ refer to the entirety of the Pareto-optimal solutions and the corresponding set of objective vectors is denoted as ‘Pareto-optimal front’. 6.5 Breeder Genetic Algorithm (BGA) for Bi-objective VRPSD The BGA is inspired by the science of breeding animals. In this algorithm, each one of a set of virtual breeder has the task to improve its own subpopulation. Occasionally the breeder imports individuals from neighboring subpopulations. The component of the BGA may be described as follows. Firstly, a genetic encoding of the VRPSD, initialization and evaluation of fitness function are made. After that, improve the solutions using inter and intra route exchange based on OrOpt local search. Finally the crossover and mutation are performed in addition to improving the offspring by local search. The proposed BGA for bi-objective VRPSD is presented in the following steps. Step 0. [Define] Define operator settings of GA suitable with the problem which is VRPSD. Step 1. [Initialization] Create an initial population P of PopSize chromosomes that consists of randomized farther insertion solutions where all chromosomes (individuals) are distinct or clones are forbidden. Step 2. [Improvement] Apply improvement method by using inter-route exchange and intra-route exchange based on OrOpt local search for each individual. Step 3. [Objective] Compute individual’s objective vector Step 4. [Pareto-rank] Pareto-rank the population Step 5. [Selection] Select T % best individual in population to be parents for mating, set this set as TruncPop(t), in this study T is in the range of 35 – 50%. Step 6. [Crossover] Pair all the chromosomes in TruncPop(t) at random forming pairs. Apply crossover with probability pc to each pair and produce 166 (T%).(PopSize) offspring, if random number t pc then offspring is the exact copy of parents. Step 7. [Mutation] With a mutation probability pm mutate the offspring. Step 8. [Improvement] Apply improvement method by using local search to the offspring. Step 9. [Objective] Compute objective vectors of offspring Step 10. [Pareto-rank] Pareto-rank the population including offspring Step 11. [New Population] Remove the (T%).(PopSize) least fit individual based on Pareto-rank to keep size PopSize. Form new population P(t+1) Step 12. [Test/ Stopping Criterion] If the stopping criterion is met then stop, and return to the best solution in current population, else go to Step 13. Step 13. [Acceptance Criterion] Check whether new population is better than acceptance criterion, if yes, go to Step 2, if no then go to Step 5. 6.4.1 Chromosome Representation In the case of multiple vehicles, the genetic material of an individual contains several routes (the number of necessary vehicles), each of them composed by an ordered subset of the customers visited. In every route there must be at least one customer. The chromosome representation follows variable-length chromosome representation proposed by Tan et al. (2007) as depicted in Figure 6.1. Such representation is efficient and allows the number of vehicles to be manipulated and minimized directly for the bi-objective optimization for VRPSD. 6.4.2 Initialization Firstly, the initial giant routes through all customers are generated from Randomized Farthest Insertion, Randomized Nearest Neighbour and randomly generated solutions. All individual must be distinct to ensure the better dispersal of population. Next, partitions each giant route into smaller routes such that each route 167 satisfies the vehicle capacity. The chromosome is built such that the sum of the mean values of the customer demands on each route does not exceed the vehicle capacity. According to preliminary study on the effect of population size to the performance of GA in VRPSD discussed in Section 5.6.1, we see that the use of population size 30, 50 and 100 were not give significant differences to the performance of GA in VRPSD for 10-node, 20-node and 50-node problems. In Chapter 5, we consider several GA-based metaheuristics for single vehicle for 10node, 20-node and 50-node problems, while in this chapter we consider multiple vehicles problems with larger number of nodes than ones used in Chapter 5. Baker and Ayechew (2003) use population size of 30 for 50-node problems and population size of 50 for larger sizes of problem. Thus in this Chapter, we set the population size to be 30 for 50-node problems and the population size of 50 for 75-node problems. Individual 0 0 0 0 1 2 7 6 4 9 0 5 0 3 0 8 0 Figure 6.1 : The data structure of chromosome representation 168 6.4.3 Improvement Method The improvement method consists of two parts: the Inter-route exchange and the Intra-route exchange that are applied to each individual. Generally these improvement methods are based on Or-opt local search. (i). Inter-route exchange The purpose of inter-route exchange is to improve the route by moving a route segment, s, from one route to another route within one individual. The procedure pair wise improves the routes for all possible pairs. For each pair of routes, say route A and route B, the process proceeds as follows: 1. Start from s = 3. 2. Make the most improving move by moving s successive nodes from one to the other route (either from A to B or from B to A). Repeat the improvement on the exchanged routes. 3. If no further improvement can be made, decrease s by 1, and repeat the above step again. If s = 0, then stop. (ii). Intra-route exchange The inter-route exchange method is followed by intra-route exchange. The intra-route exchange improvement method is Or-opt. 6.4.4 Objective Vectors The bi-objective vectors consist of minimizing two components in the objective function, namely the number of vehicles and the total expected cost. The fitness value for each component is the objective function. High fitness is denoted by low number of vehicles or low total expected cost. 169 6.4.5 Pareto-rank Fonseca and Fleming (1993) proposed a scheme in which the rank of a certain individual corresponds to the number of chromosomes in the current population by which it is dominated. Consider, for example, an individual xi at generation t, which is dominated by pi (t ) individuals in the current generation. Its current position in the individuals rank can be given by rank ( xi , t ) 1 pi where pi (t ) (t ) (6.2) denotes the number of individuals that dominate an individual xi at generation t. The whole population is checked and all non-dominated individuals are assigned rank ‘1’. Other individuals (dominated ones) are ranked by checking the non-dominance of them with respect to the rest of the population in the following way. For an individual point, the number of points that strictly dominate the point in the population is first found. Thereafter, the rank of that individual is assigned to be one more than that number. Therefore, at the end of this ranking procedure, there could be some points having the same rank. The selection procedure then uses these ranks to select or delete blocks of points to form the mating pool. 6.4.6 Selection Let M(t) = ( M f 1 (t ), M f 2 (t ) ) denote the vector of bi-objective mean fitness of the population at time t. The change in fitness caused by the selection is given by R (t ) M (t ) M (t 1) (6.3) 170 and is known as response to selection. R(t) measures the expected progress of the population. Breeder measure the selection with the selected differential, which is symbolised by S(t). It is defined by the difference between the mean fitness of the selected individuals, Ms(t) and the population mean: S (t ) M s (t ) M (t ) (6.4) These two definitions (Equation 6.3 and Equation 6.4) are very important. They quantify the most important measurement in the process of artificial breeding. Both R(t) and S(t) can be easily computed. The breeder tries to predict R(t) from S(t). Breeder often uses truncation selection. In truncation selection with threshold T, the T % best individuals will be selected as parents. 6.4.7 Crossover and Mutation In this study, three types of crossover were considered. In the first crossover, we modified the route-exchange Crossover proposed by Tan et al. (2007), the second crossover is PMX and the third crossover is OX. According to Tan et al. (2007), the route-exchange crossover allows good sequences of routes in a chromosome to be shared with other chromosomes. In the route-exchange crossover, only the best routes of the selected chromosome are eligible for exchange. In the case where one of the selected chromosomes has only one route, a segment of the route is randomly selected to exchange with the other chromosome’s best route which will be inserted as a new route in the first chromosome. To ensure the feasibility of chromosome after the crossover, duplicated customers are deleted. These customers are deleted from the original routes while the newly inserted route is left intact. Then a random shuffling is applied to increase the diversity of chromosome. In the random shuffling operation, with the exception of the newly inserted route, the order of customers in each of the remaining routes will be shuffled with a probability equal to the shuffle rate. The Route-exchange crossover can be described in Figure 6.2. 171 The route-exchange crossover is then followed by swap mutation. Swap mutation operator reallocate two nodes, say i and j, which are currently on different routes. Customer i is removed from its route and inserted to a position on the route from which j is removed. Customer j is moved to a position on the route formerly containing i. All pairs of customers are considered for this operation within iteration, and the best move is executed. The disadvantage of route-exchange proposed by Tan et al. (2007) is that the offspring produced from crossover operation always have larger number of vehicles. This condition can be seen in Figure 6.2 where the crossover operation builds one more route from the parent. If the parents have each 3 and 4 routes, crossover produces 4 and 5 routes for the offspring. Thus we modify the route exchange crossover by adding decrease vehicle number operator. This operator works first with randomly choose a route and each one node from that route is moved to the end of other routes. The reason for this modification is that it gives us flexibility to change the nodes to possibly decrease the number of routes. If all nodes from the route can be moved, then the number of routes can be reduced. In this study, the routes to be exchanged were randomly chosen. In mutation process, we randomly choose pairs of customers rather than check all pairs of customer. 172 Figure 6.2. Illustration of route-exchange crossover (source: Tan et al., 2007) 173 6.4.8 Stopping Criterion In using the optimization algorithms, the goal is to search for the global optimum. However, in general it is not clear when the goal is achieved especially in our application to the real world situation. Therefore, it is sometimes not that easy to decide when execution of an optimization algorithm should be terminated. There are many different mechanisms that may be used for the detection of an appropriate time for ending an optimization run. One of the commonly used mechanisms is the algorithm is executed until there is no improvement in fitness value for certain generations. In this study, the BBGA is repeated until there is no improvement in fitness value for 500 generations. 6.4.9 Acceptance Criterion The relationship between R(t) and S(t) is given by the equation R (t ) bt .S (t ) (6.5) where bt in the quantitative genetics is known as the realized heritability. It is normally assumed that bt is constant for a number of generations. This leads to R(t ) b.S (t ) (6.6) In general, the progress due to a genetic search as long as the ratio R(t)/S(t) is greater than 0.1 (Crisan and Muhlenbein, 1998). In bi-objective, we extend this criteria in such a way that for every objective, the ratio R(t)/S(t) is greater than or equal to 0.1 and there exist R(t)/S(t) > 0.1 for at least one objective. The structure of Breeder Genetic Algorithm for bi-objective optimization is depicted in Figure 6.3. 174 START Generate Initial Population Pop(0) of size PopSize Set iteration t = 1 Apply Inter-route and Intra-route exchange based on OrOpt for each individual, set as Pop(t) Calculate mean fitness of population Pop(t), M(t) Compute individual’s objective vector Pareto-rank the population TRUNCATE POPULATION Select 35% to 50% best individuals of population as parent for mating Calculate mean fitness of selected population TruncPop(t), Ms(t) Calculate R(t) = M(t) - M(t-1) Calculate S(t) = Ms(t) - M(t) Crossover the TruncPop(t) Mutation t = t+1 t = t+1 Improvement Compute objective vector of offspring No Pareto-rank offspring and parent Yes Form new population Pop(t+1) R(t ) ! 0.1? S (t ) No Stopping criteria met? Yes Choose the best individual END Figure 6.3 : Structure of Breeder Genetic Algorithm for bi-objective optimization 175 6.6 Computational Results The subsequent sections present the extensive simulation results and the data analysis. Section 6.5.1 demonstrates how the three crossover types will affect the performance of the algorithm. In Section 6.5.2 the effectiveness of the proposed BGA is analyzed and then compared to the Pareto GA. Three types of Pareto Genetic Algorithm – based metaheuristics were compared: 1. Pareto GA : Genetic Algorithm 2. Pareto BGA1 : Breeder Genetic Algorithm without local search improvement on offspring. 3. Pareto BGA2 : Breeder Genetic Algorithm with local search improvement on offspring. The relative performances of metaheuristics for bi-objective optimization problem in VRPSD were tested on two problem size: 50 and 75. The metaheuristics were executed 20 times on each instance. Each simulation run was carried out using the parameters setting chosen after some preliminary experiments as shown in Table 6.1. Table 6.1 : Paramaters setting in bi-objective VRPSD Number of non improving 500 successive generations Population size 30 for 50-nodes and 50 for 75-nodes Crossover rate 0.8 Mutation rate 0.05 Capacity of vehicle (Q) 100 Length limit (T) 200, 400 Truncation percentage Randomly selected within interval 0.35 to 0.5 Initial population Randomized NN + Randomized FI + random solution Additional cost for route failure 50 Crossover type 1. OX 2. Modified Route-exchange crossover 3. PMX 176 6.4.1 Effect of different crossover types The performance of different crossover types was evaluated for the proposed BGA type 2 on number of customer 50 and T = 400. From all runs of the algorithms on this problem size and length limit setting, the number of vehicles required was the same (i.e. equal to 3). Thus we only reported the performance of solution quality based on the total expected cost. The summary of descriptive measures of the result was reported in Table 6.2. Table 6.2 : Descriptive statistics for the solutions from different crossover types Descriptive Statistics Number of Runs Minimum Maximum Mean Std. Deviation OX 20 Statistic 783.49 Statistic 785.87 Statistic 784.6375 Std. Error .26243 Mod_RE 20 783.49 792.27 787.8585 .66910 2.99229 PMX 20 783.49 792.27 785.2381 .48601 2.17352 1.17361 From Table 6.2, it shows that the choice of crossover can give different effect to the relative performance of the algorithm. The OX crossover seems to give the best relative performance compared to other crossovers, since OX can obtain minimum average of total expected cost. It was followed by PMX and the worst performance is produced by Modified Route Exchange (RE) crossover. Even though we have enhanced the performance of Route Exchange crossover of Tan et al (2007) by using decrease vehicle number operator as described in Section 6.4.7, the solution quality of RE is less than solution obtained by OX and PMX crossovers. OX give best solution quality in lowest total expected cost, but the difference between OX and PMX implementation is relatively low. To verify whether the differences of relative performance of crossovers are statistically significant, the independent samples test was used. Firstly we tested the normality assumption where the results of Kolmogorov-Smirnov normality test were given in Table 6.3. Since all the p-values against the null hypothesis “The data 177 follow normal distribution” were bigger than significance level 0.05, that were 0.055, 0.174 and 0.076 OX, Modified RE and PMX respectively; thus we can not reject the null hypothesis. The data follows normal distribution and further we can use independent samples t-test. Table 6.3 : Normality test results of the differences between three types of crossover One-Sample Kolmogorov-Smirnov Test OX Number of runs Normal Parameters Mod_RE 20 PMX 20 784.6375 787.8585 785.2381 1.17361 2.99229 2.17352 .300 .247 .286 20 a,b Mean Std. Deviation Most Extreme Differences Absolute Positive .296 .247 .286 Negative -.300 -.150 -.211 1.341 1.105 1.279 .055 .174 .076 Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. The results of independent t-test were presented in Table 6.4. There was a statistically significant difference between the relative performance of Modified RE with both PMX and OX since the p-values of the null hypothesis “There is no mean difference between two groups” were less than 0.05, which were 0.003 and 0.003 for pair RE-PMX and pair RE-OX. The extent of this difference was shown clearly by the confidence interval of the difference which not encompasses zero. From associated Table it can also be drawn that although the OX gave better quality in less total expected cost than PMX, the effect of PMX and OX was not statistically significantly different. 178 Table 6.4 : Independent samples test for crossover performance Levene's Test for Equality of Variances F OX_ ModRE OX_ PMX ModRE _PMX 6.5.2 Equal variances assumed Equal variances not assumed Equal variances assumed Equal variances not assumed Equal variances assumed Equal variances not assumed 38.895 1.811 7.666 Sig. .000 .186 .009 t-test for Equality of Means t Sig. (2tailed) df Mean Difference Std. Error Difference 95% Confidence Interval of the Difference Lower Upper -4.481 38 .000 -3.22094 .71872 -4.67591 -1.76597 -4.481 24.710 .000 -3.22094 .71872 -4.70205 -1.73983 -1.087 38 .284 -.60057 .55234 -1.71872 .51758 -1.087 29.211 .286 -.60057 .55234 -1.72987 .52873 3.169 38 .003 2.62037 .82698 .94623 4.29451 3.169 34.684 .003 2.62037 .82698 .94096 4.29978 Performance of Bi-objective Breeder GA for VRPSD It was previously commented in Section 6.5.1 that OX crossover produces the best solutions among the three crossover types. Thus the OX crossover was used in the performance evaluation and comparison between the proposed BBGA with Pareto GA. Different with the number of customer to be examined in single vehicle case as investigated in previous chapter. In this performance comparison, larger numbers of customer are used that are 50 and 75, since in this chapter the multiple vehicles are used. In Table 6.5 and Table 6.6, the total expected cost and expected number of vehicles reported were the respective cost and number of vehicles over the non-dominated solutions in the population over the 20 simulation runs. As we can see from Table 6.5, BBGA2 produces the best performance with the smallest product of total expected cost. From Table 6.6, we can also see that Pareto GA can not compete with BBGA1 and BBGA2 in terms of minimization of vehicles number 179 required, while the relative performance of BBGA1 and BBGA2 were similar. The BBGA2, augmented with the additional improvement to the offspring, was capable to improve the solution quality of BBGA1. Table 6.5 : Comparison of total expected cost between BBGA and Pareto GA Expected total cost Number of nodes Length limit Measure 50 200 Min 816.26 788.31 791.41 Mean 838.97 794.25 792.13 Max 856.54 798.67 792.26 Min 815.35 783.49 783.49 Mean 845.59 790.72 784.64 Max 879.50 806.29 785.87 Min 1137.74 1052.97 1044.14 Mean 1159.11 1089.42 1073.94 Max 1189.59 1109.97 1122.98 Min 1149.26 1090.39 1082.78 Mean 1166.88 1110.10 1094.77 Max 1169.80 1140.59 1109.81 400 75 200 400 Pareto GA BBGA1 BBGA2 Table 6.6 : Comparison of vehicles number between BBGA and Pareto GA Problem Length Measure Expected number of vehicles Pareto GA BBGA1 BBGA2 size limit 50 200 Min 5 5 5 Mean 5 5 5 Max 5 5 5 400 Min 3 3 3 Mean 3 3 3 Max 3 3 3 75 200 Min 7 6 6 Mean 7.00 6.60 6.75 Max 7 7 7 400 Min 4 3 3 Mean 4 3 3 Max 4 3 3 180 The comparison between the Breeder GA and Pareto GA were performed using the multiplicative aggregation method (Van Veldhuizen and Lamont, 1998; Tan et al., 2007) of the total expected cost and number of vehicles required. Expected cost and expected number of vehicles are the respective average over the non-dominated solutions in the archive population found at the termination of the algorithm over the 20 runs. The multiplicative aggregation as the multiplication product of the total expected cost and number of vehicles required were presented in Table 6.7. Taking two objectives into consideration, Table 6.7 showed that BBGA has distinctly lower multiplicative aggregate in comparison with Pareto GA, and the BBGA2 seems to give best performance. Table 6.7 : Comparison between multiplicative aggregation Problem size Length limit 50 200 400 200 400 75 6.7 Expected multiplicative aggregate Pareto GA BBGA1 BBGA2 4194.85 2536.77 8113.77 4667.52 3971.25 2372.16 7190.17 3330.3 3960.65 2353.92 7249.09 3284.31 Conclusion A bi-objective optimization VRPSD, that involves the optimization of routes for multiple vehicles to minimize bi-objectives of the total expected cost and the number of vehicles required, has been considered. The bi-objective Breeder GA (BBGA) was featured with good initial population, enhanced genetic operators, progressive breeding process, Pareto fitness ranking, and improvement of the parents and offspring. The effect of different crossover types to the relative performance of the proposed BBGA has been also analyzed. Experimental results showed that OX and PMX crossover were superior to Route Exchange crossover. Furthermore, a comparative study of several algorithms for solving bi-objective VRPSD is conducted. The Breeder GA offers an improvement in the quality of solution in comparison to Pareto GA. 181 CHAPTER 7 CASE STUDY: SOLID WASTE COLLECTION 7.1 Introduction VRP with Stochastic Demands finds its application on wide range of logistics and distribution sectors in cases where it is impossible to know the customers demands before the vehicles arrives at customer’s location. This chapter discusses the implementation solutions using VRPSD models and metaheuristics algorithms described in previous chapters. A case study was conducted at Perniagaan Zawiyah Sdn. Bhd. (PZSB), a company responsible for solid waste management for the municipality of the City of Johor Bahru. The problem of solid waste collection is modeled as VRPSD. It is of course impossible to know a priori the demands (how much garbage has to be collected) at each customer location, but the parameters can be estimated using appropriate probability distribution based on previous data collected. It is highly expected that taking into account the stochasticity nature of a real world situation may produce better routes thus will reduce cost. This chapter begins with an overview of the practices of solid waste collection at PZSB given in Section 7.2 followed by the data collection process in Section 7.3. The data analysis is presented in Section 7.4. Finally a short conclusion is given in Section 7.5. 182 7.2 Overview of Solid Waste Company Solid waste is an element of environmental pollution, which, in turn, is the contamination of air, water and soil by materials that interfere with human health and the quality of life and nature. In every country, most residents of course consider solid waste collection as a required service, that’s why there are many solid waste collection companies that compete based on price and quality service, this condition also occurs in Malaysia. One of waste collection company in Malaysia is the Perniagaan Zawiyah Sdn. Bhd. which is located on: - Office : 46-02, Padi Mas 4/1 Bandar Baru Uda - Workshop and depot : Jalan Tahana, Tampoi Industrial Area On their duties, PZSB is funded by the municipal authority of Johor Bahru (Majlis Bandaraya Johor Bahru -MBJB) or became a sub contractor for other companies under agreement for usually 1 year contract. Its operation covers area within the boundary of the municipality, namely: a. Kawasan Pekan Nenas (under Southern Waste Management Sdn. Bhd. as main contractor). b. Kawasan Baru CFO Zon Tengah (under Majlis Bandaraya Johor Bahru). c. Kawasan Kuarters Guru Jalan Noja, Kondominium Datin Halimah, Jalan Nibong 14, Taman Setia Indah, Taman JP Perdana, Taman Mount Austin, Taman Austin Perdana and Taman Austin Height (under Southern Waste Management Sdn. Bhd. as main contractor). d. Kawasan Zon 1A Pasir Gudang: Taman Cendana, Kompleks Pusat Bandar, Taman Mawar, Taman Bukit Dahlia and Kg. Pasir Gudang Baru (under Pihak Berkuasa Tempatan Pasir Gudang). The company is in charge of collecting waste in two major sectors: 1. Commercial and Residential sectors Commercial customers include restaurant and traditional market, while residential customers are generally people living in private houses or government quarters. 2. Roll-on-roll-off/ Industrial 183 Industrial routes are different from residential and commercial sectors have different size containers. Truck can only handle one industrial container at a time and commonly haul this container to the dumpsite, empty it and have it back to the original customer’s location. 7.3 The Data Collection Process This research is confined to solid waste collection problem on residential area. Each residential route may serve approximately 1000 unit of houses per day per truck. Residents of each house store their garbage in city provided cart or box which is usually placed in front of their house along the alley for collection. Each truck is assigned a four-person crew: one (1) driver and three (3) solid waste collectors (or garbage collectors). Usually all trucks start their operation at 7am from the depot, after collecting the waste they empty the truck at the dumpsite and return to the depot. The dumpsites are located at three different locations namely the Seelong dumpsite, Pasir Gudang dumpsite and Pekan Nenas dumpsite. A driver and collectors may visit the same customer multiple times in a week. Customers are commonly serviced three times a week. The weekly schedule is fairly static; a stable set of customers is served on a regular basis (three times a week) as most customers seldom change the frequency of service. At the start of each day, each truck is provided with customers list. Usually the working period in Malaysia is generally 8am to 5pm hours, while at PZSB, the workers start their activity at 7am. The trucks crews are obligated to depart at approximately 7am and empty the truck load at dumpsite before returning to the depot. The dumpsites are opened for 24 hours, but for subcontractor companies are not the owner of the dumpsites, therefore the activity of emptying the waste must be done before 7pm. If the waste collection’s trucks arrived at the dumpsite after 7pm, they must fill in form of reason why they were late to empty the waste. There is no time constraint such as: each truck crew is directed to collect solid waste for a fixed amount of time before going to the dumpsite. Although there is no hard time windows of collection time, every truck crew aware that they should finish the route 184 collection as fast as possible, since the company has a regulation that overtime cost is only given at the starting day of the week for regular basis route (for example on Monday for Monday-Wednesday-Friday collection days and Tuesday for TuesdayThursday-Saturday collection days) in flat rate a day for approximately RM 10 per truck crew (according to the company information), not a multiplicative of the number of overtime hour. In some developed countries, certain government has specific regulation about the way garbage is collected. In residential routes, the waste companies are permitted to serve only customers on the right side of the street (Figure 7.1). This condition requires arc-routing solutions. But the situation is different in developing country like Malaysia, exceptions are granted for this regulation especially for alleys and one-way streets. In an alley, wastes in right and left side of an alley are picked up simultaneously. Thus, the way for solving the residential routing in this problem is different, point-to-point or node-to-node solutions are more acceptable. Street a. Arc routing problem Street b. Node-to-node routing problem Figure 7.1 : Arc routing and node-to-node routing The PZSB Company divided the operation areas into several routes where each route consists of several cluster. For example in Taman Setia Indah residential area, it divided into 12 Precincts as presented in Figure 7.2. Due to our limitation, this study only considers the area of observation on one vehicle route that commonly covers three clusters namely Pasar Awam Setia Indah (Precint 1), Taman Setia Indah 6 (Precinct 5) and Taman Setia Indah 7 (Precint 7). On any given service day, there is a possibility that the vehicle covers additional zone, for example on Kempas Indah area, or in the other day the vehicle may visit another collection area, according to on call request of the resident management to the company. This routing problem could be regarded as Vehicle Routing Problem with Stochastic Customers, where each 185 customer is present with probability pi . In this study we only consider Vehicle Routing Problem with Stochastic Demands where customer is deterministic but the demand is stochastic. Thus the data analysis is conducted on commonly fixed visited clusters namely Pasar Awam Setia Indah (Precinct 1), Taman Setia Indah 6 (Precinct 5) and Taman Setia Indah 7 (Precinct 7) as mentioned before. Pasar Awam Figure 7.2 : Map of Taman Setia Indah 186 The collection regular days are Tuesday, Thursday and Saturday for every week with the dumpsite location at Seelong. The data are collected for six (6) days, twice for each regular day. These are 23 and 30 August 2007 for Thursday, 25 August and 1 September 2007 for Saturday and 28 August and 20 November 2007 for Tuesday. Variables to be observed are demand (amount of solid waste). Taman Setia Indah 6 consists of 24 alleys whereas Taman Setia Indah 7 consists of 14 alleys. Detail of number of houses to be served at each alley is given in Table 7.1. Table 7.1 : Number of houses on route No Street 1 2 3 4 5 6 7 8 9 10 11 12 13 Setia 6/2 Setia 6/3 Setia 6/4 Setia 6/5 Setia 6/6 Setia 6/7 Setia 6/8 Setia 6/9 Setia 6/10 Setia 6/11 Setia 6/12 Setia 6/13 Setia 6/14 Total No. of houses 31 30 25 37 20 30 22 35 33 20 25 30 74 412 Street Setia 6/18 Setia 6/19 Setia 6/20 Setia 6/21 Setia 6/22 Setia 6/23 Setia 6/24 Setia 6/27 Setia 6/28 Setia 6/29 Setia 6/30 Setia 7/2 Setia 7/3 No. of houses 56 28 56 28 28 21 21 56 32 32 56 25 49 488 Street Setia 7/4 Setia 7/5 Setia 7/6 Setia 7/7 Setia 7/8 Setia 7/9 Setia 7/10 Setia 7/11 Setia 7/12 Setia 7/15 Setia 7/16 Setia 7/17 Pasar Awam No. of houses 36 30 30 30 15 24 48 48 25 19 41 20 1 366 The portion of detail maps of the area at Taman Setia Indah 6 and Taman Setia Indah 7 is given in Figure 7.3. Since the total of customer number is huge, we consider the alleys as the nodes (customers) on a network rather than houses; the demand is the total amount of houses waste in each alley. We model the demand (weight of solid waste collected) as random variables whose parameters are estimated from previous knowledge about the data. The objective of this statistical model is to minimize the total expected cost. 187 Jalan Setia 6 Jalan Setia 7 Figure 7.3: Portion of maps of Jalan Setia 6 and Jalan Setia 7 7.4 Data Analysis 7.4.1 Daily Demand Characteristics In the application of vehicle routing problem with Stochastic Demands in case of solid waste collection, the objective is to find a priori route (route that has been planned before the trip to the customers made but using previous knowledge about the demand characteristics) that minimise the total expected total cost. The demands (weight of solid waste collected) is unknown before the vehicles arrive at customer location but the demands can be modeled as random variables whose parameters are estimated from previous demands data. The information about demands characteristics including its parameter estimation is used to build the routes. The objective of this statistical model is to minimize the total expected cost. 188 The total amount of waste collected by each truck can be obtained from dumpsites. Each dumpsite stores detailed data regarding the arrival time of the truck to the dumpsite, the weight of garbage deposited by the truck, and the time at which the truck departs from the dumpsite. In this section we confine our discussion on the demand data. Usually the first step to be done in data analysis is computing descriptive statistics as presented in Table 7.2. Table 7.2 : Descriptive statistics of total daily collection Descriptive Statistics Tuesday Frequency 2 Minimum 6579 Maximum 7529 Mean 7054.00 Std. Deviation 671.751 Thursday 2 4003 4537 4270.00 377.595 Saturday 2 4409 4723 4566.00 222.032 Valid N (listwise) 2 It was shown that the largest amount of demand (waste weight) is usually occurred in Tuesday with the average of 7,054 kg. The average waste collected on Tuesday is almost twice of the average demand during the rest of the week. This phenomenon is reasonable since the waste to be collected on Tuesday is stacked for three (3) days from Saturday after the waste is picked until Tuesday before the waste is picked up again, while for the other days the waiting time of waste to be picked up is two (2) days. Minimum amount of solid waste to be collected is usually occurred on Thursday. The average solid waste load per day for the vehicle is approximately 5296.67 kg. Regarding to the truck capacity that can be planned is 6 tons, indicating an average capacity utilization of 88.28%. 189 Boxplot of Demand by Day 8000 Demand 7000 6000 5000 4000 Saturday Thursday Day Tuesday Figure 7.4 : Box and whisker plots of total demand by day Box and whisker plot of demand in Figure 7.4 showed the same information. From box plot we can also see that although the mean of demand on Saturday is higher than Thursday, the mean of these two days can be regarded as the same since the boxes are still overlapped, whereas the mean of Tuesday demand is different from the others. To convince more, one-way ANOVA was conducted in order to test null hypothesis that the mean of demand on Tuesday, Thursday and Saturday are the same. Testing the hypothesis at 95% confidence level, the p-value (0.016) is less than D (= 0.05). Thus the null hypothesis is rejected. Note that confidence interval for mean of demand on Saturday and Thursday are overlapping, it means that the mean of demand on Saturday and Thursday is the same. Tuesday demand is different with the others since it was not overlapped with other confidence intervals as shown in Figure 7.5. 190 One-way ANOVA: Total Demand versus Day Source Day Error Total DF 2 3 5 S = 463.0 Level Saturday Thursday Tuesday N 2 2 2 Mean 4566.0 4270.0 7054.0 SS 9352277 643126 9995403 MS 4676139 214375 R-Sq = 93.57% StDev 222.0 377.6 671.8 F 21.81 P 0.016 R-Sq(adj) = 89.28% Individual 95% CIs For Mean Based on Pooled StDev --------+---------+---------+---------+(------*------) (-----*------) (------*------) --------+---------+---------+---------+4500 6000 7500 9000 Pooled StDev = 463.0 Figure 7.5 : One-way ANOVA of total demand versus day 7.4.2 Route Construction In this section we reported the results obtained from applying the methodology described in the Chapter 4 and Chapter 5 to solid waste collection area given in Section 7.4.1. We also compare routes that are generated with the one that were previously implemented by the company. So far, the workers used a combination of experience and intuition to do the task. In areas described above, Setia Indah is divided into several clusters (Precincts) and each precinct is divided into several blocks. The blocks are laid out on a grid. Thus a truck follows a long snake-like route traveling from the alley of one block to the alley of an adjacent block. The grid structure of the blocks makes it easy for the company to form routes so that wasted distance and travel time between blocks is kept small. The flow of route construction is as follows. The problem of waste collection is transformed to a graph G = (V, A, C), where V = {0, 1,…, n} is a set of nodes with node 0 denotes the depot and nodes 1, 2, …, n correspond to the nodes, 191 A = {(i, j ) : i, j V , i z j} is the set of arcs joining the nodes, and C = ( cij : i, j V , i z j} ) is a non-negative matrix (a matrix where all the elements are equal to or above zero, C t 0, ij cij t 0 ) that denotes the travel cost (distance) between nodes i and j. The customer location coordinates then defined on the graph. Since the total of customer number is huge, we consider the alleys as the nodes (customers) on a network rather than houses; the demand is the total amount of houses waste in each alley. Firstly we optimized the route of clusters (Precincts) and then optimize the route on each cluster. The result then compared to existing route implemented by the company. Since the number of clusters to be optimized is small (equal to 3) thus the performance of all metaheuristics namely TS, RTS, GA, BGA, HGATS type A and HGAATS type B was similar. The route was Depot Æ Pasar Awam Æ Setia Indah 6 Æ Setia Indah 7 Æ Seelong Æ Depot. Since there is an additional constraint that the workers are have breakfast at Pasar Awam first before collecting the solid waste collection and get lunch in Pasar Awam also, thus Pasar Awam is visited twice, the first is in the starting of route and the second is in the end of the route before returning to the dumpsite. The waste from Pasar Awam was taken in the second visit. The route becomes Depot Æ Pasar Awam Æ Setia Indah 6 Æ Setia Indah 7 Æ Pasar Awam Æ Seelong Æ Depot. The route was depicted in Figure 7.6. After the cluster route has been built, the route optimisation of each cluster was taken. Let’s consider a cluster that is Taman Setia Indah 7. In order to build the route using VRPSD, the demand characteristics should be known. characteristics of the demand data, descriptive statistics was used. To get the Statistics summary of nodes demand data for six (6) days was given in Table 7.3. Jalan Setia Indah 7/10 seems to give highest average value of waste to be collected per each collection day, followed by Jalan Setia Indah 7/11; while the lowest amount of waste to be collected is given by Jalan Setia 7/8. These statistics were reasonable since the number of houses in Jalan Setia Indah 7/10 and Jalan Setia Indah 7/11 are larger among other street in Zona 7 which are 48 houses, while the number of houses in Jalan Setia Indah 7/8 were smaller in Zona 7 which is only 15 houses. 192 Figure 7.6 : Global route of the vehicle Table 7.3 : Descriptive statistics of nodes demand data No of observation Minimum Maximum Mean Std. Deviation Setia Indah 7/2 6 75.00 129.00 92.8333 26.13363 Setia Indah 7/3 6 114.00 239.00 156.0000 47.37510 Setia Indah 7/4 6 72.00 229.00 124.6667 56.21269 Setia Indah 7/5 6 71.00 198.00 117.8333 43.72375 Setia Indah 7/6 6 71.00 152.00 110.3333 35.35911 Setia Indah 7/7 6 83.00 180.00 117.5000 38.44346 Setia Indah 7/8 6 29.00 122.00 73.5000 31.09180 Setia Indah 7/9 6 58.00 93.00 76.3333 13.70645 Setia Indah 7/10 6 134.00 311.00 213.8333 73.32508 Setia Indah 7/11 6 135.00 255.00 187.5000 48.41797 Setia Indah 7/12 6 71.00 151.00 94.5000 29.61587 Setia Indah 7/15 6 66.00 140.00 96.1667 28.37193 Setia Indah 7/16 6 93.00 222.00 137.6667 47.09848 Setia Indah 7/17 6 51.00 157.00 82.6667 41.22459 193 Furthermore, uniform distribution fitting based on Chi-Square Test (as described in Section 3.5.1) was conducted for demand data of each street in Taman Setia Indah 7. The hypotheses were given below: H0 : The demand data follows uniform distribution H1 : The demand data does not follow uniform distribution Minimum and maximum values of historical actual demand were set as lower and upper bound of demand distribution follows discrete uniform distribution. The results of uniform distribution fitting tests were given in Table 7.4. Since p-values of distribution test for all streets were larger than 0.05 thus the null hypothesis that the demand data follow uniform distribution can not be rejected. Each street demand satisfies uniform probability distribution for specified bounds. Table 7.4 : Uniform distribution fitting of demand data Street 7/2 7/3 7/4 7/5 7/6 7/7 7/8 7/9 7/10 7/11 7/12 7/15 7/16 7/17 Demand (kg) Minimum Maximum 75 129 114 239 72 229 71 198 71 152 83 180 29 122 58 93 134 311 135 255 71 151 66 140 93 222 51 157 p-value 0.206 0.926 0.429 0.928 0.882 0.901 0.897 0.799 0.956 0.922 0.881 0.873 0.929 0.910 Distribution test result Uniform Uniform Uniform Uniform Uniform Uniform Uniform Uniform Uniform Uniform Uniform Uniform Uniform Uniform Taman Setia Indah 7 consists of 14 nodes with the demand satisfies uniform distribution. Based on customer coordinate locations defined on the graph of map and information about demand probability distribution, the route on Zone 7 was 194 built. The metaheuristics proposed in Chapter 4, 5 and 6 were implemented. The computational results from the metaheuristics were given in Table 7.5 including the routes and the total expected cost (unit cost) associated with. It was shown that RTS, HGATS type B and BGA obtained the same route. On the other hand, the route obtained from TS, GA, HGATS type A and Bianchi was the same. The route obtained from RTS, HGATS type B and BGA gained lower expected cost than the route obtained by TS, GA, HGATS type A and Bianchi. This result is similar with the experimental result from Chapter 4 and Chapter 5. The route generated by TS, GA, HGATS-A, and Bianchi was illustrated in Figure 7.7, the route generated by RTS, HGATS-B and BGA was illustrated in Figure 7.8 and the current company route was illustrated in Figure 7.9. Table 7.5 : Route optimization in Taman Setia Indah 7 Algorithm Cost (unit Route cost) TS 888.27 7/13 - 7/12 – 7/11- 7/10 – 7/9 – 7/8 – 7/7 – 7/6 – 7/5 – 7/2 – 7/2 - 7/3 – 7/4 - 7/15 – 7/16 – 7/17 - 7/15 RTS 876.17 7/4 – 7/2 - 7/3 – 7/5 – 7/6 – 7/7 – 7/8 – 7/9 – 7/10 – 7/11 – 7/12 – 7/16 – 7/17 – 7/15 GA 888.27 7/13 - 7/12 – 7/11- 7/10 – 7/9 – 7/8 – 7/7 – 7/6 – 7/5 – 7/2 – 7/2 - 7/3 – 7/4 - 7/15 – 7/16 – 7/17 - 7/15 HGATS-A 888.27 7/13 - 7/12 – 7/11- 7/10 – 7/9 – 7/8 – 7/7 – 7/6 – 7/5 – 7/2 – 7/2 - 7/3 – 7/4 - 7/15 – 7/16 – 7/17 - 7/15 HGATS-B 876.17 7/4 – 7/2 - 7/3 – 7/5 – 7/6 – 7/7 – 7/8 – 7/9 – 7/10 – 7/11 – 7/12 – 7/16 – 7/17 – 7/15 BGA 876.17 7/4 – 7/2 - 7/3 – 7/5 – 7/6 – 7/7 – 7/8 – 7/9 – 7/10 – 7/11 – 7/12 – 7/16 – 7/17 – 7/15 Bianchi 888.27 7/13 - 7/12 – 7/11- 7/10 – 7/9 – 7/8 – 7/7 – 7/6 – 7/5 – 7/2 – 7/2 - 7/3 – 7/4 - 7/15 – 7/16 – 7/17 - 7/15 Company’s current route 1000.18 7/4 – 7/3 – 7/2 – 7/5 – 7/8 – 7/7 – 7/6 – 7/5 – 7/9 – 7/10 – 7/11 – 7/12 – 7/15 – 7/16 – 7/17 - 7/15 195 Figure 7.7 : Routes generated by TS, GA, HGATS-A, and Bianchi 196 Figure 7.8 : Routes generated by RTS, BGA and HGATS-B 197 Figure 7.9 : The current company route 198 In general, the routes obtained from all metaheuristics implemented here were better than the current route implemented by the PZSB Company. From results given in Table 7.5, the route from RTS, HGATS type B and BGA can give improvement in reducing cost up to 12.39% from current company route, while the route from TS, GA, HGATS type A and Bianchi can reduce cost in approximately 11.18% from current company route. It is proven that the use of metaheuristics does give improvement to the route optimization in searching for a better route. Better route refers to less expected collection cost. In this study, the use of metaheuristics give high effect in substantially reducing the total expected cost of a cluster, whereas practically in a service day, the company uses multiple vehicles where one vehicle serves multi clusters. By using metaheuristics, cost saving that can be gained by the company in a service day is the summation of cost saving by a number of vehicles, where cost saving per vehicle is the total cost saving of a number of clusters serviced by a vehicle. Regarding to the total amount of money spent on the transportation cost is approximately 60 – 80 % of overall cost (according to company’s statement); therefore the identification of a route using metaheuristics for solid waste collection is critical. A small percentage of improvement in the collection operation result a significant saving in the overall operation cost of the company. 7.5 Conclusion A case study of a solid waste company was considered. The metaheuristics studied in this research were implemented. It was proven that the use of metaheuristics does generate better routes by reducing the operation cost compared to the current company routes. 199 CHAPTER 8 GENERAL CONCLUSION AND RECOMMENDATION 8.1 Introduction This chapter provides a conclusion for this study based on the development of metaheuristics namely Tabu Search (TS), Reactive Tabu Search (RTS), Genetic Algorithm (GA), Adaptive GA, Breeder GA, and Hybrid GA with Tabu Search in solving single Vehicle Routing Problem with Stochastic Demands (VRPSD), and also the development of Breeder GA for solving bi-objective multiple VRPSD. Some recommendations for future work are included in this chapter. 8.2 General Conclusion This thesis has presented a study on VRPSD, and several new metaheuristics was successfully developed for the VRPSD. We first investigated the effect of static and dynamic tabu list size in TS. By using dynamic tabu list size, the probability of cycling can be reduced significantly. The dynamic tabu list size is later applied within the TS. Reactive Tabu Search which has never been used in VRPSD was introduced in this study. We found that there are statistically significant differences between the performances of TS and RTS where the RTS can yield better solution quality in terms of much less total expected cost. 200 Furthermore, Adaptive GA was developed and the performance of several adaptive mutation probability schemes was compared. The computational results generated for VRPSD using Adaptive GA was better than the solution quality generated using the fixed parameter settings. By using the adaptive GA, the amount of time required in finding the appropriate mutation probability values of GA can also be reduced. Different Adaptive GAs were better suited to different problem sets. This work makes more contribution by proposing a new mutation probability scheme based on Lr distance. When compared to other adaptive schemes, the proposed LD has shown its superiority. To the best of our knowledge, hybrid GA with other metaheuristics has not been done in VRPSD. This becomes a reason for proposing two types of Hybrid GA with TS (HGATS) for solving VRPSD. Compared to TS and GA alone, the two HGATS do improve the relative performance of the two algorithms and it is worth noticing that different schemes of integrating TS to GA lead to a significantly different performance. Another contribution is the development of Breeder GA for solving VRPSD, it was shown that Breeder GA can give an improvement to solution quality of GA. Finally all metaheuristics described in this study were evaluated, and the proposed HGATS do shows superiority in terms of solution quality compared to other metaheuristics, followed by BGA and RTS in the second and third best performance respectively. But HGATS type B showed weakness in producing longest average computation time. RTS demonstrated an advantage in combining both of relatively good solution quality and average computation time. In general, the proposed HGATS, BGA and RTS may lead to a better performance than the previous GA developed by Bianchi et al. (2004). While the metaheuristics described above deal with single objective function, we also propose the Breeder GA for solving bi-objective multiple VRPSD in minimizing the number of vehicles required and the total expected cost concurrently, using Pareto-rank by modifying and extending the single-objective BGA. The computational results show that the proposed bi-objective Pareto BGA gave better solution qualities compared to Pareto GA. Finally, the metaheuristics developed in 201 this study has been applied to solve a case study of solid waste collection in municipality of Johor Bahru city, but confined on single vehicle. It was proven that the use of metaheuristics can give improvement in obtaining better routes and significantly reducing the cost compared to the current company routes. 8.3 Recommendations for Future Researches The results of this study provide several directions for further research. In this study, the problem data generated are following uniform distribution for the customer locations and customer demands. Future work can be done by implementing various probability distributions for the customer demands, e. g. Normal probability distribution, Poisson probability distribution, etc. Future work can also include a complexity analysis of the algorithm, which has not been done in this study. In this study, we have developed TS and RTS using Or-opt. But, the TS can not compete with RTS. Several other local searches can be explored with various types of move implementation or adding a diversification in order to improve the performance of TS. Diversification has not been applied in the RTS, therefore this can be taken into consideration for further research. Genetic Algorithms proposed in this study are in permutation or order representation that is specifically designed for Traveling Salesman Problem and Vehicle Routing Problems, future works can be done by using the binary representation that commonly used for Genetic Algorithm, then a comparison between the performances of these two chromosome representations to the VRPSD can be investigated. Adaptive GAs implemented and proposed here are depend on diversity measure of population. One can conduct a research on adaptive GA that takes into account other measures. In this research, two Hybrid GA and TS for solving 202 VRPSD also have been proposed. Alternatively, one could hybridize GA with other metaheuristics, or hybridize other metaheuristics beside GA. Another work has been done in this research is the development of Breeder GA for solving bi-objective multiple VRPSD. Future works could consider another metaheuristics for bi-objective multiple VRPSD, for example TS, Simulated Annealing or others. In this study, due to our limitation, we only consider single and multiple homogeneous vehicles. One can extend these to the multiple heterogeneous vehicles case. The implementation of VRPSD model conducted in optimizing single vehicle solid waste collection problem can be extent to the optimization of multiple vehicles. Finally, the methods developed in this study may also be explored into several application areas such as parcel delivery services, school bus routing and other logistic and transportation problems. 203 REFERENCES Adrabinski, A. and Syslo, M. M. (1983). Computational experiments with some approximation algorithms for the traveling salesman problem. Zastosowania Matematyki. 18: 91-95. Baker, B. M. and Ayechew, M. A. (2003). A Genetic Algorithm for the vehicle routing problem. Computers and Operations Research. 30: 787–800. Bard, J., Huang, L., Jaillet, P., and Dror, M. (1998). A decomposition approach to the inventory routing problem with satellite facilities. Transportation Science. 32(2): 189-203. Barbarosoglu, G. and Ozgur, D. (1999). A Tabu Search Algorithm for the Vehicle Routing Problem. Computers and Operations Research. 26: 255-270. Bastian, C. and RinnooyKan, A. H. (1992). The stochastic vehicle routing revisited. European Journal of Operational Research. 56: 407-412. Battiti, R. and Tecchiolli, G. (1994). The Reactive Tabu Search. ORSA Journal on Computing. 6(2): 126-140. Berger, J., Salois, M. and Begin, R. (1998). A Hybrid Genetic Algorithm for the Vehicle Routing Problem with Time Windows. Lecture Notes in Artificial Intelligence 1418, AI’98, Advances in Artificial Intelligence, Vancouver, Canada. 114127. 204 Berger, J., Barkaoui, M. and Braysy, O. (2001). A Parallel Hybrid Genetic Algorithm for the Vehicle Routing Problem with Time Windows. Working paper, Defense Research Establishment Valcartier, Canada. Bertsimas, D. J. (1992). A Vehicle Routing Problem with Stochastic Demands. Operations Research. 40(3): 574-585. Bertsimas, D., Jaillet, P. and Odoni, A. R. (1990). A Priori Optimization. Operations Research. 38(6): 1019-1033. Bertsimas, D. J., Chervi, P. and Peterson, M. (1995). Computational Approaches to Stochastic Vehicle Routing Problems. Transportation Science. 29(4): 342352. Bianchi, L., Birattari, M., Chiarandini, M., Manfrin, M., Mastrolilli, M., Paquete, L., Rossi-Doria, O., and Schiavinotto, T. (2004). Metaheuristics for the Vehicle Routing Problem with Stochastic Demands, In Parallel Problem Solving from Nature - PPSN VIII, Lecture Notes in Computer Science Vol. 3242/2004 (pp. 450-460). Berlin / Heidelberg: Springer. Blanton, J. L. and Wainwright, R. L. (1993). Multiple Vehicle Routing with Time and Capacity Constraints using Genetic Algorithms. Proceedings of the 5th International Conference on Genetic Algorithms, S. Forrest (Ed.). San Francisco: Morgan Kaufmann. 452459. Blum, C. and Roli, A. (2003). Metaheuristics in Combinatorial Optimization: Overview and Conceptual Comparison. ACM Computing Surveys. 35(3): 268-308. Bräysy, O., Berger, J. and Barkaoui, M. (2000). A New Hybrid Evolutionary Algorithm for the Vehicle Routing Problem with Time Windows. Route 2000 Workshop, Skodsborg, Denmark. 205 Bräysy, O. and Gendreau, M. (2001a). Vehicle Routing Problem with Time Windows, Part I: Route Construction and Local Search Algorithms. Working Paper, SINTEF Applied Mathematics, Department of Optimisation, Norway. Bräysy, O. and Gendreau, M. (2001b). Vehicle Routing Problem with Time Windows, Part II: Metaheuristics. Working Paper, SINTEF Applied Mathematics, Department of Optimisation, Norway. Bryant, K. (2000). Genetic Algorithms and the Traveling Salesman Problem. Department of Mathematics, Harvey Mudd College. Chepuri, K. and Homem-De-Mello, T. (2005). Solving the Vehicle Routing Problem with Stochastic Demands using the Cross-Entropy Method. Annals of Operations Research. 134: 153-181. Choi, I., Kim, S. and Kim, H. (2003). A Genetic Algorithm with a mixed region search for the asymmetric TSP. Computers and Operations Research. 30: 773-786. Christofides, N., Mingozzi, A. and Toth, P. (1979). The Vehicle Routing Problem. In Christofides, N., Mingozzi, A. and Toth, P. (Eds.), Combinatorial Optimization. Chicester: Wiley. 315-338. Coello, C. A. C. (1999). A Comprehensive Survey of Evolutionary-Based Multiobjective Optimization Techniques. Knowledge Information Systems. 1(3): 129-156. Coley, D. A. (1999). An Introduction to Genetic Algorithms for Scientists and Engineers. (1st ed). Singapore: World Scientific Publising Co. Pte. Ltd. Conover, W. J. (1980). Practical Nonparametric Statistics. (2nd ed). New York, USA: John Wiley and Sons, Inc. 206 Cordeau, J-F. and Laporte, G. (2002). Tabu Search Heuristics for the Vehicle Routing Problem. Canada Research Chair in Distribution Management and GERAD Report. Montreal. Canada. Crainic, T. G., Gendreau, M., and Potvin, J-Y. (2005). Parallel Tabu Search. In Alba, E. (Ed.). Parallel Metaheuristics: A New Class of Algorithms. New Jersey: John Wiley and Sons, Inc. Crisan, C. and Muhlenbein, H. (1998). The breeder genetic algorithm for frequency assignment, In Eiben, A. E., et al. (Eds), Parallel Problem Solving from Nature (PPSN V) (pp. 897-906). September, 1998. Amsterdam, The Netherlands. Daniel, W. W. (1990). Applied Nonparametric Statistics. (2nd ed). Boston: PWSKent Publishing. Davis, L. (1985). Applying adaptive algorithms to epistatic domains. In Michandani, P.B., Francis, R. (Eds.), Proceedings of the Ninth International Joint Conference on Artificial Intelligence. 1: 162–164. Davis, L. (1989). Adapting operator probabilities in genetic algorithms. Proceedings of the Third International Conference on Genetic Algorithms. Schaffer, J. D. (Ed.). George Mason University: Morgan Kaufmann. 61-69. Davis, L. (1991). Handbook of Genetic Algorithms. New York: Van Nostrand Reinhold, Thomson Publishing Group. Derigs, U. and Kaiser, R. (2007). Applying the attribute based hill climber heuristic to the vehicle routing problem. European Journal of Operational Research. 177(2): 719-732. De Falco, I., Cioppa, A. D. and Tarantino, E. (2002). Mutation-based genetic algorithm: performance evaluation. Applied Soft Computing. 1: 285-299. 207 Dorigo, M. (1992). Ottimizzazione, apprendimento automatico, ed algoritmi basati su metafora naturale (Optimization, Learning, and Natural Algorithms). Doctorate Thesis in Systems and Information Electronic Engineering. Politecnico di Milano, Italy. Dorigo, M., Caro, G. D. and Gambardella, L. M. (1999). Ant Algorithms for Discrete Optimization. Artificial Life. 5:137-172. Dror, M. and Trudeau, P. (1986). Stochastic vehicle routing with modified saving algorithm. European Journal of Operational Research. 23: 228-235. Dror, M. and Trudeau, P. (1989). Savings with Split Delivery Routing. Transportation Sciences. 23: 141-148. Dror, M., Laporte, G. and Trudeau, P. (1989). Vehicle Routing Problem with Stochastic Demands: Properties and Solution Frameworks. Transportation Sciences. 23(3): 166-176. Dror, M., Laporte, G. and Louveaux, F. V. (1993). Vehicle Routing with Stochastic Demands and Restricted Failures. ZOR – Methods and Models of Operations Research. 37: 273-283. Focacci, F., Laburthe, F. and Lodi, A. (2002). Local search and constraint programming. In Handbook of Metaheuristics, Glover, F. and Kochenberger, G. (Eds.). International Series in Operations Research & Management Science, vol. 57. Norwell, MA: Kluwer Academic Publishers. Fogarty, T. C. (1989). Varying the Probability of Mutation in the Genetic Algorithm. Proceedings of the Third International Conference on Genetic Algorithms, Schaffer, J. D. (Ed.). June 1989. George Mason University, Virginia, USA. San Mateo: Morgan Kaufmann. 104-109. Fonseca, C. M. and Fleming, P. J. (1993). Genetic algorithms for multiobjective optimization: Formulation, discussion and generalization. Proceedings of the 208 Fifth International Conference on Genetic Algorithm, S. Forrest (Ed.). July 1993. San Mateo, CA: Morgan Kaufmann. Freund, R. J. and Wilson, W. J. (2003). Statistical methods. (2nd ed). Amsterdam : Academic Press. Gen, M. and Cheng, R. (1997). Genetic Algorithms and Engineering Design. Toronto, Canada: John Wiley and Sons, Inc. Gendreau, M. (2002). An Introduction to Tabu Search. Working paper. Departement d’informatique et de recherché operationnalle. Universite de Montreal. Montreal. Canada. Gendreau, M., Hertz, A. and Laporte, G. (1992). New insertion and postoptimization procedures for the traveling salesman problem. Operations Research. 40(6): 1086-1094. Gendreau, M., Hertz, A. and Laporte, G. (1994). A Tabu Search Heuristic for the Vehicle Routing Problem. Management Science. 40: 1276-1290. Gendreau, M., Laporte, G. and Seguin, R. (1995). An Exact Algorithm for the Vehicle Routing Problem with Stochastic Demands and Customers. Transportation Science Research. 29: 143-155. Gendreau, M., Laporte, G. and Seguin, R. (1996). A Tabu Search for the Vehicle Routing Problem with Stochastic Demands and Customers. Operations Research. 44(3): 469-477. Glover, F. (1977). Heuristics for Integer Programming Using Surrogate Constraints. Decision Sciences. 8(1): 156–166. Glover, F. (1986). Future Paths for Integer Programming and Links to Artificial Intelligence. Computers and Operations Research. 13(5): 533549. 209 Glover, F. (1990). Tabu Search: A Tutorial. Interfaces. 20: 74 – 94. Glover, F. and Laguna, M. (1993). Tabu Search. In C.R. Reeves (Ed.), Modern Heuristic Techniques for Combinatorial Problems. Oxford: Blackwell. 70150. Glover, F. and Laguna, M. (1997). Tabu Search. Boston: Kluwer. Glover, F. and Kochenberger, G. A. (2003). Handbook of Metaheuristics. Kluwer. Goldberg, D. E. (1989). Genetic Algorithms in Search, Optimization and Machine Learning. New York, USA: Addison-Wesley. Golden, B.L. and Stewart Jr., W.R. (1985). Empirical analysis of heuristics. In Lawler E.L., Lenstra, J.K., Rinnooy Kan, A.H.G. and Shmoys, D.B. (Eds.). The Traveling Salesman Problem: A Guide Tour of Combinatorial Optimization. Chichester: Wiley. 207-249. Grefenstette, J. J. (1987). Incorporating problem specific knowledge into Genetic Algorithm. In Genetic Algorithms and Simulated Annealing. Morgan Kaufmann. 42-60. Helsgaun, K. (2000). An effective implementation of the Lin-Kernighan traveling salesman heuristic. European Journal of Operational Research. 126: 106130. Herrera, F. and Lozano, M. (1996). Adaptation of Genetic Algorithm Parameters Based on Fuzzy Logic Controllers. In Herrera, F. and Verdegay, J. L. (Eds), Genetic Algorithms and Soft Computing. Heidelberg: Physica-Verlag. 95-125. Hertz, A., Taillard, E. D., and de Werra, D. (1997). Tabu Search. In Aartz, E. and Lenstra, J. K. (Eds), Local search in combinatorial optimization. John Wiley and Sons, Ltd. 121-136. 210 Ho, W., Ho, G. T. S., Ji, P., and Lau, H. C. W. (2008). A hybrid genetic algorithm for the multi depot vehicle routing problem. Engineering Applications of Artificial Intelligence. 21: 548-557. Holland, J. H. (1992). Adaptation in Natural and Artificial System. New York, USA: The MIT Press. Homaifar, A., Guan, S. and Liepins, G. E. (1992). Schema analysis of the traveling salesman problem using genetic algorithms. Complex Systems. 6(2): 183–217. Hurkens, C. A. J. and Woeginger, G. J. (2004). On the nearest neighbor rule for the traveling salesman problem. Operations Research Letters. 32 : 1 – 4. Jaszkiewicz, A. and Kominek, P. (2003). Genetic local search with distance preserving recombination operator for a vehicle routing problem. European Journal of Operational Research. 151: 352-364. Jog, P., Suh, J. Y. and Gucht, D. V. (1991). Parallel genetic algorithms applied to the traveling salesman problem. SIAM Journal of Optimization. 1(4): 515–529. Jung, S. (2000). A Genetic Algorithm for the Vehicle Routing Problem with TimeDependent Travel Times. PhD dissertation, University of Maryland. Kirkpatrick, S., Gelatt, C. D. and Vecchi, M. P. (1983). Optimization by simulated annealing. Science, 13 May 1983 220, 4598: 671-680. Lacomme, P., Prins, C. and Sevaux, M. (2006). A Genetic Algorithm for a biobjective capacitated arc routing problem. Computers and Operations Research. 33(12): 3473-3493. Laporte, G. (1992). The Vehicle Routing Problem: An Overview of Exact and Approximate Algorithms. European Journal of Operational Research. 59: 345-358. 211 Laporte, G. and Louveaux, F. V. (1989). Formulations and Bounds for the Stochastic Capacitated Vehicle Routing Problem with Uncertain Supplies. Cahier du GERAD G-87-23, Ecole des Haules Etudes Commerciales de Montreal. Laporte, G. and Louveaux, F. V. (1998). Fleet Management and Logistics. (1st ed.). Boston, MA: Kluwer. 159-167. Laporte, G. and Louveaux, F. V. (1993). The integer L-shaped method for stochastic integer programs with complete recourse. Operations Research Letters. 13: 133-142. Laporte, G., Louveaux, F. V. and Mercure, H. (1989). Models and exact solutions for a class of stochastic location-routing problems. European Journal of Operational Research. 39: 71-78. Laporte, G., Louveaux, F. V. and Van Hamme, L. (2002). An Integer L-Shaped Algorithm for the Capacitated Vehicle Routing Problem with Stochastic Demands. Operations Research. 50(3): 415-423. Laoufi, A., Hadjeri, S. and Hazzab, A. (2006). Adapting Probabilities of Crossover and Mutation in Genetic Algorithms for power economic dispatch. International Journal of Applied Engineering Research. 1(3): 393-408. Law, N. L. and Szeto, K.Y. (2007). Adaptive Genetic Algorithm with Mutation and Crossover Matrices. In Proceedings of the Twentieth Int. Joint Conf. on Artificial Intelligence. Hyderabad, India. 2330-2333. Lee, M. A. and Takagi, H. (1993). Dynamic control of genetic algorithms using fuzzy logic techniques. In Proceeding of the Fifth Int. Conf. on Genetic Algorithms, S. Forrest (Ed.). Morgan Kaufmann. 76-83. Lenstra, J. And Kan, A. R. (1981). Complexity of vehicle routing and scheduling problems. Networks. 11: 221-227. 212 Lin, S. (1965). Computer Solutions on the Travelling Salesman Problem. The Bell Systems Technical Journal. 44(11): 2245-2269. Liu, De-peng and Feng, Shu-ting. (2004). A Novel Adaptive Genetic Algorithms. In Proceedings of the Third Conference on Machine Learning and Cybernetics. Shanghai, Republic of China. Loft, B. and Snow, J. (2006). A Genetic Algorithm for Drawing Ordered Sets. Texas College Mathematics Journal. 1(2): 10-25. Machado, P., Tavares, J., Pereira, F. B. and Costa, E. (2002). Vehicle Routing Problem: Doing it the Evolutionary Way. Proceedings of the Genetic and Evolutionary Computation Conference GECCO-2002, William B. Langdon, Erick Cantú-Paz, Keith E. Mathias, Rajkumar Roy, David Davis, Riccardo Poli, Karthik Balakrishnan, Vasant Honavar, Günter Rudolph, Joachim Wegener, Larry Bull, Mitchell A. Potter, Alan C. Schultz, Julian F. Miller, Edmund K. Burke, Natasa Jonoska (Eds.). New York, USA, 9-13 July 2002. Morgan Kaufmann. Marinakis, Y. and Migdalas, A. (2002). Heuristic Solution of Vehicle Routing Problems in Supply Chain Management, In Pardalos, P. M., Migdales, A. and Burkand, R. E. (Eds), Combinatorial and Global Optimization, Series on Applied Mathematics Vol. 14. World Scientific. The Metaheuristics Network. (2000). Project Summary. Date of access: 6 August 2005. <http://www.metaheuristics.net/>. Mei-yi, L., Zi-xing, C. and Guo-yun, S. (2004). An adaptive genetic algorithm with diversity-guided mutation and its global convergence property. Journal of Central South University Technology. 11(3): 323-327. Mitchell, M. (1996). An Introduction to Genetic Algorithms. Cambridge: MIT Press. 213 Muhlenbein, H. (1994). Theory and Applications of the Breeder Genetic Algorithm. Computational Intelligence: Imitating Life, Zurada, J. M. (Ed.). New York: IEEE Press. 182-193. Muhlenbein, H., Mahnig, T. and Rodriguez, A. O. (1999). Schemata, Distributions and Graphical Models in Evolutionary Optimization. Journal of Heuristics. 5, 215–247. Muhlenbein, H. and Schlierkamp-Voosen, D. (1993a). Predictive Models for the Breeder Genetic Algorithm. Evolutionary Computation. 1(1): 25-49. Muhlenbein, H. and Schlierkamp-Voosen, D. (1993b). The science of breeding and its application to the breeder genetic algorithm BGA. Evolutionary Computation. 1(4): 335-360. Obitko, M. (1998). An introduction to genetic algorithms with Java applets. http://cs.felk.cvut.cz/~xobitko/ga/. Oliver, I. M., Smith, D. J. and Holland, J. R. C. (1987). A Study of Permutation Crossover Operators on the Traveling Salesman Problem. Proceedings of the Second Int. Conf. on Genetic Algorithms (ICGA’87). Massachusetts Institute of Technology, Cambridge. 224-230. Ortiz, F., Simpson, J. R., Pignatiello, J. J., and Langner, A. H. (2004). A Genetic Algorithm approach to Multiple-Response Optimization. Journal of Quality Technology. 36 (4). Osman, I. H. (1993). Metastrategy Simulated Annealing and Tabu Search Algorithms for the Vehicle Routing Problems. Annals of Operations Research. 41: 421-452. Osman, I. H. and Laporte, G. (1996). Metaheuristics: A Bibliography. Annals of Operations Research. 63: 513-623. 214 Perttunen, J. (1994). On the Significance of the Initial Solution in Traveling Salesman Heuristics. Journal of the Operational Research Society. 45(10): 1131-1140. Poon, P. and Carter, J. (1995). Genetic algorithm crossover operations for ordering applications. Computers and Operations Research. 22: 135–47. Potvin, J-Y. (1996). Genetic Algorithms for the Traveling Salesman Problem. Annals of Operations Research. 63: 339-370. Potvin, J-Y. and Bengio, S. (1996). The Vehicle Routing Problem with Time Windows - Part II: Genetic Search. INFORMS Journal on Computing. 8: 165–72. Potvin, J-Y., Dubre, D. and Robillard, C. (1996a). A hybrid approach to vehicle routing using neural networks and genetic algorithms. Applied Intelligence. 6: 241–52. Potvin, J-Y., Duhamel, C. and Guertin, F. (1996b). A Genetic Algorithm for vehicle routing with backhauling. Applied Intelligence. 6 :345–55. Prins, C. (2004). A simple and effective evolutionary algorithm for the vehicle routing problem. Computers and Operations Research. 31: 1985-2002. Pureza, V. M. and Franca, P. M. (1991). Vehicle Routing Problem via Tabu Search Metaheuristic. In: Publication CRT-747, Centre de recherché sur les transports. Montreal. Raidl, G. R. (2006). A Unified View on Hybrid Metaheuristics. Proceedings of the Hybrid Metaheuristics Workshop, Francisco Almeida et al. (Eds.), Vol. 4030 of LNCS. Springer. 1-12. Reeves, C. R. (1993). Modern Heuristic Techniques for Combinatorial Problems. Oxford, England: Blackwell Scientific Publishing. 215 Rego, C. (1998). A Subpath Ejection Method for the Vehicle Routing Problem. Management Science. 44: 1447-1459. Rego, C. and Roucairol, C. (1996). A Parallel Tabu Search Algorithm Using Ejection Chains for the Vehicle Routing Problem. In Meta-Heuristics: Theory and Applications. Boston: Kluwer. 661-675. Rochat, Y. and Taillard, E. D. (1995). Probabilistic Diversification and Intensification in Local Search for Vehicle Routing. Journal of Heuristics. 1: 147-167. Salhi, S., Thangiah, S. R. and Rahman, F. (1998). A Genetic Clustering method for the multi-depot vehicle routing problem. In Smith, G, D., Steel, N. C. and Albrecht, R. F. (Eds). ICANNGA’97, Vienna. New York: Springer. 234–237. Savelsbergh, M. and Goetschalckx, M. (1995). A comparison of the efficiency of fixed versus variable vehicle routes. Journal of Business Logistics. 16: 163188. Schmitt, L. J. and Amini, M. M. (1998). Performance characteristics of alternative genetic algorithmic approaches to the traveling salesman problem using path representation: An empirical study. European Journal of Operational Research. 108(3): 551-570. Secomandi, N. (2000). Comparing neuro-dynamic programming algorithms for the vehicle routing problem with stochastic demands. Computers and Operations Research. 27:1201-1225. Secomandi, N. (2001). A Rollout Policy for the Vehicle Routing Problem with Stochastic Demands. Operations Research. 49(5): 796-802. Secomandi, N. (2003). Analysis of a Rollout Approach to Sequencing Problems with Stochastic Routing Applications. Journal of Heuristics. 9: 321-352. 216 Shen, X., Yang, F. and Pan, Y. (2001). Equivalent Permutation Capabilities between Time Division Optical Omega Networks and Nonoptical Extra-Stage Omega Networks. IEEE/ACM Transactions on Networking, August 2001. 9(4) :518 524. Silver, E. A., Vidal, R. V. and de Werra, D. (1980). A tutorial on heuristic methods. European Journal of Operational Research. 5:153-162. Skinner, B. T., Nguyen, H. T. and Liu, D. K. (2004). Performance Study of a MultiDeme Parallel Genetic algorithm with Adaptive Mutation. Proceedings of 2nd International Conference on Autonomous Robots and Agents. Palmerston North, New Zealand. Spears, W. M. (1995). Adapting Crossover in Genetic Algorithms. Evolutionary Algorithms. 367-384. Srinivas, M. and Deb, K. (1994). Multiobjectie optimization using nondominated sorting in genetic algorithms. Evolutionary Computation. 2(3): 221-248. Srinivas, M. and Patnaik, L. M. (1994). Adaptive probabilities of crossover and mutation in Genetic Algorithms. IEEE Transactions on Systems, Man, and Cybernetics. 24(4): 656-667. Starkweather, T., McDaniel, S., Mathias, K. Whitley, D., and Whitley, C. (1991). A Comparison of Genetic Sequencing Operators. Proceedings of the Fourth International Conference on Genetic Algorithms (ICGA’91), Belew, R. and Booker, L. B. (Eds.). July 13-16, 1991. San Diego, USA. San Mateo: Morgan Kaufmmann. 69-76. Stewart, Jr., W. R. and Golden, B. L. (1983). Stochastic vehicle routing: A comprehensive approach. European Journal of Operational Research. 14: 371-385. 217 Stutze, T. (1999). Local Search Algorithms for Combinatorial Optimization: Analysis, Algorithms and New Applications. DISKI. Sankt Augustin, Germany. Sugisaka, M. and Fan, X. (2001). Adaptive Genetic Algorithm with a Cooperative Mode. In Proceedings of Int. Symposium on Industrial Electronics (ISIE 2001). Pusan, Korea: IEEE. 1941-1945. Taillard, E. D. (1991). Robust Taboo search for the Quadratic Assignment Problem. Parallel Computing. 17: 443-455. Taillard, E. D. (1993). Parallel Iterative Search Methods for Vehicle Routing Problem. Networks. 23: 661-673. Talbi, E.-G. (2002). A Taxonomy of Hybrid Metaheuristics. Journal of Heuristics. 8: 541-564. Tan, K. C., Cheong, C. Y. and Goh, C. K. (2007). Solving multiobjective vehicle routing problem with stochastic demand via evolutionary computation. European Journal of Operational Research. 177: 813-839. Tan, K.C., Lee, L.H. and Ou, K. (2001). Hybrid Genetic Algorithms in Solving Vehicle Routing Problems with Time Window Constraints. Asia-Pacific Journal of Operational Research. 18: 121130. Thangiah, S. R. (1995a). Vehicle Routing with Time Windows Using Genetic Algorithms. In Chambers, L. (Ed.), Application Handbook of Genetic Algorithms: New Frontiers, Volume II (pp. 253277). Boca Raton: CRC Press. Thangiah, S. R. (1995b). An Adaptive Clustering Method using a Geometric Shape for Vehicle Routing Problems with Time Windows. Proceedings of the 6th International Conference on Genetic Algorithms, Eshelman, L. J. (Ed.). San Francisco: Morgan Kaufmann. 536543. 218 Thangiah, S. R. and Nygard, P. L. (1992). School bus routing using genetic algorithms. In: Proceedings of the SPIE Conference on Applications of Artificial Intelligence X: Knowledge Based Systems, Orlando. 387–397. Thangiah, S. R., Osman, I. H., Vinayagamoorthy, R. and Sun. T. (1995). Algorithms for the Vehicle Routing Problems with Time Deadlines. American Journal of Mathematical and Management Sciences. 13: 323355. Thierens, D. (2002). Adaptive mutation rate control schemes in genetic algorithms. Institute of information and computing sciences. Technical report UU-CS2002-056, Utrecht University. Tillman, F. A. (1969). The Multiple Terminal Delivery Problem with Probabilistic Demands. Transportation Science. 3: 192-204. Tong, Z., Ning, L. and Debao, S. (2004). Genetic Algorithm for VRPTW with Uncertain Vehicle Number. Proceedings of the Fifth IEEE World Congress on Intelligent Control and Automation, June 15-19, Hangzhou, P. R. China. 2846-2849. Toth, P. and Vigo, D. (2002). An Overview of Vehicle Routing Problems. In P. Toth and D. Vigo (Eds.), The Vehicle Routing Problem, SIAM Monographs on Discrete Mathematics and Applications. Philadelphia. 1-26. Toth, P. and Vigo, D. (2003). The Granular Tabu Search and Its Application to the Vehicle Routing Problems. INFORMS Journal on Computing. 15(4): 333346. Van Veldhuizen, D. and Lamont, G. B. (1998). Multiobjective evolutionary algorithm research: A history and analysis. Technical Report TR-98-03. Department of Electrical and Computer Engineering, Air Force Institute of Technology, Ohio. 219 Valenzuela, C. L. (2000). A Study of Permutation Operators for Minimum Span Frequency Assignment Using an order Based representation. Journal of Heuristics. 7: 5-21. Wassan, N. A., Wassan, A. H. and Nagy, G. (2007). A reactive tabu search algorithm for the vehicle routing problem with simultaneous pickups and deliveries. Journal of Combinatorial Optimization. 15(4): 368-386. Whitley, L. D., Starkweather, T. and Fuquay, D. (1989). Scheduling Problems and Traveling Salesmen: The Genetic Edge Recombination Operator. In Proceedings of the Third International Conference on Genetic Algorithms, Schaffer, J. D. (Ed.). June 1989. George Mason University, Virginia, USA. San Mateo: Morgan Kaufmann. 350-372. Willard, J. A. G. (1989). Vehicle routing using r-optimal tabu search. Master’s thesis, The Management School, Imperial College. Xing, Y. , Chen, Z. Sun, J., and Hu, L. (2007). An Improved Adaptive Genetic Algorithm for Job-Shop Scheduling Problem. Natural Computing. 4: 287291. (The Third IEEE International Conference on Natural Computation ICNC 2007, Prague, Czech Republic). Xu, J. and Kelly, J. P. (1996). A Network Flow-Based Tabu Search Heuristic for the Vehicle Routing Problem. Transportation Science. 30: 379-393. Yang, Wen-Huei., Mathur, K. and Ballou, R. H. (2000). Stochastic Vehicle Routing Problem with Restocking. Transportation Science. 34(1): 99-112. Zitzler, E., Deb, K. and Thiele, L. (2000). Comparison of Multiobjective Evolutionary Algorithms : Empirical Results. Evolutionary Computation. 8: 173-195. 220 APPENDIX A LIST OF PUBLICATIONS - INTERNATIONAL JOURNALS 1. Zuhaimy Ismail and Irhamah. (2008). Adaptive Permutation-Based Genetic Algorithm for Solving VRP with Stochastic Demands. Journal of Applied Sciences. 8(18): 3228-3234. 2. Zuhaimy Ismail and Irhamah. (2008). Solving the VRP with Stochastic Demands via Hybrid Genetic Algorithm - Tabu Search. Journal of Mathematics and Statistics (Accepted Manuscript). 3. Zuhaimy Ismail and Irhamah. (2008). A Breeder Genetic Algorithm for Vehicle Routing Problem with Stochastic Demands. Journal of Applied Sciences Research (Accepted Manuscript). 4. Zuhaimy Ismail, Irhamah and Zaitul Marlizawati Zainuddin. (2008). Dynamic Tabu Search for Vehicle Routing Problem with Stochastic Demands. American Journal of Applied Sciences (Accepted Manuscript). 5. Zuhaimy Ismail and Irhamah. (2008). A Reactive Tabu Search for Vehicle Routing Problem with Stochastic Demands. Submitted to International Journal of Computational and Mathematical Sciences. - INTERNATIONAL/ NATIONAL CONFERENCES 1. Zuhaimy Ismail, Irhamah and Khairil Asmani. (2005). The Vehicle Routing Problems. Minggu Penyelidikan Sains & Matematik 2005, DSI - UTM Skudai, 21–23 September 2005. 2. Zuhaimy Ismail and Irhamah. (2006). Vehicle Routing Problem in Optimizing Solid Waste Collection. Proceedings of National Seminar on Science and Its Applications in Industry, Malacca - Malaysia, 14 – 15 February 2006. 221 3. Zuhaimy Ismail and Irhamah. (2006). A Genetic Algorithm for the Vehicle Routing Problem. Proceedings of Simposium Kebangsaan Sains Matematik Ke-14, Kuala Lumpur – Malaysia, 6-8 June 2006. 4. Irhamah and Zuhaimy Ismail. (2006). Vehicle Routing Problem with Stochastic Demand. Proceedings of The First International Conference on Mathematics and Statistics, Bandung – Indonesia, 19 – 21 June 2006. 5. Irhamah and Zuhaimy Ismail. (2007). Tabu Search for Vehicle Routing Problem with Stochastic Demands. Proceedings of The 3rd International Conference on Research and Education in Mathematics 2007, Kuala Lumpur – Malaysia, 10-12 April 2007. 6. Zuhaimy Ismail and Irhamah. (2007). Genetic Algorithm for Vehicle Routing Problem with Stochastic Demands. Proceedings of The 2nd International Conference on Mathematics and Statistics, UTM Skudai – Malaysia, 28 – 29 May 2007. 7. Zuhaimy Ismail, Irhamah and Loh Serlee. (2007). Look Ahead Heuristic For Modeling Solid Waste Collection Problem. Proceedings of The 2nd International Conference on Mathematics and Statistics, UTM Skudai – Malaysia, 28 – 29 May 2007. 8. Zuhaimy Ismail and Irhamah. (2007). Tabu Search Heuristics for SingleDepot Vehicle Routing Problem with Stochastic Demands. Proceedings of Optimization 2007, Porto - Portugal, 22 – 25 July 2007. 9. Zuhaimy Ismail and Irhamah. (2008). Dynamic Taboo Search for VRP with Stochastic Demands. (2008). Proceedings of Regional Annual Fundamental Science Seminar 2008, Institute of Ibnu Sina, UTM Skudai – Malaysia, 27 – 29 May 2008. 222 APPENDIX B The Kolmogorov-Smirnov Normality Tests One-Sample Kolmogorov-Smirnov Test N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) DIFF_GA_TS_DIFF_GA_TS_DIFF_GA_TS_ DIFF_GA_ RTS_10 10 20 50 20 20 20 20 -2.6500 -5.7200 6.6200 .2500 4.30856 9.85290 8.13774 2.37874 .331 .271 .171 .258 .212 .191 .171 .242 -.331 -.271 -.145 -.258 1.479 1.212 .763 1.154 .025 .106 .606 .139 DIFF_GA_ RTS_20 20 1.1300 8.32479 .287 .156 -.287 1.281 .075 DIFF_GA_ RTS_50 20 23.7200 17.29489 .139 .139 -.109 .621 .835 a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) DIFF_GA_ DIFF_GA_ DIFF_GA_ DIFF_GA_ DIFF_GA_ DIFF_GA_ HGSTSA_10 HGSTSA_20 HGSTSA_50 HGATSB_10 HGATSB_20 HGATSB_50 20 20 20 20 20 20 -.5800 1.4800 9.1450 1.2000 3.8800 25.5700 1.81096 3.96479 8.89248 2.21193 4.87416 16.16888 .426 .248 .145 .274 .173 .110 .183 .248 .145 .274 .173 .110 -.426 -.134 -.126 -.244 -.163 -.081 1.903 1.110 .650 1.227 .773 .494 .001 .170 .792 .098 .588 .968 a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. DIFF_GA_ BGA_10 20 1.0500 2.09649 .292 .292 -.208 1.305 .066 DIFF_GA_ BGA_20 20 2.7300 4.66579 .206 .206 -.116 .922 .363 DIFF_GA_ DIFF_GA_ DIFF_GA_ DIFF_GA_ BGA_50 BIANCHI_10 BIANCHI_20 BIANCHI_50 20 20 20 20 22.6700 .5300 1.2500 18.1700 16.44823 2.57050 7.00192 14.55433 .139 .282 .235 .082 .139 .282 .169 .082 -.109 -.268 -.235 -.052 .623 1.260 1.050 .367 .832 .084 .220 .999 223 One-Sample Kolmogorov-Smirnov Test N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) DIFF_TS_ RTS_10 20 2.9000 4.16628 .307 .307 -.193 1.372 .046 DIFF_TS_ RTS_20 20 6.8500 11.60887 .230 .230 -.199 1.028 .241 DIFF_TS_ DIFF_TS_ DIFF_TS_ DIFF_TS_ RTS_50 HGATSA_10 HGATSA_20 HGATSA_50 20 20 20 20 17.1000 2.0700 7.2000 2.5250 14.31562 2.98295 9.31665 7.83124 .138 .406 .224 .225 .138 .406 .224 .225 -.116 -.244 -.170 -.132 .615 1.816 1.001 1.008 .844 .003 .268 .262 a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) DIFF_TS_ DIFF_TS_ DIFF_TS_ HGATSB_10 HGATSB_20 HGATSB_50 20 20 20 3.8500 9.6000 18.9500 5.64078 10.32320 13.79350 .303 .198 .143 .303 .198 .143 -.247 -.152 -.120 1.353 .884 .639 .051 .416 .809 DIFF_TS_ BGA_10 20 3.7000 5.46857 .301 .301 -.199 1.345 .054 DIFF_TS_ BGA_20 20 8.4500 11.11886 .198 .188 -.198 .884 .415 DIFF_TS_ BGA_50 20 16.0500 14.53661 .186 .186 -.117 .833 .492 a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) DIFF_TS_ DIFF_TS_ DIFF_TS_ DIFF_RTS_ DIFF_RTS_ DIFF_RTS_ BIANCHI_10 BIANCHI_20 BIANCHI_50 BIANCHI_10 BIANCHI_20 BIANCHI_50 20 20 20 20 20 20 3.1800 6.9700 11.5500 .2800 .1200 -5.5500 4.67914 11.38573 13.10426 2.70158 1.77989 6.53537 .302 .243 .192 .391 .327 .163 .302 .243 .192 .391 .327 .139 -.198 -.242 -.109 -.359 -.203 -.163 1.349 1.086 .856 1.750 1.462 .729 .053 .189 .456 .004 .028 .662 a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. DIFF_RTS_ BGA_10 20 .8000 2.48363 .526 .526 -.374 2.354 .000 DIFF_RTS_ BGA_20 20 1.6000 5.42315 .466 .466 -.384 2.084 .000 DIFF_RTS_ DIFF_RTS_ DIFF_RTS_ DIFF_RTS_ BGA_50 HGATSA_10 HGATSA_20 HGATSA_50 20 20 20 20 -1.0500 -.8300 .3500 -14.5750 6.39469 2.14944 9.18394 14.68644 .265 .400 .286 .110 .185 .250 .286 .093 -.265 -.400 -.258 -.110 1.186 1.790 1.281 .494 .120 .003 .075 .968 224 One-Sample Kolmogorov-Smirnov Test DIFF_ DIFF_ DIFF_ DIFF_RTS_ DIFF_RTS_ DIFF_RTS_ HGATSA_ HGATSA_ HGATSA_ HGATSB_10 HGATSB_20 HGATSB_50 HGATSB_10 HGATSB_20 HGATSB_50 20 20 20 20 20 20 .9500 2.7500 1.8500 1.7800 2.4000 16.4250 2.78104 9.12414 3.64583 3.31815 4.13458 13.97768 .484 .276 .256 .404 .292 .127 .484 .276 .244 .404 .292 .127 -.366 -.232 -.256 -.296 -.231 -.106 2.163 1.235 1.145 1.808 1.307 .568 .000 .095 .146 .003 .066 .903 N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test DIFF_BGA_ DIFF_BGA_ DIFF_BGA_ DIFF_BGA_ DIFF_BGA_ DIFF_BGA_ HGATSA_10 HGATSA_20 HGATSA_50 HGATSB_10 HGATSB_20 HGATSB_50 20 20 20 20 20 20 -1.6300 -1.2500 -13.5250 .1500 1.1500 2.9000 3.13236 5.88374 13.94772 .36635 5.83343 7.26853 .399 .283 .155 .509 .278 .245 .251 .201 .096 .509 .278 .205 -.399 -.283 -.155 -.341 -.272 -.245 1.783 1.266 .694 2.276 1.244 1.095 .003 .081 .721 .000 .091 .181 N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test DIFF_ DIFF_ DIFF_ BIANCHI_ BIANCHI_ DIFF_BGA_ DIFF_BGA_ DIFF_BGA_ BIANCHI_ BIANCHI_10 BIANCHI_20 BIANCHI_50 HGATSA_10 HGATSA_20 HGATSA_50 20 20 20 20 20 20 -.5200 -1.4800 -4.5000 -1.1100 .2300 -9.0250 1.68635 3.93548 5.76541 2.72955 8.21943 12.45771 .421 .327 .182 .408 .255 .121 .329 .266 .157 .242 .255 .098 -.421 -.327 -.182 -.408 -.247 -.121 1.883 1.464 .815 1.824 1.142 .541 .002 .027 .520 .003 .147 .932 N a,b Mean Normal Parameters Std. Deviation Most Extreme Absolute Differences Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. One-Sample Kolmogorov-Smirnov Test N Normal Parameters a,b Most Extreme Differences Mean Std. Deviation Absolute Positive Negative Kolmogorov-Smirnov Z Asymp. Sig. (2-tailed) a. Test distribution is Normal. b. Calculated from data. DIFF_ BIANCHI_ HGATSB_50 20 7.4000 5.43749 .158 .158 -.112 .709 .697 DIFF_ BIANCHI_ HGATSB_20 20 2.6300 8.16908 .289 .289 -.274 1.291 .071 DIFF_ BIANCHI_ HGATSB_10 20 .6700 1.75712 .405 .405 -.351 1.813 .003 Asymp. Sig. (2-tailed) Z Asymp. Sig. (2-tailed) Z .028 HGATS_10A BGA_10 -2.197(a) HGATS_1 0B RTS_10 -1.604(b) .109 .018 -2.375(b) HGATS_10A TS_10 .007 -2.708(b) RTS_10 TS_10 a Based on negative ranks. b Based on positive ranks. c Wilcoxon Signed Ranks Test .089 HGATS_10A RTS_10 -1.703(a) RTS_20 BGA_20 -1.604(a) .109 .398 -.844(a) HGATS_10A GA_10 .014 -2.448(a) TS_10 GA_10 Wilcoxon Signed Ranks Test The Paired Samples Test APPENDIX C .083 HGATS_10B BGA_10 -1.732(b) .588 -.542(a) RTS_10 BIANCHI_10 .176 BIANCHI_10 BGA_10 -1.355(a) .798 -.256(b) RTS_20 BIANCHI_20 .026 BIANCHI_ 20 BGA_20 -2.228(a) .180 -1.342(a) RTS_10 BGA_10 225 226 The Wilcoxon Signed Ranks Test Ranks N TS_10 - GA_10 HGATS_10A - GA_10 RTS_10 - TS_10 HGATS_10A - TS_10 RTS_10 - BIANCHI_10 RTS_20 - BIANCHI_20 RTS_10 - BGA_10 RTS_20 - BGA_20 HGATS_10A - RTS_10 HGATS_10B - RTS_10 HGATS_10A - BGA_10 HGATS_10B - BGA_10 BIANCHI_10 - BGA_10 BIANCHI_20 - BGA_20 a TS 10 < GA 10 Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total Negative Ranks Positive Ranks Ties Total 2a 8b 10c 20 4d 4e 12f 20 9g 1h 10i 20 7j 0k 13l 20 2m 3n 15o 20 6p 4q 10r 20 0s 2t 18u 20 0v 3w 17x 20 2y 5z 13aa 20 3bb 0cc 17dd 20 1ee 6ff 13gg 20 3hh 0ii 17jj 20 1kk 4ll 15mm 20 2nn 9oo 9pp 20 Mean Rank 1.75 6.44 Sum of Ranks 3.50 51.50 3.00 6.00 12.00 24.00 6.00 1.00 54.00 1.00 4.00 .00 28.00 .00 2.75 3.17 5.50 9.50 5.00 6.25 30.00 25.00 .00 1.50 .00 3.00 .00 2.00 .00 6.00 2.00 4.80 4.00 24.00 2.00 .00 6.00 .00 1.00 4.50 1.00 27.00 2.00 .00 6.00 .00 2.50 3.13 2.50 12.50 4.00 6.44 8.00 58.00 227 Paired Samples Correlations N Pair 1 Pair 2 Pair 3 Pair 4 Pair 5 Pair 6 Pair 7 Pair 8 Pair 9 Pair 10 Pair 11 Pair 12 Pair 13 Pair 14 Pair 15 Pair 16 Pair 17 Pair 18 Pair 19 Pair 20 Pair 21 Pair 22 Pair 23 Pair 24 Pair 25 Pair 26 Pair 27 Pair 28 Pair 29 Pair 30 Pair 31 Pair 32 Pair 33 Pair 34 Pair 35 Pair 36 Pair 37 Pair 38 Pair 39 Pair 40 Pair 41 Pair 42 Pair 43 Pair 44 Pair 45 Pair 46 GA_20 & TS_20 GA_50 & TS_50 GA_10 & RTS_10 GA_20 & RTS_20 GA_50 & RTS_50 GA_20 & HGATS_20A GA_50 & HGATS_50A GA_10 & HGATS_10B GA_20 & HGATS_20B GA_50 & HGATS_50B BGA_10 & GA_10 BGA_20 & GA_20 BGA_50 & GA_50 GA_10 & BIANCHI_10 GA_20 & BIANCHI_20 GA_50 & BIANCHI_50 TS_20 & RTS_20 TS_50 & RTS_50 TS_20 & HGATS_20A TS_50 & HGATS_50A TS_10 & HGATS_10B TS_20 & HGATS_20B TS_50 & HGATS_50B BGA_10 & TS_10 BGA_20 & TS_20 BGA_50 & TS_50 BIANCHI_10 & TS_10 BIANCHI_20 & TS_20 BIANCHI_50 & TS_50 HGATS_20A & HGATS_ 20B HGATS_50A & HGATS_ 50B BIANCHI_20 & HGATS_20A BIANCHI_50 & HGATS_50A BIANCHI_20 & HGATS_20B BIANCHI_50 & HGATS_50B BIANCHI_50 & RTS_50 BGA_50 & RTS_50 RTS_20 & HGATS_20A RTS_50 & HGATS_50A RTS_20 & HGATS_20B RTS_50 & HGATS_50B BGA_20 & HGATS_20A BGA_50 & HGATS_50A BGA_10 & HGATS_10B BGA_50 & HGATS_50B BGA_50 & BIANCHI_50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Correlation .968 .973 .998 .977 .871 .995 .967 .998 .992 .890 .998 .993 .886 .997 .983 .916 .955 .915 .971 .974 .988 .964 .923 .989 .959 .913 .991 .957 .934 Sig. .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 20 .994 .000 20 .913 .000 20 .977 .000 20 .935 .000 20 .977 .000 20 .982 .000 20 20 20 20 20 20 20 20 20 20 20 .975 .976 .971 .902 .971 .992 .988 .913 1.000 .968 .980 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 GA_20 - TS_20 GA_50 - TS_50 GA_10 - RTS_10 GA_20 - RTS_20 GA_50 - RTS_50 GA_20 - HGATS_20A GA_50 - HGATS_50A GA_10 - HGATS_10B GA_20 - HGATS_20B GA_50 - HGATS_50B BGA_10 - GA_10 BGA_20 - GA_20 BGA_50 - GA_50 GA_10 - BIANCHI_10 GA_20 - BIANCHI_20 GA_50 - BIANCHI_50 TS_20 - RTS_20 TS_50 - RTS_50 TS_20 - HGATS_20A TS_50 - HGATS_50A TS_10 - HGATS_10B TS_20 - HGATS_20B TS_50 - HGATS_50B Pair 1 Pair 2 Pair 3 Pair 4 Pair 5 Pair 6 Pair 7 Pair 8 Pair 9 Pair 10 Pair 11 Pair 12 Pair 13 Pair 14 Pair 15 Pair 16 Pair 17 Pair 18 Pair 19 Pair 20 Pair 21 Pair 22 Pair 23 18.95 9.60 3.85 2.52 7.20 17.10 6.85 18.10 1.25 .53 -22.670 -2.730 -1.050 25.570 3.880 1.200 9.145 1.480 23.720 1.130 .250 6.620 -5.720 Mean 13.79350 10.32320 5.64078 7.83124 9.31665 14.31562 11.60887 14.55433 7.00192 2.57050 16.44823 4.66579 2.09649 16.16888 4.87416 2.21193 8.89248 3.96479 17.29489 8.32479 2.37874 8.13774 3.08432 2.30834 1.26132 1.75112 2.08327 3.20107 2.59582 3.25445 1.56568 .57478 3.67794 1.04330 .46879 3.61547 1.08990 .49460 1.98842 .88655 3.86726 1.86148 .53190 1.81965 2.20317 12.49445 4.76859 1.21003 -1.14013 2.83967 10.40009 1.41688 11.35836 -2.02700 -.67303 -30.36801 -4.91366 -2.03119 18.00273 1.59882 .16479 4.98319 -.37558 15.62574 -2.76612 -.86329 2.81142 -10.33130 Lower 25.40555 14.43141 6.48997 6.19013 11.56033 23.79991 12.28312 24.98164 4.52700 1.73303 -14.97199 -.54634 -.06881 33.13727 6.16118 2.23521 13.30681 3.33558 31.81426 5.02612 1.36329 10.42858 -1.10870 Upper Paired Differences Std. Error 95% Confidence Interval Mean of the Difference 9.85290 Std. Deviation Paired Samples T-test 6.144 4.159 3.052 1.442 3.456 5.342 2.639 5.583 .798 .922 -6.164 -2.617 -2.240 7.072 3.560 2.426 4.599 1.669 6.134 .607 .470 3.638 -2.596 t df 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 .000 .001 .007 .166 .003 .000 .016 .000 .435 .368 .000 .017 .037 .000 .002 .025 .000 .111 .000 .551 .644 .002 .018 Sig. (2-tailed) 228 BGA_10 - TS_10 BGA_20 - TS_20 BGA_50 - TS_50 BIANCHI_10 - TS_10 BIANCHI_20 - TS_20 BIANCHI_50 - TS_50 HGATS_20A - HGATS_20B HGATS_50A - HGATS_50B BIANCHI_20 - HGATS_20A BIANCHI_50 - HGATS_50A BIANCHI_20 - HGATS_20B BIANCHI_50 - HGATS_50B BIANCHI_50 - RTS_50 BGA_50 - RTS_50 RTS_20 - HGATS_20A RTS_50 - HGATS_50A RTS_20 - HGATS_20B RTS_50 - HGATS_50B BGA_20 - HGATS_20A BGA_50 - HGATS_50A BGA_10 - HGATS_10B BGA_50 - HGATS_50B BGA_50 - BIANCHI_50 Pair 24 Pair 25 Pair 26 Pair 27 Pair 28 Pair 29 Pair 30 Pair 31 Pair 32 Pair 33 Pair 34 Pair 35 Pair 36 Pair 37 Pair 38 Pair 39 Pair 40 Pair 41 Pair 42 Pair 43 Pair 44 Pair 45 Pair 46 -4.50 2.90 .15 -13.53 -1.25 1.85 2.75 -14.57 .35 1.05 5.55 7.40 2.63 -9.025 .23 16.425 2.40 -11.55 -6.97 -3.18 -16.05 -3.7 -8.45 Mean 5.76541 7.26853 .36635 13.94772 5.88374 3.64583 9.12414 14.68644 9.18394 6.39469 6.53537 5.43749 8.16908 12.45771 8.21943 13.97768 4.13458 13.10426 11.38573 4.67914 14.53661 1.28919 1.62529 .08192 3.11880 1.31564 .81523 2.04022 3.28399 2.05359 1.42990 1.46135 1.21586 1.82666 2.78563 1.83792 3.12551 .92452 2.93020 2.54593 1.04629 3.25049 1.22281 2.48625 -7.19830 -.50178 -.02146 -20.05273 -4.00368 .14370 -1.52023 -21.44846 -3.94822 -1.94281 2.49135 4.85518 -1.19324 -14.85539 -3.61681 9.88324 .46496 -17.68298 -12.29869 -5.36990 -22.85334 Lower -6.25937 -13.65378 -1.80170 6.30178 .32146 -6.99727 1.50368 3.55630 7.02023 -7.70154 4.64822 4.04281 8.60865 9.94482 6.45324 -3.19461 4.07681 22.96676 4.33504 -5.41702 -1.64131 -.99010 -9.24666 Upper -1.14063 -3.24622 Paired Differences Std. Error 95% Confidence Interval Mean of the Difference 5.46857 11.11886 Std. Deviation -3.491 1.784 1.831 -4.337 -.950 2.269 1.348 -4.438 .170 .734 3.798 6.086 1.440 -3.240 .125 5.255 2.596 -3.942 -2.738 -3.039 -4.938 -3.026 -3.399 t df 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 .002 .090 .083 .000 .354 .035 .194 .000 .866 .472 .001 .000 .166 .004 .902 .000 .018 .001 .013 .007 .000 .007 .003 Sig. (2-tailed) 229 230