A hierarchical multiobjective problem for green logistics
Texto completo
(2)
(3)
(4) Dedication. To my parents and to all people who enjoys spend their time doing research in order to make the world better.. 1.
(5) Acknowledgements. I would like to express my gratitude to my parents for supporting me during the past two years. The countless times that they helped me to be well prepared for my classes and their unconditional attention. Especially to my mother who always sought my health and well-being when she saw me spending countless hours with homework and projects. I want to thank also to Tecnológico de Monterrey and CONACyT for the scholarships that were granted to me. This could not have been possible without their assistance. To Dr. José Fernando Camacho Vallejo for recommend me with my adviser, without that this would not have happened. To Dr. José González Velarde for advising me in my research and giving me the opportunity to do an abroad semester. Thank you to Dr. Martine Labbé and Dr. Diego Cattaruza for work with me during my stay in France and for being really supportive. Finally, I want to thanks all the people I met in the past years. Especially to Erim Sezer and the rest of my office mates who joined me in all those hours that we spent working together and laughing at the office, I really appreciate you all.. 2.
(6) A Hierarchical Multiobjective Problem for Green Logistics by Luis Alberto Salazar Zendeja Abstract Throughout all the extension of this thesis a situation where a distribution company and a manufacturer company work within a supply chain in a hierarchically manner. Each one of them has to optimize their own operations to minimize costs in the case of the manufacturer company and maximize profit as well as minimize CO2 emissions for the distribution company. A green logistic approach is also desired in this research, which is one of the reasons that a minimization of greenhouse gas emissions is considered. The resulting formulation of the problem is a multiobjective bilevel model, therefore a GRASP metaheuristic within a weighted sum method was developed to tackle this problem. In addition, a second simpler methodology which consists to reformulate the problem only as a selection of the customers that will be visited was used. In the latter methodology, the specific modeling known as the Multiple Choice Model was implemented to remove the bilevel aspect of the situation resulting in an easier model. Afterwards, this model was solved by a proposed Labeling Algorithm which will be compared with the traditional -constraint method for multiobjective problems. Twelve test instances were generated in order to assess both methodologies. The experimental results as well as the approximated Pareto front are shown. Finally, this thesis work presents the importance of using these kind of modeling techniques in a supply chain.. 3.
(7) List of Figures 2.1. Notation for a segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 12. 4.1 4.2 4.3 4.4 4.5 4.6. Constructive in series . . . . . . . . . . . . . . . . . Random constructive in series . . . . . . . . . . . . Parallel constructive . . . . . . . . . . . . . . . . . . Random parallel constructive . . . . . . . . . . . . . Notation for each segment . . . . . . . . . . . . . . Graphical Behavior of the lower level for three plants. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. . . . . . .. 21 21 22 22 30 30. 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10 5.11 5.12 5.13 5.14 5.15 5.16 5.17 5.18 5.19 5.20 5.21 5.22 5.23 5.24 5.25 5.26 5.27. Parameters and time results . . . . . . . . . . . . . . . . . . Average resources used . . . . . . . . . . . . . . . . . . . . Minimum and Maximum of Emissions and Profits and Costs Solutions for Instance 1 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 2 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 3 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 4 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 5 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 6 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 7 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 8 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 9 . . . . . . . . . . . . . . . . . . . . Solutions for Instance 10 . . . . . . . . . . . . . . . . . . . Solutions for Instance 11 . . . . . . . . . . . . . . . . . . . Solutions for Instance 12 . . . . . . . . . . . . . . . . . . . Labeling Algorithm Results . . . . . . . . . . . . . . . . . . LA Solutions for Instance 1 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 2 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 3 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 4 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 5 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 6 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 7 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 8 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 9 . . . . . . . . . . . . . . . . . . LA Solutions for Instance 10 . . . . . . . . . . . . . . . . . LA Solutions for Instance 11 . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 35 36 36 37 37 37 37 37 37 38 38 38 38 38 38 39 40 40 40 40 41 41 41 41 41 41 42. 4. . . . . . .. . . . . . .. . . . . . ..
(8) 5.28 5.29 5.30 5.31 5.32. LA Solutions for Instance 12 . . . . . . . . . . . . . . . Comparison between GRASP and LA . . . . . . . . . . Comparison between Original and Modified Algorithms Solutions for original algorithm . . . . . . . . . . . . . . Solutions for modified algorithm . . . . . . . . . . . . .. 5. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. 42 42 43 43 43.
(9) List of Tables 2.1. Notation for the Mixed-Integer Problem . . . . . . . . . . . . . . . . . . . .. 12. 3.1. Sets, variables and Parameters . . . . . . . . . . . . . . . . . . . . . . . . .. 17. 4.1. Sets, variables and Parameters for the STP . . . . . . . . . . . . . . . . . . .. 28. 6.
(10) Contents Abstract. 3. List of Figures. 5. List of Tables. 6. 1. . . . .. 1 1 2 2 3. . . . . . . . . . .. 4 4 5 6 8 9 10 11 13 13 14. 3. Mathematical Model 3.1 Problem Description and Formulation . . . . . . . . . . . . . . . . . . . . .. 16 16. 4. Resolution Methodologies 4.1 Methodology of the Weighted sum with a GRASP metaheuristic 4.2 Labeling Algorithm Methodology . . . . . . . . . . . . . . . . 4.2.1 Single Trip Model . . . . . . . . . . . . . . . . . . . . 4.2.2 From bilevel to single level . . . . . . . . . . . . . . . . 4.2.3 Labeling Algorithm . . . . . . . . . . . . . . . . . . . .. 20 20 27 27 29 31. 2. Introduction 1.1 Problem Statement and Context 1.2 Motivation . . . . . . . . . . . . 1.3 Contribution . . . . . . . . . . . 1.4 Thesis Structure . . . . . . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. . . . .. Literature Review 2.1 Multiobjective Optimization . . . . . . . . . . . . . . . 2.1.1 Solution methods for Multiobjective problems . 2.2 Bilevel Optimization . . . . . . . . . . . . . . . . . . . 2.2.1 Solution methods for Bilevel problems . . . . . 2.3 Applications of Multiobjective and Bilevel programming 2.3.1 Green Logistics . . . . . . . . . . . . . . . . . . 2.4 Multiple Choice Model . . . . . . . . . . . . . . . . . . 2.5 Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Variable Neighborhood Descent . . . . . . . . . 2.5.2 GRASP . . . . . . . . . . . . . . . . . . . . . .. 7. . . . .. . . . . . . . . . .. . . . .. . . . . . . . . . .. . . . .. . . . . . . . . . .. . . . .. . . . . . . . . . .. . . . .. . . . . . . . . . .. . . . . .. . . . .. . . . . . . . . . .. . . . . .. . . . .. . . . . . . . . . .. . . . . .. . . . .. . . . . . . . . . .. . . . . .. . . . .. . . . . . . . . . .. . . . . .. . . . .. . . . . . . . . . .. . . . . .. . . . . ..
(11) 5. Experimental Results 5.1 Weighted sum results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Labeling Algorithm results . . . . . . . . . . . . . . . . . . . . . . . . . . .. 34 35 39. 6. Conclusions. 44. Bibliography. 48. 8.
(12) Chapter 1 Introduction Supply Chain Management (SCM) consists in the administration of all parts involved in the management of a product or service that will be delivered to a customer. During the last few decades the SCM has been a crucial part of handling goods or providing services. This boosted the research on the topic in order to obtain better results regarding profit increment or cost reduction. Nowadays, it is convenient to represent the situation within a SCM as a mathematical model. Consequently, a great number of research has been conducted; a concrete example is [?] in which the authors proposed a model to optimize transportation costs of a cross-dock operation. [?] provides a review of how important facility location problems are inside a SCM. However, when the processes of SCM are optimized usually environmental issues are not taken into consideration. This is because the markets’ concerns are normally focused in obtaining the best profit or the least cost possible inducing a considerable amount of pollution. The higher the amount of products produced by a certain factory, the higher the amount of greenhouse gases emissions and wastes of substances or materials are produced. New technologies allow the pollution reduction but a different optimization approach also helps. A small comprobation of the latter can be find in [?] where a mixed integer decision-making model is proposed to reduce greenhouse gas emissions by municipal solid waste, also in [?] the same goal is pursued but a distinct model is used. The reader is addressed to [?] for a wider survey of the usage of mathematical models seeking environmental purposes. The importance of the SCM and environmental issues has been stated over the years by different researchers and organizations. Therefore, a routing problem with CO2 gas emitted by vehicles and an assignment problem both within a SCM are treated. Different solving methods were developed in the resolution of the model to obtain diverse solutions and insights.. 1.1. Problem Statement and Context. A company that produces or sells goods must identify how many products to produce in each season of the year, how much material it needs to produce them or the maximum capacity of. 1.
(13) CHAPTER 1. INTRODUCTION. 2. its production plants during different situations. Additionally, it might be production schedules, delivery itineraries, vehicle routes used to distribute goods, warehouse capacities, etc. Everything mentioned above is part of the SCM. The SCM procures optimal management of all tasks to achieve objectives imposed by the decision maker. It is common that there is not only one decision maker within a supply chain and it can happen that a decision done by one of them may or may not affect the decisions of the other causing an inefficient result. However, a hierarchy is commonly used in these kind of cases thus one of all the decision maker must decide first then a second one and so on. However this approach sometimes has a flaw. Considering a case in which two companies work hierarchically within a supply chain, some new environmental policies were imposed, therefore the companies must take care of not to produce too much CO2 gas emissions and also maintaining profitable the supply chain. Furthermore, it is not possible for the second company to reduce its CO2 gas emissions; because of this the task of meeting this new policies relies in the first company. It can be noticed that it does not matter what the second company decides, the pollution made by it will affect the decision of the first one. Bilevel programming is a tool of the operations research used to model situations where a hierarchy prevails while the multiobjective programming, as it name suggests, is used when several goals are pursued. The previously explained scenario is treated during this thesis using bilevel and multiobjective optimization for the mathematical model.. 1.2. Motivation. It is commonly known that the improvement of the SCM is an important matter at the moment of deliver a product or service to a customer. Nevertheless, it is also known that goods transportation plays an important part in the production of CO2 gas emissions; [?] estimates 23% of world energy-related CO2 gas emissions is produced by the transport sector and 74% of it belongs to road transportation. It is also stated new transport polices must be established in order to mitigate Green House Gases (GHG) emissions. Some countries show an effort to publish new laws and policies ([?], [?], [?], [?]). A major commitment to this cause and more research without forgetting the financial aspect of the SCM will have an impact in the sustainability of the environment.. 1.3. Contribution. Recently, operations research applied to environmental issues has been applied to solve complex problems as mentioned above, however, research using a merge between bilevel and multiobjective programming is scarce. Therefore, an approach almost not seen but quite efficient is used and some techniques to avoid the complexity of these problems are applied.
(14) CHAPTER 1. INTRODUCTION. 3. without eliminating the essence of this approach. Exact methods and an a widely used metaheuristic is employed to solve the model proving that there is no necessity to draw on new resolution methods for a new approach.. 1.4. Thesis Structure. The first chapter presents an introduction about the problem context. Furthermore, the problem is described, as well as the motivation and the contribution of this research. The second chapter shows a detailed literature review about multiobjective and bilevel optimization and its classics methods of resolution. Subsequently, some articles which tackle SCM problems are listed; specially the ones that treat green logistic models. To understand better the latter, the term green logistics is also explained. Afterwards, a mathematical model called Multiple Choice Model is explained and some equivalences of it. To finish the chapter, two known heuristics will be shown: GRASP and VND. The mathematical model is formally presented in chapter three. First, the problem is properly described and the sets, parameters and variables are defined. Second, the formulation of the mathematical model is shown. Chapter four describes two proposed methodologies to solve the problem, one using a GRASP metaheuristic with a VND in the local search and a reformulation of the bilevel aspect of the problem to subsequently use the labeling algorithm. In chapter five the computational experimentation is shown. The used computational environment is specified; the instances are described and the results of both methodologies are presented. The results are analyzed and important remarks are discussed. Finally, the last chapter shows the conclusions of this thesis work and future work..
(15) Chapter 2 Literature Review Some definitions, theorems and concepts are used throughout the thesis, for this reason the current chapter is focused in briefly explaining the most frequently used. The first section will pinpoint the basics of multiobjective programming along with some classic solution methods in which the second section will show the basics of bilevel programming. A section compiling some articles applying these approaches along with the definition of Green Logistics is shown next. Afterwards, a singular model and its equivalences are the focus of the next section. The final section describes two well-known heuristics.. 2.1. Multiobjective Optimization. It is often seen that industrial designers face situations in which they need to diminish the performance of one specific attribute to improve another. Consider the design of a desk; it must be big but compact, though but light, cheap but classy, etc. To know which characteristics contribute the most to the overall value of the design is not an easy task. There is where multiobjective optimization takes place. The process of optimizing systematically and simultaneously a collection of objective functions is called Multiobjective Optimization (MOO) or vector optimization ([?]). The general MOO problem is the next one: minimize F(x) = [F1 (x), F2 (x), . . . , Fn (x)]T x. subject to gj (x) ≤ 0, j = 1, . . . , m. hl (x) = 0, l = 1, . . . , k.. (2.1). where n is the number of objective functions, m and l are the number of inequality and equality constraints respectively; x ∈ E n is a vector of decision variables of n independent variables xi whereas F(x) ∈ E n is a vector of objectives functions Fi (x) : E q → E 1 . The set X = {x | gj (x) ≤ 0, j = 1, . . . , m; ∧ hl (x) = 0, l = 1, . . . , k} is called feasible decision space and the set Y = {F(x) | x ∈ X} is called feasible criterion space. With a feasible set of points for a lineal programming problem it is easy to determine when an element of the set is better than another one. This is done comparing the objective 4.
(16) CHAPTER 2. LITERATURE REVIEW. 5. values of those elements. In the MOO is not that simple due to the multiple objective functions of the problem. Namely, a point may be better in some objectives but worse in other ones. In order to determine the quality of a solution, [?] provides some definitions. Definition 1. Non-Dominated and Dominated: A vector of objectives functions, F(x∗ ) ∈ Y, is non-dominated iff there does not exist another vector, F(x) ∈ Y, such that F(x) ≤ F(x∗ ) with at least one Fi (x) < Fi (x∗ ). Otherwise, F(x∗ ) is dominated. Definition 2. Pareto Optimal: A point, x∗ ∈ X, is Pareto optimal iff there does not exist another point, x ∈ X, such that F(x) ≤ F(x∗ ), and Fi (x) < Fi (x∗ ) for at least one function. It can be inferred from both definitions that if a point x ∈ X is pareto optimal then F(x) ∈ Y will be non-dominated. It is typically called to the set of all non-dominated points as Pareto Front.. 2.1.1. Solution methods for Multiobjective problems. A wide variety of solving methods for MOO can be found in the literature; over time new methods have been proposed or existing ones were improved somehow. Now, it will be shown only the most basic classics methods for MOO problems. -constraint method This method minimizes one of the objectives while the other functions become upper bounded constraints, leaving the model as next: minimize F1 (x) x. subject to F2 ≤ 2 F3 ≤ 3 ... Fn ≤ n gj (x) ≤ 0, j = 1, . . . , m. hl (x) = 0, l = 1, . . . , k.. (2.2). The model is transformed to a single objective problem; solving it with existing methods for lineal programming and varying the values of i non-dominated solutions can be obtained. Results, comparitions with other methods, advantages and disadvantages are described in [?]. Weighted sum method The weighted sum method is the most used for MOO problems due to its simplicity and properties. The method consists in define weights ωi ≥ 0 for each objective function such P that ni=1 ωi = 1. The omegai are multiplied by their correspondent objective function then the model becomes:.
(17) CHAPTER 2. LITERATURE REVIEW. minimize x. n X. 6. ωi Fi (x). i=1. subject to gj (x) ≤ 0, j = 1, . . . , m. hl (x) = 0, l = 1, . . . , k. ωi ∈ [0, 1], i = 1, . . . , n.. (2.3). As before, this becomes a single objective problem where solving the problem while varying the values of ωi aproximates the Pareto front. Some results shows if all the weights are positive then the solution is pareto optimal ([?]); this avoids the task of checking the dominance of the solutions. One characteristic of this method set the weights according to the preferences of the decision-maker; higher the value of the weight for a certain objective higher will be its importance when solving the problem. More characteristics can be found in [?]. Lexicographic method The lexicographic method is sequential. Each objective is ordered according to its importance then the next problem is solved: minimize f1∗ = F1 (x) x. subject to gj (x) ≤ 0, j = 1, . . . , m. hl (x) = 0, l = 1, . . . , k.. (2.4). where f1∗ represents the optimal value of the first objective. For the new optimization problem, f1∗ must be added as a constraint as next: minimize f2∗ = F2 (x) x. subject to F1 (x) = f1∗ gj (x) ≤ 0, j = 1, . . . , m. hl (x) = 0, l = 1, . . . , k.. (2.5). Subsequently, f2∗ will be added as a constraint and this process will continue until all n objective functions are considered. In each iteration the optimum value is added; in this manner the method keeps the best solution for the more important objectives.. 2.2. Bilevel Optimization. Bilevel Programming (BP) is a particular case of Multilevel Programming, the latter was developed for planning problems within a hierarchic organization with multiple decisionmakers. These decisions are taken in a sequential and non-cooperative manner. A BP problem is a hierarchic problem with two optimization problems called upper and lower level. Each decision-maker optimizes their own objectives independently but each decision taken by one of them affects the decision space of the other ones..
(18) CHAPTER 2. LITERATURE REVIEW. 7. A BP problem is defined as: minimize F (x, y) x,y. (2.6). subject to g(x, y) ≤ 0 where y, for each value of x, is the optimal solution for the so called lower level minimize f (x, y) y. (2.7). subject to h(x, y) ≤ 0 where x ∈ <n , y ∈ <m . In this approach, variables x are called upper level variables and variables y lower level variables. Functions F, f : <n ×<m → < are the objective functions of the upper and lower level respectively. Similarly, g : <n × <m → <p and h : <n × <m → <q are their sets of constraints. The constraints of the lower level must involve the variables of both levels, otherwise the sense of modeling as a BP problem is lost. Due to the similarity between BP and Stackelberg games, it is commonly called leader to the upper level and follower to the lower level. In [?], the author defines the next concepts: Definition 3. Feasible set of the follower. The feasible set of the follower Ω(x) is Ω(x) = {y | h(x, y) ≤ 0} The feasible set of the follower is parameterized by a vector x of the upper level; so that h(x, y) ≤ 0 defines Ω(x) for each vector x. Definition 4. Rational reaction set. The rational reaction set M (x) may be defined as M (x) = {y | y ∈ Argmin{f (x, y) | y ∈ Ω(x)}} Given a vector x, the rational reaction set chooses the optimal solution of the lower level; that is to say for each decision taken by the leader, the follower takes the best decision possible (rational reaction). Definition 5. Induced Region. The induced region IR of a bilevel optimization problem, which represents the feasible region at the upper level optimization problem, is defined by the set IR = {(x, y) ∈ <n × <m | G(x) ≤ 0, y ∈ M (x)} Definition 6. Feasible solution. A solution (x, y) is feasible if (x, y) ∈ IR. Definition 7. Optimal solution. A solution (x∗ , y ∗ ) ∈ IR is an optimal solution if ∀(x, y) ∈ IR, F (x∗ , y ∗ ) ≤ F (x, y) Two approaches are used at the moment to model with BP. The first one is the Optimistic BP; this one, as long as the rational set has multiple solutions, the leader will choose the one that most benefits him. It is said that in the optimistic case exists a cooperative behavior.
(19) CHAPTER 2. LITERATURE REVIEW. 8. between leader and follower. The second approach is called Pessimistic BP; the follower will choose the decision that most affects the leader so he needs to prepare to reduce the ’damage’ caused by the decision of the follower.. 2.2.1. Solution methods for Bilevel problems. In 1985 was proved by [?] that the simplest BP problems, which are lineal problems, are NP-hard. Afterwards in 1992, [?] showed that they are strongly NP-hard. Due to this, it has been developed enumerative algorithms, optimality conditions and heuristics with the purpose of solve these problems in and quick and efficient manner. Some are mentioned next. Extreme points approach for the lineal case The lineal case of BP problems is when the objective functions and constraints are lineal. One of the properties of these particular problems is that the solution set contains at least one vertex of the constraint region defined by Ω = {(x, y) | g(x, y) ≤ 0, h(x, y) ≤ 0}. Several algorithms were proposed using this approach. One of the most famous methods is the K-th best method proposed by [?]. Here it is considered a basis of the relaxed problem of the BP problem general formulation ordered increasingly by the value of the upper level objective function; the algorithm stops at the minimum index K corresponding to a rational base, which is the global optimum. Active Inequalities This method is used too for lineal BP problems. The optimality of the lower level most of the times implies in equalities in a minimum number of the lower level constraints. Hence, a formulation using inequalities with artificial variables can be done. A branch-and-bound algorithm where the branching is done by fixing artificial variables to zero or one is developed. The variables that were fixed to zero force the dual variable of the related inequality to be equal to zero. On the other hand, the variables set at one means equality in the corresponding inequality. These conditions allows to obtain more relations and to decrease the number of lower level variables. Repeated steps of this reduces the lower level to one with uniquely determined feasible solution for each parameter value which then can be inserted into the upper level problem. KKT Optimality Conditions Reduce a BP problem to a single level optimization problem is a useful strategy from the theoretical and computational point of view, even though most of the reformulations are complicated to solve for most of the commercial optimizers. One kind of optimality conditions used to obtain a equivalent signle level problem are the Karush-Khun-Tucker (KKT) conditions. These conditions are introduced replacing the lower level problem. Also they have been applied for problems locally Lipschitz continuous, in the latter it is obtained necessary conditions type Fritz Jhon for the BP problem..
(20) CHAPTER 2. LITERATURE REVIEW. 9. Primal-Dual Optimality Conditions The inherent difficulty of BP problems is the main motivation to reformulate and reduce them to a single level problem using the Primal-Dual optimality conditions. The objective is to change the lower level for the constraints of its dual problem, adding also as constraint the follower objective function equated to its dual objective function with the purpose of the optimal value be the same as its dual optimum. It is pretty common that adding the new constraints the problem lose the linearity, so that if it is possible that function is linearized adding bounding constraints. Finally, it is obtained a single level problem in which known methods can be applied. An example of this can be found in [?].. 2.3. Applications of Multiobjective and Bilevel programming. Many implementations of these models have been done specially when dealing with SCM, some may model only a part of the supply chain and some others model the complete one. This is the case of [?], in which the authors have a supply chain master planning problem which aims to the determination of procurement, production and distribution quantities for facilities in different echelons of a supply chain involving multiple suppliers, one manufacturer and multiple distribution centers. The manufacturer must produce items and deliver them to different distribution centers; the raw materials or sub-assembly parts are provided to the manufacturer by the suppliers. A multiobjective possibilistic mixed integer linear programming model is proposed to integrate the procurement, production and distribution planning considering two conflicting objectives: minimizing the total cost of logistics and maximizing the total value of purchasing. Clearly the last situation resembles some hierarchy among the three involved parts, therefore some authors consider to model problems alike using a multilevel approach. In [?], a framework for enterprise-wide processes is shown. Several production plants must manufacture different products and afterwards send them to multiple warehouses and finally a second party transports all products to different markets. A general bilevel model for this problem is proposed where the leader minimizes its manufacturing costs and distribution costs between plants and warehouses while the follower minimizes inventory costs and transportation costs from warehouses to markets. The authors proclaimed that this modeling is more natural due to the existing hierarchy within an enterprise. However, [?] defines a multiobjective bilevel optimization model for production distribution planning problems. Instead of modeling the manufacturing company as the leader, it is the distribution company who takes the roll of the upper level. The leader must minimize the overall transportation costs as well as the cost of purchasing products from the plants, the follower has two objectives: minimize overall production and minimize storage costs..
(21) CHAPTER 2. LITERATURE REVIEW. 10. We saw three similar situations modeled differently; general advantages and disadvantages can inferred. For example, MOO is easier to solve than BP in the sense that BP are NP-hard. However, it is a set of solutions that comes out from solving an MOO problem that subsequently the decision-makers inside a company need to discuss in order to choose the one that is more convenient for them while BP problems only have a single optimal solution. A multiobjective bilevel model could give better solutions than the ones done by modeling it separately.. 2.3.1. Green Logistics. It is known that the supply chain ends when the product is delivered to the consumer but what happens the product is thrown away? When someone wants to know about this part of the product life usually it is due to ecological reasons. This is because is wanted to recycle the product, pull it apart according to its type (paper, plastic, biodegradable products, etc.) or to transport it to a adequate zone. This situations fit in the Reverse Logistics, which can be defined as procedures made to take the product from the consumer to the supplier after it is thrown away. In the other hand, the term ’Green’ started to gain popularity during the 80s and 90s due to the great amount of produced pollution, therefore the government implemented new guidelines forcing the enterprises and industries to pollute lees, becoming them more friendly to the environment or ’Green’. Problems regarding these kind of situation are considered to belong to the area of Green Logistics. Generally, Green Logistics can be defined as the study of the practices that has as objective the reduction of the polluting processes, as the gas emissions produced during logistics processes, and also to seek for a balance between the economy and the environment. Several articles related to Green Logistics are in the literature. One of them is the Green Vehicle Routing Problem proposed by [?]. Less polluting vehicles called Alternative Fuel Vehicles (AFVs) are used. The route must consider the customers, the warehouse and Alternative Fueling Stations (AFSs). The goal is to obtain a set of routes which minimize the distance to visit a certain amount of customers beginning from the warehouse and come back to the warehouse without exceeding the fuel tank capacity. Also, the routes must include a stop in an AFS to recharge fuel. This formulation may force companies or industries to consider change their fleet to a vehicles similar to AFVs. Another example is the article done by [?]. The authors research a closed-loop SCM problem, where it is taken into account the product when is no longer wanted or is not used. During the research only wastes of electric and electronic equipment is considered. The starting point is a variant of the lot-size model that incorporate remanufacturing decisions. The objective in this variant determine how many items should be manufactured and remanufactured, and to define in which periods manufacturing and remanufacturing should take place..
(22) CHAPTER 2. LITERATURE REVIEW. 11. [?] considers computers as the product to be produced, afterwards it is added a new objective turning the problem into a MOO problem. The first objective minimizes the costs while the second minimizes what they called Cumulative Energy Demand which is the environmental impact of the product. From their research, they came to the conclusion that the supply chains with too much production and energy consuming have more profit when extending the product life and improving it. They also emphasize that in order to apply these methods a detailed research of the life cycle of the product must be done. An article where it is addressed a Green Logistics problem modeled by BP is the case study of [?]. It is considered municipal solid wastes, that is to say, garbage as empty bottles, milk cartons, cans, boxes, etc. The authors proposed a bilevel model, in which the upper level minimize green house gas emissions while the lower level minimizes management costs. The model was used in a case study obtained from a Canadian city, where a committee established a management for municipal solid wastes. The committee came to the decision that the management had to have a minimum greenhouse gas emissions (the wastes have to be transported by vehicles to a dump or to a recyle plant) and furthermore be the least expensive. To solve the problem, the KKT conditions where used, transforming the model to a single level model. In this case the advantages of using a bilevel model are the identification of allocation schemes for the flux of wastes, time, size and site of facility expansions, and the minimization of greenhouse gas emissions and the management cost during the whole process.. 2.4. Multiple Choice Model. Almost all continuous function can be approximated by a set of piecewise linear functions; the quality of the approximation will depend on the quantity of functions used. There are many problems in transportation or production planning where their cost functions have a piecewise linear behavior, therefore mixed-integer models such as the Multiple Choice Model were developed. In [?] three mixed-integer models for piecewise linear function, one of them being the Multiple Choice Model, are shown and proved that are equivalent in the sense that their linear relaxation approximates the cost function by its lower convex envelope; it is going to be used the same notation. ThePgeneral problem can be expressed as min{g(x) | Ax ≥ b, 0 ≤ x ≤ u} where g(x) = j gj (xj ), b and u are vectors and A is a matrix. It is consider model each gj (xj ) therefore the subscript j is taken away. Now, x is a single variable called the load furthermore g(x) assumed to be semicontinuous and g(0) = 0. Table ?? and figure ?? explain the notation for each segment. The first model to be shown is the Incremental the load on a segment P sModel. It defines s s s using the variable z with a total load of x = s z . Variables y are introduced, y s = 1 if z s > 0 and y s = 0 otherwise; this prevents that z s+1 > 0 if z s < bs − bs−1 which means that to posterior segments can not be added load if the previous segment is no completely ”used”. Finally, the gap in the cost between to adjacent breakpoints is defined as fˆ = (f s + cs bs−1 ) −.
(23) CHAPTER 2. LITERATURE REVIEW. Parameter S s cs fs bs−1 bs. 12. Description Set of segments Element of set S Variable cost (the slope) Fixed cost (the cost-intercept) Lower bound (breakpoint), b0 = 0 Upper bound (breakpoint). Table 2.1: Notation for the Mixed-Integer Problem. cs. fs. bs−1. Figure 2.1: Notation for a segment. (f s−1 + cs−1 bs−1 ). Considering the objective function as g(x) = to state the incremental model as: X minimize g(x) = cs z s + fˆs y s x. bs Load. P. s. cs z s + fˆs y s is possible. s∈S. subject to x =. X. zs. s∈S s−1 s+1. bs − b y y s ∈ [0, 1],. (2.8) ≤ z s ≤ bs − bs−1 y s , ∀s ∈ S ∀s ∈ S. all together with the original constraints from the general problem. The variable y s+1 is equal to zero for the last segment. For the Multiple Choice Model the definition for z s slightly change. The total load x 0 will be assigned to variable z s if bs−1 ≤ x ≤ bs and all other variables z s will be equal to zero. The definition of variables y s remains unchangedPbut only one of those variables will be equal to one. The objective function becomes g(x) = s cs z s +f s y s . Therefore, the Multiple Choice Model would be: X minimize g(x) = cs z s + f s y s x. s∈S. subject to x =. X. zs. s∈S s−1 s. b y ≤ z s ≤ bs y s , X ys ≤ 1 s∈S s. y ∈ [0, 1],. ∀s ∈ S. (2.9). ∀s ∈ S. The last modeled is called Convex Combination Model. The load that lies in segment s is a convex combination of its breakpoints, therefore multipliers µs and λ2 as weights of the breakpoints are P defined. Variables y s remain unchanged. The objective function can be s s s−1 written as g(x) = + f s ) + λs (cs bs + f s ). The constraints and the objective s µ (c b function for this model are:.
(24) CHAPTER 2. LITERATURE REVIEW. minimize g(x) =. X. x. 13. µs (cs bs−1 + f s ) + λs (cs bs + f s ). s. subject to x = s. X. (µs bs−1 + λs bs ). s∈S s. µ + λ = ys, X ys ≤ 1 s∈S s. y ∈ [0, 1], µs , λs ≥ 0,. ∀s ∈ S. (2.10). ∀s ∈ S. The scope of this subsection is only to state these three equivalent models that is why the reader is again addressed to [?] for the full proof of this equivalence and some other useful information.. 2.5. Heuristics. Heuristics methods have been the most used methods during the past few decades due to their efficiency at finding quality solutions in less time than exact methods. This section is focused in explaining two famous heuristics: GRASP and VND. Some characteristics and their pseudo-code for the algorithms will be stated.. 2.5.1. Variable Neighborhood Descent. In order to talk about the Variable Neighborhood Descent (VND) procedure, first it is necessary to discuss the basics of the Variable Neighborhood Search heuristic (VNS). VNS represents a flexible framework for building heuristics for approximately solving combinatorial and non-linear continuous optimization problems ([?]). There are three phases during VNS which are the Shaking procedure, the Improvement procedure and the Neighborhood change step. The main objective of the shaking procedure is to avoid to fall in local minimum solutions. One of the more commonly used shaking procedures is to obtain a random solution from a neighborhood structure from an already known set of neighborhoods. The Neighborhood change step helps to know which neighborhood will be the next to explore and whether a solution is accepted to be the new incumbent solution or not. As the names indicate, the improvement procedure is a procedure that improves the quality of a current solution. One of these procedures is VND; it can also be find in the literature tagged as local search. A local search explores a neighborhood surrounding an initial solution with the purpose to find a better solution at each iteration. The search finishes once a local optimum for that neighborhood is found. One strategy used in a local search is the Best Improvement; once the algorithm finds a better solution the procedure finishes..
(25) CHAPTER 2. LITERATURE REVIEW. 14. The VND procedure explores several neighborhood structures either in a sequential or nested fashion to possibly improve a given solution ([?]). The basic sequential VND explores an ordered set of neighborhoods structures. Given an incumbent solution, the VND starts to iteratively search a better solution in the neighborhoods according to the predefined order. Once a better solution is found, it is set as the new incumbent solution and the procedure starts the search from the first neighborhood. The algorithm stops when the incumbent solution cannot be improved anymore.. 2.5.2. GRASP. GRASP (greedy randomized adaptive search procedure) is a multistart or iterative metaheuristic, in which each iteration consists of two phases: construction and local search. The construction phase builds a solution. If this solution is not feasible, then it is necessary to apply a repair procedure to achieve feasibility. Once a feasible solution is obtained, its neighborhood is investigated until a local minimum is found during the local search phase. The best overall solution is kept as the result ([?]). The algorithm ?? shows a generic pseudo-code for GRASP. Algorithm 1: A generic GRASP pseudo-code 1: 2: 3: 4: 5: 6: 7: 8: 9:. function GRASP InputInstance(); for GRASP solution criterion not satisfied → do ConstructionGreedyRandomizedSolution(Solution); LocalSearch(Solution); UpdateSolution(Solution, BestSolutionSolution); end for return BestSolutionF ound end function. The Construction phase builds a solution from nothing. To do so, a candidate list E of all elements that can be added to the solution is built at each iteration. All elements are evaluated by a greed evaluation function which determine the incremental increase in the cost function due to the incorporation of the element to the solution under construction, this is c(e) with e ∈ E. This evaluation creates a restricted candidate list (RCL) formed by the elements whose addition to the solution gives the smallest incremental cost. The latter is done in the next way: for each GRASP iteration, consider cmax and cmin as the largest and smallest incremental costs, respectively. Quality solutions are commonly used (value based) to build the RCL, therfore let α ∈ [0, 1] be the threshold parameter. The element that will be added to the solution under construction must belong to c(e) ∈ [cmin , cmin + α(cmax − cmin )]. If α = 0 the GRASP becomes purely greedy, while α = 1 becomes it a random algorithm. One random element of the RCL is added to the solution then the candidate list is updated and the costs are evaluated again. The algorithm continues as long as there exist one candidate. The pseudo-code is presented in the algorithm ??..
(26) CHAPTER 2. LITERATURE REVIEW. 15. It is illustrated in algorithm ?? a basic local search using as initial solution the solution constructed in the previous phase and a neighborhood N . In most of the cases, the construction phase does not produce an optimal solution, therefore, the local search is in charge of improving the current solution until it becomes the optimum for that neighborhood. The solution is replaced for a better solution in its neighborhood iteratively until no better solution is found.. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:. 1: 2: 3: 4: 5: 6: 7:. Algorithm 2: Pseudo-code of the construction phase function C ONSTRUCTION G REEDY R ANDOMIZED S OLUTION(α, Seed) Solution ← ∅; Initialize the set of candidate elements: C ← E; Evaluate the incremental costs c(e) for all e ∈ C; while C 6= ∅ do cmin ← min{c(e) | e ∈ C}; cmax ← max{c(e) | e ∈ C}; RCL ← {e ∈ C | c(e) ≤ cmin + α(cmax − cmin )} Select an element s from the RCL at random; Solution ← Solution ∪ {s}; Update the set of candidate elements C; Reevaluate the incremental costs c(e) for all e ∈ C; end while return Solution end function. Algorithm 3: Pseudo-code of the local search phase function L OCAL S EARCH(Solution) while Solution is not locally optimal do s0 ∈ N (Solution) with f (s0 ) < f (Solution); Solution ← s0 ; end while return Solution end function. There are only two parameters considered when doing a GRASP, the value α used during the construction phase and the number of iterations used as a stop criterion in algorithm ??. If there is a small number of iterations, the final solution might be not as good as solution resulting from a GRASP with a higher number of iterations nevertheless higher number of iterations will concur in a greater computational time. The trade-off between the quality of the solution and the computational time will depend on the decision-maker..
(27) Chapter 3 Mathematical Model In this chapter the problem will be stated, then the mathematical model will be explained and all its components will be described and certain important aspects that have to be taken into account in order to solve it will be justified.. 3.1. Problem Description and Formulation. Considering a situation in which two companies interact hierarchically between each other within a SCM. One them is in charge of acquiring certain product and distributing it among a subset of customers; while the second one produces the mentioned products. Hierarchical problems can be modeled as bilevel programming problems. These problems consider two decision levels known as upper and lower level, respectively. Commonly, the upper level is associated to a leader and the lower level to a follower. In this problem, it is assumed that the shipping company will be the leader and the producer one will be follower. The leader has to plan a routing among the selected customers such that maximizes the obtained profit. Furthermore, because there exist industry or governmental regulations, the routing must pollute the less possible, to accomplish this different types of vehicles will be selected which have distinct CO2 gas emission indexes. It is easy to see that the higher the amount of selected customer, higher will be the pollution incurred by the leader. Therefore, two objectives are established: minimize CO2 gas emissions and maximize profit obtained by satisfying demands of selected customers. On the other hand, once customers has been selected, the leader has to acquire the necessary products to cover the accumulated demand. In this case, the follower has several capacitated plants to produce the demand asked. It must decide how much amount of goods must produce in each plant to subsequently send them to the only distribution center. The objective of the follower will be minimize production and shipping costs. Production plants have a pollution index to manufacture each product; likewise, there is a maximum permissible pollution as well as production capacity per plant. The production company has to decide its production plan once the shipping company has selected the customers to serve. The production plan will affect both objectives of the 16.
(28) CHAPTER 3. MATHEMATICAL MODEL. Sets: I L V (l) M. Customer set Vehicle types set Vehicle set of type l ∈ L Plant set. Parameters: k(l) el rl cl Qmax l g φ dij Di hi tij tmax Em 1 Cm 2 Cm εmax m Πmax m. kth vehicle type l CO2 gas emission constant of vehicle type l Rent cost of vehicle type l Factor cost per distance traveled of vehicle type l Maximum capacity available of the vehicle type l Selling price per product Factor that converts distance in time Distance traveled from customer i to j. i, j ∈ I Customer demand i Customer service time i Time needed to reach customer j from customer i. It is defined as tij = dij φ + hj Maximum duration of the route CO2 gas emissions constant of plant m ∈ M Acquisition cost per product in plant m Production and shipping cost in plant m Maximum CO2 gas emission allowed in plant m Maximum production capacity available in plant m. Decision variables: Leader xi k(l) yij z k(l) Follower pm. 1, if customer i will be visited, 0, otherwise 1, if arc (i, j) is in the route of vehicle k of type l, 0, otherwise 1, if kth vehicle of type l is used, 0, otherwise Product quantity produced in plant m Table 3.1: Sets, variables and Parameters. 17.
(29) CHAPTER 3. MATHEMATICAL MODEL. 18. shipping company due to CO2 gas emissions done by each plant and the cost of acquire products from each plant. Therefore, this situation can be modeled as a bilevel optimization problem with multiple objectives in the upper level. The sets, parameters and variable decisions for the mathematical model are shown in table ??. The index 0 is considered as the distribution center and every repeated subindex in all parameters like dii or tii are considered equal to zero. The mathematical formulation of the problem is as follows: X. min. X X X. k(l). (el dij )yij +. max. gDi xi −. X. i∈I. rl (. l∈L. E m pm. (3.1). m∈M. i∈I∪{0} j∈I∪{0} l∈L k(l)∈V (l). X. X. X. X. z k(l) ) −. X X X. k(l). (cl dij )yij −. 1 Cm pm. m∈M. i∈I∪{0} j∈I∪{0} l∈L k(l)∈V (l). k(l)∈V (l). X. (3.2) subject to: X. k(l). k(l). (3.3). k(l). ∀ l ∈ L, k(l) ∈ V (l). (3.4). k(l). ∀ l ∈ L, k(l) ∈ V (l). (3.5). k(l). ∀ l ∈ L, k(l) ∈ V (l). (3.6). k(l). ∀ l ∈ L, k(l) ∈ V (l). (3.7). k(l). ∀ l ∈ L, k(l) ∈ V (l). (3.8). k(l). W ⊆I∪{0}, 2≤|W |≤|I|+1 ∀ l∈L, k(l)∈V (l). (3.9). k(l). ∀ i, j ∈ I. (3.10). z k(l) ≤ |V (l)|. ∀l∈L. (3.11). z k(l) ∈ Z+ ∪ {0}. ∀l∈L. (3.12). ∀ i, j ∈ I, l ∈ L, k(l) ∈ V (l). (3.13). yji. j∈I∪{0}. j∈I∪{0}. X. X. ∀ i ∈ I, l ∈ L, k(l) ∈ V (l). yij =. y0j = z k(l). j∈I. X. yi0 = z k(l). i∈I. X. X. tij yij ≤ T max. i∈I∪{0} j∈I∪{0}. X. X. Di yij ≤ Qmax l. i∈I∪{0} j∈I∪{0}. X. X. yij ≤ z k(l) M. i∈I∪{0} j∈I∪{0}. XX. yij ≤ |W | − 1. i∈W j∈W. X X. yij = xi. l∈L k(l)∈V (l). X k(l)∈V (l). k(l). yij , xi ∈ {0, 1}.
(30) CHAPTER 3. MATHEMATICAL MODEL. 19. where variables pm are the optimal solution obtained by solving: min. X. 2 Cm pm. (3.14). m∈M. subject to: X m∈M. pm =. X. Di xi. i∈I εmax m Πmax m. Em pm ≤ pm ≤ pm ≥ 0. (3.15) ∀m∈M ∀m∈M ∀m∈M. (3.16) (3.17) (3.18). The objective functions of the upper level are represented by (??) y (??); (??) minimizes CO2 gas emissions from vehicles and production plants while (??) maximizes profits of meeting the demands of selected customers. Equation (??) is a flow conservation constraint. Equation (??) forces variables z k(l) to be one if there is an arc coming out of the distribution center and 0 otherwise, analogously (??) does the same but only if there is an arc reaching the depot. Inequality (??) guaranties that all routes will not exceed a time limit. Expression (??) does not allow to create a route that exceeds the maximum capacity of the vehicle. It is assured by (??) that if a vehicle is not used there must not be an arc using that vehicle. Equation (??) obliges to variables xi to be one if there is an arc reaching them. That there will not be rented more vehicles than available is guaranteed by (??). Finally, (??) and (??) are respectively the integer and binary constraints for the variables. The problem of the lower level is determined by (??)-(??). Then, (??) represents its objective function, which minimizes production costs. (??) makes the production be exactly the one combined by the demands of the customers selected by the leader; (??) obliges the production plant not to emit more CO2 gases than established and (??) restricts not to exceed the production capacity of the plant. Finally, (??) represents the sign constraint of the decision variables. Two assumptions were made that allowed the problem to be well defined. The optimistic version of the bilevel problem is considered as the first assumption, i.e., in the case that for a decision given by the leader there exist multiple solutions at the lower level, the follower will choose the one that benefit the leader the most. The independence and conflict of interests between both levels is still maintained with this assumption. For the follower, there is no difference at the moment of using any of these multiple solutions; on the other hand, this do not necessarily reflects in the same way for the leader, therefore the optimistic approach is assumed. The second assumption is that there must exist a solution to the problem of the lower level, at least for one decision of the leader..
(31) Chapter 4 Resolution Methodologies It was chosen to develop two different methodologies to solve the problem. The weighted sum method is used in the first approach, in each pair of weights the problem is solved by a GRASP metaheuristic with a VND as local search. In the second methodology, a simplification of the problem using the Multiple Choice Model is done, afterwards the resulting model is solved using a labeling algorithm.. 4.1. Methodology of the Weighted sum with a GRASP metaheuristic. The weighted sum method is one of the easiest ones among the multiobjective optimization solution methods. It transforms the problem to a single objective problem and afterwards it can be solved using a conventional method. However, if this method is applied to this particular problem the bilevel problem remains which is NP-hard. Therefore, a GRASP metaheuristic is used in each iteration of the weighted sum. Algorithm ?? shows the general process of the implementation of these two methods. It can be noticed that the procedure will be done four times, this is because four different construction methods were developed in order to have a wide different range of initial solutions. The first one is called constructive in series; the vehicles are sorted somehow then a customer after being selected from the RCL to be included to the solution is added to the first vehicle and so on until its either capacity or time limit is reached. Afterwards the same process is done but with the second vehicle, then the third one, etc, until all vehicles are filled or there are no more customers. The second constructive called random constructive in series is quite similar to the first one but instead of beginning to include customers starting from first vehicle to the last, this one starts randomly and finishes when there are no more vehicles or customers. Figures ?? and 4.2 illustrate these processes, considering the vehicles as the rows and the numbers as customers. The third one is the parallel constructive; one customer is integrated to the first vehicle then another customer from the RCL is included in the second vehicle and so on. Once the last vehicle is reached, it starts over from the beginning until the capacities are reached. Finally, 20.
(32) CHAPTER 4. RESOLUTION METHODOLOGIES. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:. Algorithm 4: Weighted sum with a GRASP metaheuristic function WSGRASP(α, iterations) InputInstance(); y ← 1; P aretoF ront ← ∅; for y ≤ 4 do for Weighted sum method stop criterion do Solutions ← ∅; for GRASP iterations do ConstructionGreedyRandomizedSolutions[y](Solutions, α); end for Dominance(Solutions); for GRASP iterations do VND(Solutions); end for Dominance(Solutions); P aretoF ront ← P aretoF ront ∪ Solutions; end for y ← y + 1; end for Dominance(P aretoF ront); return P aretoF ront; end function. Figure 4.1: Constructive in series. Figure 4.2: Random constructive in series. 21.
(33) CHAPTER 4. RESOLUTION METHODOLOGIES. 22. Figure 4.3: Parallel constructive. Figure 4.4: Random parallel constructive the random parallel constructive is similar with the only difference that the customer is added to a random vehicle in each iteration. The algorithms are illustrated in Figures 4.3 and 4.4. Algorithms (??) to (??) present the formal pseudo-codes for each one of the constructives. The parameter α is necessary for the procedures; it is used to construct the RCL from where a random customer will be selected. In this GRASP metaheuristic and in all constructive procedures the cost function represents a weighted sum of the two objectives functions leaving apart the terms regarding the follower variables. This is c(j, l, k(l)) = ω(el dij ) − (1 − ω)(gDj − rl z k(l) − cl dij ) where ω ∈ [0, 1] and i is the last customer inserted to the current vehicle. In [?] a standard terminology for multiobjective GRASP methods is stated. The four constructives use the same weighted cost function, therefore our constructive phase is a weighted combined construction. If this way of constructing is chose then a similar process must be done during the local search however, in this research a different approach is followed. The outcome of all constructives is a set of initial solutions which afterwards will be improved by the local search but before, definition 1 about dominance from chapter ?? is going to be applied. Only the non-dominated solutions created during the constructive phase are allowed to be improved by the VND procedure. Within the VND there are two aspects that are desired to improve: the profit obtained by the solution and the overall time spent to visit all costumers. For each one of these aspects, two procedures were done. The first one does a swap between the routes of two vehicles while the second procedure relocates a customer assigned to a vehicle to its best position in the route of the same vehicle, both procedures improves time. The first method that improves profit eliminates an already assigned customer and adds another one that was not assigned during the constructive phase. The last method integrates customers to the solution from the ones that were not assigned. The pseudo-code for the VND is shown in algorithm ??. According to [?] a similar way using a weight of the objective functions to measure the improvement of the solution must be followed in the local search, nevertheless an approach similar to a sequential-combined local search is taken into consideration. This is due.
(34) CHAPTER 4. RESOLUTION METHODOLOGIES. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:. Algorithm 5: Constructive in series function C ONSTRUCTION G REEDY R ANDOMIZED S OLUTIONS [1](Solutions, α) l ← 1; for l ≤ |L| do k(l) ← 1; for k(l) ≤ |V (l)| do Solutions ← ∅; Initialize the set of candidate elements: C ← E; Evaluate the incremental costs c(j, l, k(l)) for all j ∈ C; while C 6= ∅ do cmin ← min{c(j) | j ∈ C}; cmax ← max{c(j) | j ∈ C}; RCL ← {j ∈ C | c(j) ≤ cmin + α(cmax − cmin )} Select an element s from the RCL at random; Solutions ← Solutions ∪ {s}; Update the set of candidate elements C; Reevaluate the incremental costs c(e) for all e ∈ C; end while end for end for return Solutions; end function. 23.
(35) CHAPTER 4. RESOLUTION METHODOLOGIES. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:. Algorithm 6: Random constructive in series function C ONSTRUCTION G REEDY R ANDOMIZED S OLUTIONS [2](Solutions, α) while L 6= ∅ do l ← rand(L); if V (l) = ∅ then L ← L\l; goto skip; end if k(l) ← rand(V (l)); Solutions ← ∅; Initialize the set of candidate elements: C ← E; Evaluate the incremental costs c(j, l, k(l)) for all j ∈ C; while C 6= ∅ do cmin ← min{c(j) | j ∈ C}; cmax ← max{c(j) | j ∈ C}; RCL ← {j ∈ C | c(j) ≤ cmin + α(cmax − cmin )} Select an element s from the RCL at random; Solutions ← Solutions ∪ {s}; Update the set of candidate elements C; Reevaluate the incremental costs c(e) for all e ∈ C; end while V (l) ← V (l)\k(l); skip: end while return Solutions; end function. 24.
(36) CHAPTER 4. RESOLUTION METHODOLOGIES. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:. Algorithm 7: Parallel constructive function C ONSTRUCTION G REEDY R ANDOMIZED S OLUTIONS [3](Solutions, α) while It is possible to add another customer do l ← 1; for l ≤ |L| do k(l) ← 1; for k(l) ≤ |V (l)| do Solutions ← ∅; Initialize the set of candidate elements: C ← E; Evaluate the incremental costs c(j, l, k(l)) for all j ∈ C; if C 6= ∅ then cmin ← min{c(j) | j ∈ C}; cmax ← max{c(j) | j ∈ C}; RCL ← {j ∈ C | c(j) ≤ cmin + α(cmax − cmin )} Select an element s from the RCL at random; Solutions ← Solutions ∪ {s}; Update the set of candidate elements C; Reevaluate the incremental costs c(e) for all e ∈ C; end if end for end for end while return Solutions; end function. 25.
(37) CHAPTER 4. RESOLUTION METHODOLOGIES. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:. Algorithm 8: Random parallel constructive function C ONSTRUCTION G REEDY R ANDOMIZED S OLUTIONS [4](Solutions, α) while It is possible to add another customer do l ← rand(L); k(l) ← rand(V (l)); Solutions ← ∅; Initialize the set of candidate elements: C ← E; Evaluate the incremental costs c(j, l, k(l)) for all j ∈ C; if C 6= ∅ then cmin ← min{c(j) | j ∈ C}; cmax ← max{c(j) | j ∈ C}; RCL ← {j ∈ C | c(j) ≤ cmin + α(cmax − cmin )} Select an element s from the RCL at random; Solutions ← Solutions ∪ {s}; Update the set of candidate elements C; Reevaluate the incremental costs c(e) for all e ∈ C; end if end while return Solutions; end function. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:. Algorithm 9: Variable Neighborhood Descend function VND(Solutions) for All elements s ∈ S do loop: Swap(s); if Improvement then goto loop; end if Relocation(s); if Improvement then goto loop; end if RemovePut(s); if Improvement then goto loop; end if NewCustomers(s); if Improvement then goto loop; end if end for return Solutions; end function. 26.
(38) CHAPTER 4. RESOLUTION METHODOLOGIES. 27. to the first two procedures improves indirectly the CO2 emissions while the second two procedures improves the profit obtained by the routing. After the solutions are improved, the dominance between solutions is analyzed. Algorithm ?? keeps the created solutions in a set called P aretoF ront before it starts to create new ones with the next constructive. Once all the contructives are done, the P aretoF ront set has all the solutions that will be submitted to the dominance rule once again before the final non-dominated solutions are delivered to the decision-maker.. 4.2. Labeling Algorithm Methodology. Due to the great complexity of the problem, it was opted to change the approach of the situation. Instead of a routing problem, only a selection of the best customers is going to be done. It may not give the same pareto front than the one obtained from the previous methodology but developing these kind of methodologies take time while the labeling algorithm here presented is easy to implement and gives good results to start the process when there is a lack of time to get better solutions.. 4.2.1. Single Trip Model. As mentioned before, instead of making a route among customers, it will be only a selection of the customers to be visited. A single vehicle will depart from the depot to the customer location, satisfy its demand and come back to the distribution center, subsequently repeat the same process until all selected customers are visited. Therefore, this model will be called Single Trip Model (STM). It is assumed that every time that the vehicle comes back to the distribution center, it will take only the necessary demand requested for the next customer. It is also assumed that the vehicle has enough capacity to serve any customer. As it was changed the routing problem for a complete different one, almost every constraint concerning the routing is unnecessary. That only leaves the capacity and time constraints but as the vehicle get the wares every time it reaches the distribution center, the capacity constraint is also eliminated. For this approach it is only needed the arcs between the distribution center and each k(l) customer, therefore the variable yij is no longer useful neither the z k(l) for the different vehicle types since there is a single vehicle. The variable xi remains intact. The parameters from the original model can be adapted, they are shown in Table ??. The only ones that must be mentioned is Qmax that is no longer necessary and di that represents twice the distance from the depot to the customer considering euclidean distance..
(39) CHAPTER 4. RESOLUTION METHODOLOGIES. Sets: I M. Customer set Plant set. Parameters: e c g φ di Di hi ti. CO2 gas emission constant of the vehicle Factor cost per distance traveled of the vehicle Selling price per product Factor that converts distance in time Distance traveled from the distribution center to i. i ∈ I Customer demand i Customer service time i Time needed to reach customer i from the distribution center. It is defined as ti = di φ + hi Maximum duration of the route CO2 gas emissions constant of plant m ∈ M Acquisition cost per product in plant m Production and shipping cost in plant m Maximum CO2 gas emission allowed in plant m Maximum production capacity available in plant m. tmax Em 1 Cm 2 Cm max εm Πmax m Decision variables: Leader xi Follower pm. 1, if customer i will be visited, 0, otherwise Product quantity produced in plant m Table 4.1: Sets, variables and Parameters for the STP. 28.
(40) CHAPTER 4. RESOLUTION METHODOLOGIES. 29. The resulting model for the STP is the next one:. min. X X (edi )xi + Em pm i∈I. max. (4.1). m∈M. X. X. (gDi − cdi )xi −. i∈I. 1 Cm pm. (4.2). m∈M. subject to: X. ti xi ≤ T max. (4.3). i∈I. xi ∈ {0, 1}. ∀i ∈ I. (4.4). where variables pm are the optimal solution obtained by solving: min. X. 2 Cm pm. (4.5). m∈M. subject to: X m∈M. pm =. X. D i xi. i∈I εmax m Πmax m. Em pm ≤ pm ≤ pm ≥ 0. (4.6) ∀m∈M ∀m∈M ∀m∈M. (4.7) (4.8) (4.9). Expression (??) represents the total amount of emissions done by the vehicle when finishes to visit every customer selected while expression (??) calculates the profit made for visiting them. Inequality (??) avoids that the time to get to every selected customer is not greater to a specific amount of time. Finally, expression (??) makes sure that the decision variables are binary. The lower level remains the same as in the original model.. 4.2.2. From bilevel to single level. The goal in this section is to remodel this problem into a single level problem. In order to do this, the lower level is going to be modeled differently. Since the follower has a behavior of piecewise linear costs, the Multiple Choice Model is chosen to replace the actual one. To do the latter, some changes in the definition of the variables and parameters must be made. εmax m max Constraints (??) and (??) can be merged using the expression min , Πm = Em 2 2 Pmmax . Now, a rearrangement of the parameters Cm is made such that C12 ≤ C22 ≤ ... ≤ Cm . . .
(41) CHAPTER 4. RESOLUTION METHODOLOGIES. 30. 2 that graphiEach linear segment m ∈ {1, 2, ..., M } of the objective function have a cost Cm C2 cally would be the slope of the linear segments. Additionally, P a fixed cost fm is computed. Finally, there are lower bm−1 and upper bm bounds where bm = n≤m Pnmax . Figure ?? shows a representation of the notation similar to Figure ?? from chapter ??.. 2 Cm. C2 fm. bm−1. bm Load. Figure 4.5: Notation for each segment As long as the amount of product asked by the upper level increase; the follower will choose the cheapest plant to manufacture it until its maximum capacity is reached. This behavior allows to construct the graph in Figure ?? that predicts the decisions of the follower.. Cost C32. C22. f1C. 2. b0. C12 b1. b2. b3 Load. C2. f2. f3C. 2. Figure 4.6: Graphical Behavior of the lower level for three plants 2. way the model is built, f1C = 0 and the ending point of the first segment Because of the 2 line b1 , C12 b1 + f1C can be computed. Therefore, using the point-slope equation for straight.
(42) CHAPTER 4. RESOLUTION METHODOLOGIES. 31. 2 2 lines is possible to compute f2C , after it, obtain b2 , C22 b1 + f2C . Continue this process until 2. C . obtain every fm. The previous definition of pm was the amount of products to be produce in each plant m. In this model, pm represents the total amount of the product asked by the leader if that value lies in segment m. Hence, if the amount is x̂ and bm0 −1 ≤ x̂ ≤ bm0 , then pm = x̂ and pm = 0 for all segments m 6= m0 . In order to accomplish the latter, a binary variable ym is defined as 1 if pm > 0 and ym = 0 otherwise. This new definition of the variables allows to remove the objective function of the follower but also it changes the terms in the objective functions of the upper level concerning the lower level variables. The formulation of the single level problem is as follows: min. X X Em (edi )xi + E m pm + f m ym i∈I. (4.10). m∈M. X X 1 C1 max (gDi − cdi )xi − Cm pm + fm ym i∈I. (4.11). m∈M. subject to: X. ti xi ≤ T max. (4.12). i∈I. X m∈M. X. pm =. X. D i xi. (4.13). i∈I. ym ≤ 1. (4.14). m∈M. bm−1 ym ≤ pm ≤ bm ym xi ∈ {0, 1}. ∀m ∈ M ∀i ∈ I. (4.15) (4.16). Terms concerning m of the expressions (??) and (??) are piecewise linear functions which are the sum of the straight line expressions of each linear segment. The parameters Em C1 C2 fm and fm are computed in a similar way than fm . Inequality (??) and equation (??) remains the same. Inequality (??) assures that only one pm will be take into account while (??) makes every non selected pm = 0 and the other one is equal to the complete load. Finally, (??) are the binary constraints.. 4.2.3. Labeling Algorithm. A similar algorithm to the one proposed by [?] is used. Imagining the current situation as a shortest path problem using I as the set of nodes and A the set of arcs in which each arc has associated costs or resources consumption. A phase represents the creation of labels when a certain customer is considered to be added to the solution. The algorithm will create labels at each node; each label will have certain entries..
(43) CHAPTER 4. RESOLUTION METHODOLOGIES. 32. Each node will have a set of labels `i where i ∈ B and B represents the set of all labels created in the previous phases. Each label will have five entries, the total gain g and the total emitted CO2 emissions em of adding the considered customer in the current phase, p which is the amount of accumulated demand until that phase and it must be less or equal to the production capacity of the plants. The accumulated time t needed to visit the previous customers plus the one that is being considered and it must be less than the time limit. And an auxiliary entry pre that helps to know from which label was created from. Each label represents a feasible solution for the last mathematical model, therefore a definition of dominance between two labels is needed. Definition 8. Dominated and Non-dominated Labels. A label `∗ is non-dominated iff there does not exist another label `0 , such that g ∗ ≤ g 0 , e∗ ≥ e0 , p∗ ≥ p0 and t∗ ≥ t0 . Otherwise, `∗ dominated. During one phase, the algorithm creates labels from the labels created in all previous phases. Then, the dominance rule is applied to all labels generated so far and doing so several labels that will not conceive a pareto optimal solutions are going to be eliminated. The next theorem states that the extension of a dominated label will be also dominated. Theorem 1. Let `∗ and `0 be labels such that `∗ dominates `0 . Therefore, all extension of ` is dominated. 0. Proof. Let `1 be an extension of `0 . The `1 entries are (g 0 + g 1 , e0 + e1 , p0 + p1 , t0 + t1 ). Let ` and extension of `∗ whose entries are (g ∗ + g 1 , e∗ + e1 , p∗ + p1 , t∗ + t1 ). From the hypothesis that `∗ dominates `0 can be inferred that `2 is a valid extension of `∗ . And this new extension dominates `1 , therefore the theorem is proved. 2. Once the algorithm finishes the last phase, the resulting set of labels are the pareto front. To retrieve the selected customers is only necessary to follow backwards the construction path using the predecessor entry in the solution label. In order to use this labeling algorithm to this model it is necessary to separate the model in m smaller problems, this is, consider one plant at a time. After these problems are solved, constraint (??) needs to be checked since the lower bound is not considered during the resolution of the problem. Finally, the m sets obtained are compared between each other to verify dominance and the combination of all these resulting labels is the pareto front of the main problem. Algorithm (??) illustrates the pseudo-code for this methodology. The same model was solved with a traditional -constraint method, the objective taken as constraint was the one regarding the CO2 emissions. Each iteration of the algorithm was solved exactly by CPLEX, the results will be compared with the labeling algorithm and some conclusions will be stated..
(44) CHAPTER 4. RESOLUTION METHODOLOGIES. Algorithm 10: Labeling Algorithm 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:. function LA InputInstance(); m ← 1; P aretoF ront ← ∅ for m ≤ |M | do labels ← ∅; Create label for distribution center; i←1 for i ≤ |I| do for All elements ` ∈ labels do Create label `0 from `; labels ← labels ∪ {`0 } end for Dominance(labels); end for P aretoF ront ← P aretoF ront ∪ labels; end forDominance(P aretoF ront); return P aretoF ront; end function. 33.
Figure
Documento similar
Our meta-analysis, focusing specifically on the efficacy of PIs in improving psychological outcomes, both negative and positive, in CAD patients, clearly differentiates from
Abstract: Education is an essential vehicle for valuing cultural legacy, and musical heritage is a part of that cultural legacy that we must protect as it is one of the main areas
This is likely to be due to (i) during the time period analyzed (1980s) the contribution of female employment in household income is still low as reflected in a high proportion of
In particular, H m is the unique minimal surface obtained as solution of the Bj¨ orling problem for the hypocycloid of m+1 cusps (this number of cusps is any odd positive integer,
As far as we know, there is only one published study that compares a minimally invasive approach for plate and screw osteosynthesis by opening the fracture site for a direct
As for the reanalysis performance, since observational stations are related to only four grid points from the ERAIT reanalysis, only one of which is located within the domain D4
In order to reduce planning time and maximize the physical vehicle capacity utilization, problem of the company is formulated as a mixed integer mathematical model, and a
The structure of the paper is as follows: Section 2 presents the vehicle modeling and the combination method for kinematic and dynamic models; Section 3 defines the proposed