Computers & Operations Research 35 (2008) 3989 – 3997 www.elsevier.com/locate/cor
A path-relinking approach for a bi-criteria disassembly sequencing problem Belarmino Adenso-Díaza,∗ , Santiago García-Carbajala , Surendra M. Guptab a Escuela Politécnica Superior de Ingeniería, Universidad de Oviedo, Campus de Gijón, 33204 Gijón, Spain b Department of Mechanical and Industrial Engineering, Northeastern University, 360 Huntington Avenue, Boston 02115, USA
Available online 29 June 2007
Abstract The first crucial step of product recovery is disassembly. Some product disassembly is almost always needed in remanufacturing, recycling, and disposal. Since disassembly tends to be expensive, disassembly sequence planning becomes important in minimizing resources (time and money) invested in disassembly and maximizing the level of automation. A disassembly sequence plan (DSP) is a sequence of disassembly tasks, which begins with a product to be disassembled and terminates in a state where all of the parts of interest are separated. The decision version of the problem of finding the optimal DSP is an NP-complete problem and therefore complex and challenging to solve. Often one has to resort to heuristic and metaheuristic techniques for solving such problems. In this paper, we seek a DSP that addresses two criteria in order. First, we look for a sequence, the cost of which is close to our cost aspiration. Second, we look for a sequence that prioritizes some selected parts to be disassembled as early as possible. We propose a greedy randomized adaptive search procedure (GRASP) and path-relinking-based heuristic methodology specifically developed to solve such bi-criteria type of disassembly problem. An example is considered to illustrate the implementation of the methodology. Conclusions drawn include the consistent generation of near-optimal solutions, the ability to preserve precedence, the superior speed of the metaheuristic, and its practicality due to its ease of implementation. 䉷 2007 Elsevier Ltd. All rights reserved. Keywords: Reverse logistics; Disassembly sequence problem; GRASP; Path relinking; Multicriteria
1. Introduction In recent years, product recovery has become an obligation to the environment as well as the society. Product recovery aims to minimize the amount of waste sent to landfills by recovering materials and parts from old or outdated products by means of recycling and remanufacturing. New and more rigid environmental legislations, and in some cases, the implementation of extended manufacturer responsibility, have caused a growing number of manufacturers to start participating in recycling and remanufacturing activities of their post consumed products after they have been discarded by consumers. In addition, the economic attractiveness of reusing products, subassemblies or parts (instead of disposing of them) has further fueled this effort. Recycling is a process performed to retrieve the material content of used and non-functioning products. Remanufacturing, on the other hand, is an industrial process in which worn-out ∗ Corresponding author. Tel.: +34 985 18 2007; fax: +34 985 18 2150.
E-mail addresses:
[email protected] (B. Adenso-Díaz),
[email protected] (S. García-Carbajal),
[email protected] (S.M. Gupta) URLs: http://coruxa.epsig.uniovi.es/∼adenso/personal.html (B. Adenso-Díaz), http://www1.coe.neu.edu/∼smgupta/ (S.M. Gupta). 0305-0548/$ - see front matter 䉷 2007 Elsevier Ltd. All rights reserved. doi:10.1016/j.cor.2007.06.002
3990
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997
products are restored to like-new conditions. Thus, remanufacturing provides the quality standards of new products with used parts. The first crucial step of product recovery is disassembly. Disassembly is a methodical extraction of valuable parts/subassemblies and materials from discarded products through a series of operations. Disassembly has recently gained a great deal of attention in the literature due to its role in product recovery. Disassembly sequence planning is critical in minimizing resources (e.g. time and money) invested in disassembly and maximizing the level of automation of the disassembly process and the quality of the parts (or materials) recovered. A disassembly sequence plan (DSP) is a sequence of disassembly tasks, which begins with a product to be disassembled and terminates in a state where all of the parts of interest are disconnected (thus, it could be either partial or complete disassembly). In this paper, we seek a DSP that addresses two criteria in order. First, we look for a sequence, the cost of which is close to our cost aspiration. Second, we look for a sequence that prioritizes some selected parts to be disassembled as early as possible. This criterion is motivated by the possibility that either some demanded parts may be fragile and thus may have a higher chance of being damaged if they were to stay longer in the product during the disassembly process, or some un-demanded parts may be hazardous and fragile and thus may contaminate other demanded parts and/or present a hazard to the environment due to spillage or leakage if they were to stay longer in the product during the disassembly process. One might argue that the secondary objective of this problem could be handled through a modification of the disassembly precedence matrix. However, it would be difficult to incorporate priority through the disassembly precedence matrix without impeding into the feasible region. Since priorities are wishes, and even if they are not met, we could live with them, we cannot incorporate them in the precedence matrix as they would end up restricting some acceptable solutions. The only way this would work is if we knew, a priori, exactly which component would end up winning in the priority list. However, that is exactly what we expect the bi-criteria objective to accomplish. Another argument could be made to include the prioritization objective into the cost objective through an economic analysis. However, this would mean that we use the utility function approach. Of course, the major advantage of the utility function approach is that if the utility function is correctly assessed and used, it will ensure the most satisfactory solution to the decision maker. The solution will be a point at which the nondominated solution-curve and the indifference-curve (i.e., contours of equal utility) are tangent to each other. Thus the solution will have the highest utility to the decision maker, and will also be nondominated. Unfortunately, no general methodical approach exists for forming utility functions in such a setting. To fully understand the associated difficulties, we observe that the decision maker is required to properly account for the inter-sensitivity (or inter-dependence) among its individual terms/criteria. While this is difficult to articulate in a utility function, it can easily be achieved by using a bi-criteria objective approach. The decision version of the disassembly sequence planning is NP-complete [1]. Thus, determining an optimal DSP is a complex as well as a challenging problem to solve. One could, therefore, argue that heuristic and metaheuristic techniques may be the only practical ways to solve such problems. In this paper, we consider a greedy randomized adaptive search procedure (GRASP) and path-relinking-based heuristic technique to solve this problem. The performance of GRASP technique has been shown to be competitive compared to other well-established heuristic techniques such as genetic algorithm in terms of both the quality of solution, consistency and computational time [2]. This paper is organized as follows: In Section 2, a brief literature review of disassembly and disassembly sequence planning is given. In Section 3, the specific problem addressed in this paper is defined. In Section 4, a brief introduction to GRASP technique and path relinking as well as the steps to accommodate the first and second objectives of the problem (as defined in Section 3) are provided. Section 5 looks into the performance of the algorithm from an optimality point of view. Section 6 contains summary and conclusions. 2. Literature review Several researchers have studied disassembly. It is one of the primary rudiments for product recovery, be it for components, materials, recycling, remanufacturing or even disposal. However, disassembly problems are not simple as they are likely to be NP-complete [3]. Disassembly processing problems can broadly be classified into two groups, viz., disassembly planning and disassembly sequencing. Disassembly planning answers the question, “How much to disassemble?” while disassembly sequencing addresses the question, “How to disassemble?” Some examples of papers in the area of disassembly planning include the following. Gupta and Taleb [4] proposed an algorithm for planning the disassembly of a discrete, well-defined product structure. The algorithm determines the
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997
3991
quantity and schedule of disassembly of a product to fulfill the demand for its various parts. In their follow-up papers, Taleb et al. [5] and Taleb and Gupta [6] extended the methodology to include components/materials commonality as well as the disassembly of multiple product structures. Veerakamolmal and Gupta [7] proposed methods that provide solutions to component recovery planning. The authors determined the number and type of products to disassemble in order to satisfy the demand for a set of components while minimizing the disassembly and disposal costs. Further extensions were provided by Veerakamolmal and Gupta [8] and Kongar and Gupta [9] who expanded the product recovery concept to analyze the design efficiency and multi-criteria decision-making of electronic products for studying the effect of end-of-life disassembly and disposal on the environment. Finally, Kim et al. [10] addressed the case of multiple product types with parts commonality with the objective of minimizing the sum of set-up, disassembly operation and inventory-holding costs, and suggested a two-phase heuristic method in which an initial solution is obtained using linear programming relaxation and then improving it using the dynamic programming algorithm. Some relevant examples of papers in the area of disassembly sequencing are as follows. Veerakamolmal et al. [11] focused on creating an efficient disassembly sequence by taking advantage of the product modularity, which minimizes the total processing time and thus the cost of disassembly. Veerakamolmal and Gupta [12] applied learning algorithms to the disassembly of electronic devices consisting of different configurations of a set of modules. Gungor and Gupta [13] presented a heuristic algorithm applied to a PC disassembly. Erdos et al. [14] used a heuristic to discover subassemblies within a product structure, thus decomposing the problem, which is then solved by shortest hyperpath calculation. Zussman [15] suggested a two-level disassembly approach by considering both the recycling network and the disassembly process. Zussman and Zhou [16] discussed the design and implementation of a process planner for disassembly processes. Gungor and Gupta [13,17] addressed the problems of disassembly processes and disassembly sequence planning. Moore et al. [18] used Petri Nets for modeling products with complex AND/OR precedence relationships for disassembly process planning. Recently, Gonzalez and Adenso-Diaz [19] used the scatter search metaheuristic to find the optimum disassembly sequence for complex products with sequence-dependent disassembly costs. For a thorough literature review on all aspects of disassembly processes and product recovery see recent survey papers by Moyer and Gupta [1], Gungor and Gupta [20], Lee et al. [21], Tang et al. [22] and Lambert [23]. A recent book by Lambert and Gupta [24] is also helpful in understanding the theories and methodologies of disassembly problems. 3. Problem definition The particular bi-criteria problem investigated in this paper seeks a DSP to fulfill the following two objectives: 1. Minimize the cost of disassembly by keeping it close to a predefined aspiration level, and 2. Remove components according to a priority list. Of course, the disassembly sequence produced must be feasible for the product being investigated (that is, the disassembly precedence relationships must not be violated). Note that this is a combinatorial problem with an exponentially growing search space. A solution to this problem is an ordered sequence Ci1 , . . . , Cin of the n components of the product to be disassembled, indicating the order in which they must be removed. 4. Proposed solution algorithm In this paper, a GRASP metaheuristic is used to provide a very fast, near-optimal solution to the bi-criteria DSP problem defined in the previous section. The problem is solved in two phases, viz., Phase I and Phase II, addressing the two objectives, respectively. GRASP is a multi-start procedure where each of the R iterations consist of two stages, viz. a construction stage (which is essentially a randomized greedy algorithm), where a feasible solution is constructed, and a local search stage where a local optimum in the neighborhood of the constructed solution is sought. Since the construction stage is non-deterministic, every time an iteration of the local search will start from a different point leading to a potentially different locally optimal solution. The best overall solution is kept as the end result [25]. More information about GRASP characteristics and performance can be found in Resende and Ribeiro [26].
3992
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997
4.1. Solving for the first criteria (Phase I) Recently, a GRASP procedure has been reported that leads to the best solutions [27] based on a single criterion (disassembly costs) for a battery of instances available at http://coruxa.epsig.uniovi.es/∼adenso/file_d.html. The procedure utilizes two matrices, viz., the joints accessibility matrix and the disassembly precedence matrix, to model the interferences of joints and components, respectively, of a product. Using these matrices, the algorithm explores the set of possible feasible solutions (permutations of n components to extract), defining indexes for the greedy phase: for each component Ci which is a candidate to be added next to the sequence, the number of joints and components that would no longer be obstructed if Ci were to be removed are considered for the index definition. Phase I for solving the bi-criteria problem starts from the solutions offered by the GRASP procedure described above and then proceeds to explore the set of solutions that also satisfy the second objective. For the purpose of accommodating the second objective, a threshold window TH_c is considered. TH_c defines the upper limit of the solution that is acceptable for the first objective (obviously, attempting to fulfill the second objective may only be achieved by incurring additional costs in the first objective). For this, a threshold window parameter, v 1, is used. Thus, if cj∗ is the least cost based on the feasible disassembly sequences encountered in Phase I, the solutions with a cost higher than TH_c = v · cj∗ will not be considered, regardless of their goodness with respect to the second objective. A similar threshold TH_w is defined for the second objective on the basis of its threshold window, v . Our experience show that the typical values for v and v are between 1% and 5%. 4.2. Steps for the second criteria (Phase II) Step 1: • Read in the following parameters: R = number of GRASP restarts; v = the threshold window for the first objective (v 1); v = the threshold window for the second objective (v 1). • Load data of the instance. Step 2: • Let S1 , . . . , SR be the R DSPs obtained from each restart of the GRASP algorithm to minimize the disassembly cost (Phase I), and let c1 , . . . , cR be their costs, respectively. • Let cj∗ be the smallest cost obtained and its corresponding DSP be Sj∗ . Set the threshold TH_c = v · cj∗ . Step 3: • Define = {Si : ci TH_c} as the set of solutions found by GRASP with costs less than or equal to TH_c. If contains only one solution, viz., Sj∗ , add another solution, Sj , in that is distinct from Sj∗ and has the next larger cj (i.e., the one that has the smallest cj > cj∗ ). • Each solution Si ∈ has a set i of pointers associated with it that point to some solutions in , with which the path relinking procedure described below (see Section 4.3) was already performed. Initially, each solution in points exclusively to itself (i.e., i = {Si }). • Let wi be the valuation associated with the solution Si that is based on the weights of the second objective. Let wj∗ be the smallest valuation obtained. Set the threshold TH_w = v · wj∗ (see Fig. 1). Step 4: BEGIN REPEAT loop: • Let Sk ∈ be the solution in that has the smallest wk . Let Sl ∈ be the solution that is most diverse to the Sk (according to the measurement of diversity defined below) and between which there is no pointer from Sl to Sk (i.e., Sk ∈ / l ). If no such Sl exists, redefine Sk ∈ by choosing the solution in that has the next smaller wk and repeat
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997
Φ
Best Solution Phase I
wi
3993
TH
_c
S2 TH_w S5 = Sj* S4
v’
SS1 1 S33
wj*
cj*
ci v
Fig. 1. Example of the initial set of solutions when starting step 4 of Phase II. Solutions with higher cost than TH_c are not considered (crosses). = {S1 , S2 , S3 , S4 , S5 }.
Sp6
S2
TH _ pr c ev io us T
H
_c
wi
previous TH_w S5
TH_w
Sl = S4 S1 Sp5
Sp4
v’
Sk = S3 Sp3 Sp2
v
Sp1 ci
Fig. 2. Example of path-relinking during first iteration of step 4 of Phase II. Solutions Sp4 and Sp5 are not considered for being Pareto-dominated by Sp3 ; Sp1 because cp1 > TH_c; and S2 , S5 and Sp6 because wp > TH_w. = {S1 , S3 , S4 , Sp2 , Sp3 }.
the procedure of finding an Sl ∈ that is most distant to the Sk and there is no pointer from Sl to Sk . If there are no more Sk left, EXIT the REPEAT loop. • Add a new pointer associated to Sl that points to Sk (i.e., l = l ∪ {Sk }). • Perform the path relinking procedure (described below) from Sl to Sk (the “guiding solution”). For every solution Sp generated by the procedure, calculate the disassembly cost cp and the valuation wp , and if either cp > TH_c or wp > TH_w (or both) for any of the generated solution, discard that solution (Sp1 and Sp6 in Fig. 2). Further, if a solution generated by this procedure has both a greater or equal cost cp and greater or equal valuation wp than any of the other solution already generated in that path relinking procedure or any solution that is already in (i.e., it is Pareto-dominated), eliminate that solution as well (see Fig. 2). Add all the surviving solutions Sp just generated to , and Sk to their pointers set (i.e., p = p ∪ {Sk }).
3994
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997
• If any of the newly generated solutions has a smaller cost than cj∗ or smaller value than wj∗ , update this to the new cost or value and recalculate TH_c = v · cj∗ and/or TH_w = v · wj∗ and eliminate all the solutions of that have a greater cost than the new TH_c. END of REPEAT loop. Step 6: • Of all the solutions in (which by definition are acceptable from the disassembly cost point of view), choose the one with minimum wi . • Print the output with all the data of interest. 4.3. Path relinking procedure Consider two elite solutions (i.e., selected as potentially good solutions) Sl and Sk . We wish to execute the path relinking procedure from Sl to Sk . Path relinking procedure generates new solutions by exploring trajectories that connect the two reference solutions. Sl is the initiating solution. The path relinking procedure generates a path in the neighborhood space by linking several new solutions with the aim to systematically reach the final guiding solution Sk . This is accomplished by introducing moves in the generated solutions that lead to the final solution. Thus, the relinked path is not governed by local greed (as the GRASP algorithm does). Instead, it is influenced by the criterion of incorporating attributes of the guiding solution. It, therefore, opens up the possibility of reaching improved solutions that might otherwise be inhibited by the “locally myopic” greedy algorithm. On the other hand, the path relinking procedure might occasionally create an infeasible solution. However, such practice is protected against the possibility of becoming “lost” in an infeasible region since feasibility clearly must be recovered by the time the final solution is reached [2,28]. The procedure of computing the set of moves needed to reach from the initial solution to the final solution is best illustrated with the help of an example. A path relinking procedure performed from a solution represented by the seventuple 1, 2, 3, 4, 5, 6, 7 to the guiding solution 4, 7, 1, 5, 3, 2, 6 involves the generation of the following successive guiding solutions: 1, 2, 3, 4, 5, 6, 7 → 4, 1, 2, 3, 5, 6, 7 → 4, 7, 1, 2, 3, 5, 6 → 4, 7, 1, 2, 3, 5, 6 → 4, 7, 1, 5, 2, 3, 6 → 4, 7, 1, 5, 3, 2, 6 → 4, 7, 1, 5, 3, 2, 6 → 4, 7, 1, 5, 3, 2, 6. As can be seen, starting from the initial solution, a series of solutions are created such that each time one of the elements of the final guiding solution is added in the sequence in that order, keeping all other elements in the original order of the initial solution until the final solution is obtained. The added elements are underlined. Of these, the set of feasible solutions become the solution set found by the path relinking procedure. On the other hand, in the selection phase of the solution Sl from which path relinking will be performed to the guiding solution Sk , it has already been stated that the chosen solution will be the one that is found to be the most diverse with respect to this guiding solution Sk . Accordingly, a measure of diversity must be defined. For this purpose, González and Adenso-Díaz [19] defined a measure for their scatter search disassembly algorithm that may also be of use on this occasion. Consider two solutions Sl and Sk between which we wish to find the diversity; the sum of the absolute differences of the positions of each element in the two solutions gives the diversity between the two solutions. For example, if Sl = C1 , C2 , C3 , C4 and Sk = C4 , C3 , C1 , C2 , then the diversity between them is |1 − 3| + |2 − 4| + |3 − 2| + |4 − 1| = 8, since C1 is in the first position in Sl and in the third in Sk ; C2 is in the second position in Sl and in the fourth in Sk , etc. 5. Performance of the algorithm To analyze up to what point this algorithm allows solutions to be obtained that are acceptable from the cost perspective while giving rise to reduced values for the second criterion, an experimental framework was designed by means of which a set of instances were solved under diverse conditions. The products employed in this study are the 48 products used previously [19,27] to solve the single criterion disassembly problems. The number of components in each product is either n = 25 or 50 or 75 or 100, representing products that can be disassembled with different difficulties, all of
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997 ratio cost_PhaseII/cost_PhaseI
3995
ratio weight_PhaseII/weight_PhaseI
1.1 1 0.9
0.7 0.6 0.5
v’ v’ =1.0 = v’ 1.0 1 =1 3 .0 5
ratios
0.8
0.4 0.3 0.2 v=1.01 v=1.03 v=1.05 v=1.01 v=1.03 v=1.05 v=1.01 v=1.03 v=1.05 v=1.01 v=1.03 v=1.05 n=25
n=50
n=75
n=100
instances
Fig. 3. Ratio between the solution cost obtained in Phase I, and the solution cost obtained after Phase II; and ratio between the solution weight in Phase I and the solution weight obtained after Phase II (average of the 12 instances for each number of components n). The three values shown for each n and v, correspond to the solution obtained for the three values v = {1.01, 1.03, 1.05}.
them generated ad hoc by using a specific algorithm that generates all the relationships between the components and their joints. All these products include information on their joints accessibility matrices and disassembly precedence matrices, as well as the tools needed for their disassembly and the calculation of their costs. To evaluate the second objective, the weights pi ∈ [0, 1] associated with each component were employed (the greater the pi , the greater the interest in extracting the component as soon as possible). Given any solution (a permutation of n components), the value associated with the second criterion will be obtained by adding, for each component Ci , the product of its weight wi and the position the component occupies in the solution. For example, in a product with n = 4 components, if pi = 0.5; 0; 0.8; 0.2 and the solution is C3 , C1 , C4 , C2 , the value of the second objective will be 0.5 × 2 + 0 × 4 + 0.8 × 1 + 0.2 × 3 = 2.4. In our experimentation, we assumed that the number of re-starts of the GRASP algorithm were R = 200 (the same value as was used in Adenso-Díaz et al. [27]). For the parameters v and v , we employed three different levels, viz., 1.01, 1.03 and 1.05. Fig. 3 shows, the average ratios between the solution costs after Phase II and the solution costs after Phase I and between the solution weight wi after Phase II and the solution weight wi after Phase I for the clusters of 12 products with the same number of components. Since for both ratios, the smaller values represent bigger improvements obtained by Phase II, we note that, in general, improvements of around 50% for the second criterion (weight) translates into a cost increase of about 1%. The global average shows a reduction of 48.96% in the weights and an increase of only 1.28% in the costs. In the same figure (Fig. 3), we also note the following: • For larger values of v, the search window is wider. This leads to a bigger improvement is the second criterion and makes the first solution worse albeit by a small amount. • Once v is fixed, we do not get significant differences in the solutions when we change the value v . Therefore, v does not seem to be relevant when looking for efficient solutions. • As the number of components n increases, the performance of Phase II seems to increase as well. As for the computational burden, the number of components n has a significant effect on the time needed to find the final solution (see Fig. 4). For small product sizes, the average for the 12 instances is 4.75 s, and for products with 100
3996
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997
x = 2051.53
2500
seconds
2000
1500 x = 991.55
v v’ v’= ’=1. =1 1. 05 .01 03
1000
500 x = 4.75
x = 63.92
0 v=1.01 v=1.03 v=1.05 v=1.01 v=1.03 v=1.05 v=1.01 v=1.03 v=1.05 v=1.01 v=1.03 v=1.05 n=25
n=50
n=75
n=100
instances Fig. 4. Average (for the 12 instances for each n) of the calculation time to get the final solution (Phase I + Phase II).
components, the average rises to 2051.53 s. In addition to factor v, here the factor v seems to have influence as well. The calculation time increase as v increases, which can be clearly observed for products with n = 100. 6. Summary and conclusions In this paper, we have presented an algorithm to search for the solutions to the disassembly sequencing problem with two objectives. The solution algorithm solves the problem in two phases. First it tries to minimize the costs independently of the second criterion using the GRASP procedure. Then, in Phase II, it tries to minimize the second criterion without worsening the cost beyond a predefined threshold. Therefore we have defined a lexicographic goalprogramming type procedure, in which once good solutions are reached for the main objective (cost) by using a GRASP algorithm, we try to improve both goals by a series of path relinkings of solutions within a threshold range. The experiments performed show how Phase II is able to find important improvements in the second criterion (up to a 70% improvement) with a small cost increase (around 1%) in the first criterion. We estimate that the calculation times for realistic products, with no more than about two dozen components, would be around 4 s. The algorithm presented in this paper, therefore, shows an efficient methodology for solving the bi-criteria disassembly problem, introduced here for the first time. In the future, new procedures should be designed trying to define Pareto-efficient frontiers for the problem. Acknowledgments This research was funded by the Spanish Ministry of Science: Contract number SEJ2004-07877-C02-01/ECON, and the Researchers Mobility Program, Grant number SAB2004-0005. References [1] Moyer L, Gupta SM. Environmental concerns and recycling/disassembly efforts in the electronics industry. Journal of Electronics Manufacturing 1997;7(1):1–22. [2] Glover F, Laguna M, Martí R. Scatter search and path relinking: advances and applications. In: Glover F, Kochenberger G, editors. Handbook of Metaheuristics. Boston: Kluwer Academic Publishers; 2003. [3] McGovern SM, Gupta SM. A balancing method and genetic algorithm for disassembly line balancing. European Journal of Operational Research 2007;179(3):692–708. [4] Gupta SM, Taleb K. Scheduling disassembly. International Journal of Production Research 1994;32(8):1857–66.
B. Adenso-Díaz et al. / Computers & Operations Research 35 (2008) 3989 – 3997
3997
[5] Taleb KN, Gupta SM, Brennan L. Disassembly of complex products with parts and materials commonality. Production Planning and Control 1997;8(3):255–69. [6] Taleb K, Gupta SM. Disassembly of multiple product structures. Computers and Industrial Engineering 1997;32(4):949–61. [7] Veerakamolmal P, Gupta SM. Optimal analysis of lot size balancing for multi-products selective disassembly. International Journal of Flexible Automation and Integrated Manufacturing 1998;6(3/4):245–69. [8] Veerakamolmal P, Gupta SM. Analysis of design efficiency for the disassembly of modular electronic products. Journal of Electronics Manufacturing 1999;9(1):79–95. [9] Kongar E, Gupta SM. A multi-criteria decision making approach for disassembly-to-order systems. Journal of Electronics Manufacturing 2002;11(2):171–83. [10] Kim H-J, Lee D-H, Xirouchakis P. Two-phase heuristic for disassembly scheduling with multiple product types and parts commonality. International Journal of Production Research 2006;44(1):195–212. [11] Veerakamolmal P, Gupta SM, McLean CR. Disassembly process planning. In: First international conference on engineering design and automation, Bangkok, Thailand; 1997. [12] Veerakamolmal P, Gupta SM. A case-based reasoning approach for automating disassembly process planning. Journal of Intelligent Manufacturing 2002;13(1):47–60. [13] Gungor A, Gupta SM. An evaluation methodology for disassembly processes. Computers and Industrial Engineering 1997;33(1):329–32. [14] Erdos G, Kis T, Xirouchakis P. Modelling and evaluating product end-of-life options. International Journal of Production Research 2001;39(6):1203–20. [15] Zussman E. Planning of disassembly systems. Assembly Automation 1995;15(4):20–3. [16] Zussman E, Zhou M. Design and implementation of a adaptive process planner for disassembly processes. IEEE Transactions on Robotics and Automation 2000;16(2):171–9. [17] Gungor A, Gupta SM. Disassembly sequence planning for products with defective parts in product recovery. Computers and Industrial Engineering 1998;35(1–2):161–4. [18] Moore KE, Gungor A, Gupta SM. Petri net approach to disassembly process planning for products with complex AND/OR precedence relationships. European Journal of Operational Research 2001;135(2):428–49. [19] González B, Adenso-Díaz B. A scatter search approach to the optimum disassembly sequence problem. Computers and Operations Research 2005;33(6):1776–993. [20] Gungor A, Gupta SM. Issues in environmentally conscious manufacturing and product recovery: a survey. Computers and Industrial Engineering 1999;36(4):811–53. [21] Lee D-H, Kang J-G, Xirouchakis P. Disassembly planning and scheduling: review and further research. Journal of Engineering Manufacture 2001;215(B5):695–709. [22] Tang Y, Zhou MC, Zussman E, Caudill R. Disassembly modeling, planning, and application. Journal of Manufacturing Systems 2002;21(3): 200–17. [23] Lambert ADJ. Disassembly sequencing: a survey. International Journal of Production Research 2003;41(16):3721–59. [24] Lambert ADJ, Gupta SM. Disassembly modeling for assembly maintenance, reuse, and recycling. Boca Raton, FL; 2005. [25] Resende MGC. Greedy randomized adaptive search procedures (GRASP), AT&T labs research technical report no. 98.41.1, December 22, 1998. [26] Resende MGC, Ribeiro CC. Greedy randomized adaptive search procedures. In: Glover F, Kochenberger G, editors. Handbook of metaheuristics. Dordrecht: Kluwer Academic Publishers; 2002. p. 219–49. [27] Adenso-Díaz B, García S, Lozano S. An efficient GRASP algorithm for disassembly sequence planning. OR spectrum 2007;29(3):535–49. [28] Resende MGC, Ribeiro CC. GRASP and path-relinking: recent advances and applications. AT&T labs research technical report no. TD-5TU726, April 6, 2003.