Next Article in Journal
Study of Personal Mobility Vehicle (PMV) with Active Inward Tilting Mechanism on Obstacle Avoidance and Energy Efficiency
Previous Article in Journal
Spotted Hyena Optimizer and Ant Lion Optimization in Predicting the Shear Strength of Soil
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Solving the Manufacturing Cell Design Problem through an Autonomous Water Cycle Algorithm

1
Escuela de Ingeniería Informática, Pontificia Universidad Católica de Valparaíso, Valparaíso 2362807, Chile
2
Departamento de Tecnología Electrónica, Universidad Carlos III de Madrid, 28911 Leganés, Spain
3
School of Informatics Civil Engineering, Universidad de Valparaíso, Valparaíso 2391415, Chile
4
Escuela de Ingeniería Industrial, Universidad Diego Portales, Santiago de Chile 8370191, Chile
5
Department of Computer Science, Universidad Técnica Federico Santa María, Valparaiso 2390123, Chile
*
Author to whom correspondence should be addressed.
Appl. Sci. 2019, 9(22), 4736; https://doi.org/10.3390/app9224736
Submission received: 24 September 2019 / Revised: 27 October 2019 / Accepted: 2 November 2019 / Published: 6 November 2019
(This article belongs to the Section Computing and Artificial Intelligence)

Abstract

:
Metaheuristics are multi-purpose problem solvers devoted to particularly tackle large instances of complex optimization problems. However, in spite of the relevance of metaheuristics in the optimization world, their proper design and implementation to reach optimal solutions is not a simple task. Metaheuristics require an initial parameter configuration, which is dramatically relevant for the efficient exploration and exploitation of the search space, and therefore to the effective finding of high-quality solutions. In this paper, the authors propose a variation of the water cycle inspired metaheuristic capable of automatically adjusting its parameter by using the autonomous search paradigm. The goal of our proposal is to explore and to exploit promising regions of the search space to rapidly converge to optimal solutions. To validate the proposal, we tested 160 instances of the manufacturing cell design problem, which is a relevant problem for the industry, whose objective is to minimize the number of movements and exchanges of parts between organizational elements called cells. As a result of the experimental analysis, the authors checked that the proposal performs similarly to the default approach, but without being specifically configured for solving the problem.

1. Introduction

Worldwide manufacturing plants are usually structured into manufacturing entities, which are composed of machines processing a specific part for a product. This organization presents a problem for most companies because, generally, the output of a machine could be the input of another, which could be located in a faraway place, reducing the efficiency of the construction process because of the moving of parts. This relevant problem for the industry is a classical optimization problem defined by Flanders [1] and called the manufacturing cell design problem, whose objective is to minimize the number of movements and exchanges of parts between groups of machines, which are called cells.
During the last decade, the manufacturing cell design problem has been intensely addressed in the optimization field area. Exact techniques have been proposed for solving the problem, as in [2]. This type of exhaustive techniques is efficient in solving low-complexity instances. However, these techniques usually fail when larger instances are considered because of timing constraints [3]. On the other hand, approximate algorithms are capable of getting solutions for any instance size in reasonable computing time, but results could not be as high quality as expected because these methods are focused on providing near-optimal solutions [4,5].
Focusing on metaheuristics, many bio-inspired algorithms have successfully addressed complex optimization problems in the literature. These techniques are characterized by mimic the behavior of processes from nature, such as honey bees collect nectar from flowers, bats hunt their prey in darkness, the attraction between two objects by computing the gravitational force, among many other examples. Despite the great success of metaheuristics in different application areas, their proper design and implementation to reach optimal solutions is not a simple task. The operation of metaheuristics is governed by a set of parameters that demand a previous setting. Such a configuration is known to be a major task. In fact, selecting the appropriate parameter setting is crucial for the efficient exploration of the search space and therefore to the effective finding of high-quality solutions [6].
Under this line, the authors propose a variation of the water cycle algorithm technique inspired by the water cycle of the elements in the hydrosphere, which was originally proposed in [7,8]. The goal of this variation is that the algorithm has the capacity of updating the population size to manage the trade-off between exploration and exploitation, so that the process of getting good solutions to the optimization problem could be facilitated. To this end, the authors consider the autonomous search paradigm introduced in [9]. The idea of selecting the population size parameter to control this trade-off is not new and then, many works can be found in the literature following this trend [10]. As expected, other interesting approaches can be found for controlling this trade-off in the literature [10].
In this work, the authors compare the original and the autonomous approach of the metaheuristic while solving 160 known instances of the manufacturing cell design problem [11]. As a result, the authors checked that the autonomous water cycle algorithm performs similarly than the default approach, but without being specifically configured for solving a specific instance, which is valuable.
The manuscript is organized as follows. Section 2 discusses related works in the field. Section 3 defines the manufacturing cell design problem. Section 4 exposes the default water cycle algorithm. The proposed autonomous water cycle algorithm is presented in Section 5. Finally, experimental results and concluding remarks are shown in Section 6 and Section 7, respectively.

2. Related Work

Cellular manufacturing systems are widely considered in the industry due to the several benefits involved in economic terms; indeed, preliminary investigations in this context date back from 1960 with the work of Burbidge [12] about production flow analysis. From this point, mathematical programming was strongly involved in solving the problem. Several examples in this line can be found from classic linear programming to more advanced goal programming procedures [11,13,14,15,16,17,18]. Techniques derived from mathematical programming and artificial intelligence, such as constraint programming, were also reported [2,3]. More recently, the room for metaheuristics in this area has been growing since its use is more appropriate when problem instances are intractable with exact methods because of computing time restrictions. In this line, some authors applied classic metaheuristics as tabu search for solving different approaches of the problem [19,20,21,22,23]. The presence of genetic algorithms (GAs) is also large. For instance, a bi-criteria model for solving cell formation problems was presented in [24]. A similar approach was reported in [25], but involving three objective functions. Alternative routines for the part-flow were incorporated in [26,27]. In [28], another GA was proposed but mostly oriented to minimize the inter-cell flow cost rather than minimizing the number of inter-cell movements. Industrial cases from the automobile and steel industry were presented in [29,30] while applying GAs. Hybrid GAs, as well as variants such as the predator-prey GA, were also explored [31,32,33,34]. Classic simulated annealing, differential evolution, scatter search, and particle optimization algorithms also participate in the literature [35,36,37,38].
From the previous analysis, the authors reach that modern swarm intelligence metaheuristics are the most widely applied techniques for solving the problem in recent years. For instance, the authors may cite the following works, among many others. In [39], a migrating bird algorithm was applied, which was later parallelized in [40]. The artificial fish swarm algorithm and the shuffled frog leaping algorithm were applied in [41,42]. Bat algorithm and its autonomous version were applied in [43,44], respectively. The firefly algorithm was considered in [45,46], the cat swarm optimization in [47] and the flower pollination algorithm in [48]. Black hole algorithm has successfully been applied to fine tune a machine learning approach in [49]. Finally, an Egyptian vulture optimization algorithm was reported in [50].
As introduced before, although metaheuristics are widely considered in the literature for solving complex optimization problems, the usage of these methods is limited by the needed of configuring parameters, which definitively affect how the search is performed. This situation implies that it is needed to solve the fitting problem of the algorithm. However, it is unlikely to get the optimal solution to the problem because of the number of possible combinations. This fact means that the performance of the algorithm could be biased due to the usage of an inadequate configuration. A solution to this problem could be to consider metaheuristics with the less possible number of parameters. However, parameters usually provide metaheuristics the capacity of providing a good solution in a great range of instances and problems, i.e., adaptability. Another possibility is the one considered in this paper, where the authors study how to provide autonomous adaptability during the solving time. This is a novel concept, which has not been extensively considered in the literature. For instance, we may cite the following works defining an autonomous strategy for guiding specific metaheuristics [51,52,53]. On this basis, in this work, the authors study how to provide autonomous adaptability to the water cycle algorithm, which is a metaheuristic that was successfully applied to solve several optimization problems [54,55,56,57]. As far as the authors know, this is the first work in the field providing adaptability to the water cycle algorithm, while solving the cell design problem.

3. The Manufacturing Cell Design Problem

The cellular manufacturing strategy proposed by Flanders [1] promotes the separation of the machines involved in a production plant by following a specific strategy. The idea is to group parts of similar functions, geometry or fabrication process into families that are processed in the same section, and thus creating highly independent areas called cells. Some advantages of this production strategy include reduction of cost and material-handling time, labor, and paperwork, a decrease of in-process inventories, shortening delivery time, and an increase of machine utilization and production control. Further analysis of this technology may be found in [58,59,60].

3.1. Problem Statement

To find the optimal design of the production plant, where the inter-cell part exchange is minimized, the problem is schematized into the part-machine matrix, where each coordinate shows which machine processes a particular part. Through the reorganization of the rows and columns of the matrix different configurations can be tested. From this initial matrix, two others are derived: the machine-cell and the part-cell matrices, representing the cell that currently allocates the machines and parts, respectively.
The idea in this optimization problem is to minimize the so-called exceptional elements, which are parts that move from one cell to another to satisfy the production workflow [11]. The mathematical model representing this problem is described as follows:
  • Modeling parameters:
    -
    M: the number of machines.
    -
    P: the number of parts.
    -
    C: the number of cells.
    -
    M m a x : the maximum number of machines in a cell.
    -
    x i j : the ( i , j ) element in the machine-part incidence matrix, meaning
    x i j = 1 if the i - th machine processes the j - th part , 0 otherwise ,
    where i { 1 , , M } is the machine number and j { 1 , , P } is the part number.
  • Decision variables:
    -
    y i k : the ( i , k ) element in the machine-cell incidence matrix, meaning
    y i k = 1 if the i - th machine is located in the k - th cell , 0 otherwise ,
    where k { 1 , , C } is the cell number.
    -
    z j k : the ( j , k ) element in the part-cell incidence matrix, meaning
    z j k = 1 if the j - th part is located in the k - th cell , 0 otherwise .
The goal of the optimization problem is given by
minimize k = 1 C i = 1 M j = 1 P x i j z j k ( 1 y i k ) ,
subject to
k = 1 C y i k = 1 , i ,
k = 1 C z j k = 1 , j ,
i = 1 M y i k M m a x , k .

3.2. Problem Example

An example of the manufacturing cell design problem is included in this section to clarify the previous definition. To this end, the authors consider the machine-part matrix in Table 1, determining how machines and parts are related in a given industrial process. From this table, there are 10 machines ( M = 10 ) and 10 parts ( P = 10 ). Suppose that for the optimized design, there are 3 ( C = 3 ) available cells to organize the industrial process and there is a constraint in the maximum number of machines in a cell so that this maximum number equals 4 ( M m a x = 4). With this information, the machine-cell and part-cell matrices are generated by randomly assigning machines and parts to cells. These two matrices are shown in Table 2. From these two matrices, the objective of the optimization problem is to reorganize machines and parts so that inter-cell movements are minimized. A possible solution to this problem is shown in Table 3, where machines { A , E , F , H } and parts { 3 , 7 , 10 } are assigned to cell 1, machines { B , C , I } and parts { 1 , 2 , 6 , 9 } are assigned to cell 2, and machines { D , G , J } and parts { 4 , 5 , 8 } are assigned to cell 3. The cost of this solution is 0 because there are not inter-cell movements, meaning that this is an optimal solution to the problem.

4. The Water Cycle Inspired Solving-Method

As is well known, water exists in the earth in three different states: solid (ice, snow), liquid (water, sea, raindrops) and gaseous (vapor). Even though oceans, sea, rivers, streams, clouds, and rains are constantly changing, the total amount of water on the planet is not affected [61,62,63]. The interconnection of the three water states forms the water life cycle depicted in Figure 1. In this figure, raindrops travel in the mountains towards the sea, forming rivers or streams; however, there is also a possibility that some streams flow into rivers and not necessarily into the sea. The water life cycle is composed of three phases [64,65,66]. The first one occurs when the heat produced by the sun affects the water surface, producing that seawater begins to evaporate. This first phase is complemented by the photosynthesis of plants in a process known as transpiration. In the second phase, vapor rises to the atmosphere forming clouds which store plenty of evaporated water through condensation. The third phase, known as precipitation, occurs when stored vapor becomes liquid water because of clouds start to cool, for instance when clouds rise considerably.
The water cycle inspired algorithm is a population-based solving method. In the context of the algorithm, each individual in the population is a solution to the problem known as a raindrop. Thus, each raindrop has associated a machine-cell and a part-cell matrix, as well as a fitness value calculated as given by Equation (4). The population is composed of N p o p raindrops.
The solutions in the population are organized on three levels: sea, rivers, and streams. To this end, the population is first sorted in decreased order of fitness quality. Then, the first solution is the sea. The following N r i v e r s solutions are the rivers and the rest of the solutions are the streams. Thus, the sum of rivers and sea is given by
N s r = N r i v e r s + 1 ,
and the number of streams is given by
N s t r e a m s = N p o p N s r .
According to the flow magnitude (how good a solution is), each sea/river has associated a set of streams flowing to them. The cardinal of this set for a given sea/river is defined as
N S n = r o u n d | c n i = 1 N s r c i | × N s t r e a m s , n { 1 , 2 , , N s r } ,
where c n is the fitness value of the n-th solution in the first N s r solutions in the population as given by Equation (4). From this expression, the sea will have a higher number of streams than a lower quality river. Following this idea, better solutions will have the capacity of attracting more water flows than worse ones, as shown in Figure 2. In this figure, rivers (stars) and streams (circles) modify their trajectory to follow stronger flows. When a stream flows into the sea (squares), it is taken as a solution. Additionally, the white color is used to detail advances in each iteration (a new position).
The way in which a stream modify its trajectory is depicted in Figure 3, where X is the new position of the stream as a random displacement in the interval [ 0 , α · d ] , d is the distance between the river and the stream (usually in terms of fitness value), and α ( 1 , 2 ) .
According to the attraction capacity of water flows, the algorithm applies three phases to transform a solution during one iteration of the optimization process. First, it moves streams forward to the rivers as given by
X s t r e a m ( t + 1 ) = X s t r e a m ( t ) + r a n d · α · ( X r i v e r ( t ) X s t r e a m ( t ) ) .
where rand is a random number in the interval [ 0 , 1 ] . Second, streams are directed to the sea as given by
X s t r e a m ( t + 1 ) = X s t r e a m ( t ) + r a n d · α · ( X s e a ( t ) X s t r e a m ( t ) ) .
Third, rivers flow towards the sea as given by
X r i v e r ( t + 1 ) = X r i v e r ( t ) + r a n d · α · ( X s e a ( t ) X r i v e r ( t ) ) .
Next, the algorithm evaluates if the newly generated solution is better than its connection, i.e., if the stream provides a better fitness value than the river. In such a case, roles are exchanges as depicted in Figure 4.
The algorithm also includes a mechanism to avoid premature convergence based on the evaluation of the evaporation condition. This process evaluates how close are rivers and streams to the sea so that evaporation is produced. Thus, the evaporation condition for rivers is evaluated as
X s e a X r i v e r < d m a x o r r a n d < 0.1 ,
and for streams is evaluated as
X s e a X s t r e a m < d m a x o r r a n d < 0.1 ,
where d m a x is updated over iterations as given by
d m a x t + 1 = d m a x t = 0 d m a x t max iterations .
Note that the d m a x is reduced over iterations, meaning that the evaporation condition is more complicated to meet so as execution progresses. If the evaporation condition is met, a rain process occurs, meaning that the water cycle starts again and then, a new population is generated replacing the previous one. That is,
X new population = L B + r a n d · ( U B L B ) ,
where L B and U B represent the lower and upper bound values, respectively. Based on the above description, the main steps in the algorithm are described in Algorithm 1.
Algorithm 1: Water cycle inspired algorithm.
Applsci 09 04736 i001

5. The Proposed Autonomous Water Cycle Algorithm

The integration of autonomous search into the water cycle algorithm will be responsible for varying the population size ( N p o p ), while maintaining the same proportion of rivers/sea ( N s r ) and streams ( N s t r e a m s ). This proportion was experimentally defined as 30 % for N s r and 70% for N s t r e a m s . The calculation of N p o p is inspired by one of the most important expressions in the water cycle algorithm, Equation (10), defining the trade-off between exploitation and exploration in the metaheuristic. Thus, the population size is calculated according to the relationship between the worst and best solution in the current population. That is:
N p o p = r o u n d | c b e s t N p o p c w r o n g N p o p i = 1 N p o p c o s t i | × 100 ,
where c b e s t N p o p and c w o r s t N p o p are the best and worst fitness value in the current population. In this expression, population size will be larger as the difference between the best and the worst fitness value is increased. Otherwise, population size will be smaller.
The criterion for updating the population size is defined according to the differences observed, in percentage, between the best and worst solution in N s r in two different time intervals. Thus, let d i f f N s r t 1 and d i f f N s r t 2 the differences observed between the best and worst solution in N s r in time t 1 and t 2 , t 1 < t 2 , respectively. Then, if d i f f N s r t 2 d i f f N s r t 1 < 0 , it means that the algorithm could be trapped in a local minimum and then, the population size should be increased in a number of elements as given by Equation (18). Otherwise, if d i f f N s r t 2 d i f f N s r t 1 > d i f f t h , it means that the differences observed could be very large and then, the algorithm should focus the search on the most promising areas, so reducing the population size in terms of Equation (18). Note that d i f f t h was experimentally defined as 3.00 % . The previously discussed hybridization of autonomous search and the water cycle algorithm can be find in Algorithm 2.
Algorithm 2: Hybridization of autonomous search and the water cycle algorithm.
Applsci 09 04736 i002
When proposing a hybrid approach is also important to analyze the time complexity of the proposal in comparison to the default approach. If we focus on the default water cycle algorithm, the time complexity has a linear relationship between the maximum number of iterations ( T ) and the population size. Hence, the time complexity of the algorithm is bounded by O ( k · n ) , where k is related to the number of iterations and n with the population size. Analyzing the hybrid approach, we also reach that time complexity is also bounded by a linear relationship between the number of iterations, which remains constant in both approaches, and the population size, which varies over the execution of the algorithm. Hence, theoretical complexity is not increased. As expected, execution time could differ for both approaches because of the size of the population, as occurs for two runs of the default algorithm with two different values for the population parameter. If we focus on the memory footprint, we reach that it depends on the size of the population. Hence, the usage of the main memory will be similar for both approaches, while considering the same population size.

6. Experimental Analysis

This section discusses the experimental methodology followed by conducting the experimentation, as well as a discussion about the results obtained while comparing both default and autonomous approaches.

6.1. Experimental Methodology

Two sets of instances are considered. The first set includes the usual 90 Boctor’s instances, where the usage of 16 machines and 30 parts are optimized (see Table 4). The first 50 Boctor’s instances consider a value of C equalling 2, i.e., two cells, and a value of M m a x in the range 8 to 12, i.e., a maximum number of machines per cell from 8 to 12. The next 40 Boctor’s instances consider a value of C equalling 3 and a value of M m a x in the range 6 to 9.
Additionally, the authors apply the algorithms to a set of more complex problems from several authors, resulting in 70 instances to be optimized. In this set of instances, the number of machines is from 5 to 40, the number of parts is from 7 to 100, M m a x is from 2 to 20, and C is from 2 to 3. Additional information about these instances is found in Table 5.
The two approaches, the default water cycle algorithm and the autonomous water cycle algorithm, are applied to solve both sets of problems. The static approach is executed for several population sizes (30, 50, 80, and 100), while maintaining N r i v e r s = 2 , T = 1200 (number of generations), and d m a x = 3 , all them experimentally fixed. The autonomous approach considers the same values for T and d m a x , while the population size is dynamically updated in the range 10 to 100. Note that both algorithms were implemented using Java SE 7 and all the experiments were performed on a 2.3 GHz Intel Core i3 laptop with 4 GB RAM running Windows 7.

6.2. Discussion of the Experimental Results

Table 6, Table 7, Table 8, Table 9, Table 10 and Table 11 show the results obtained by solving the Boctor’s instances and the set of more complex instances through both approaches, respectively. In these tables, it is shown the average execution time ( S t i m e ), in seconds, and the average number of iterations needed ( I t ) to reach the best solution found, whose fitness value is shown in the O p t field. Note that the best fitness value found for each instance of the problem appears in bold font to facilitate the understanding of the results.
Analyzing Table 6 for instances BP01 to BP30, the authors check that the best configuration for the default approach was N p o p = 80 , getting the best solution in 13 cases, while the autonomous approach reached the best solution in 12 cases. The rest of configurations for the default approach performs significantly worse than N p o p = 80 . That means that the autonomous approach could be working in a similar way than the default one with N p o p = 80 , but without being specifically configured. This fact is exemplified in Figure 5, which shows the evolution of the population size over iterations for the autonomous approach. In this figure, it is observed that the algorithm has the capacity of reducing or increasing the population according to the needed of exploitation or exploration, respectively. Additionally, it is also observed that the algorithm tends to consider large populations, matching with the best configuration found for the default approach. Regarding S t i m e , the authors check that this value is significantly lower than when considering the autonomous approach, which could be due to the improvement in the searchability of the algorithm. Note that the linear trend observed in Figure 5 is just something anecdotal and then, it does not represent the usual behavior of the population size. That is, the algorithm adapts the population size according to the needed for exploration or exploitation.
Focusing on the results in Table 7 for instances BP31 to BP60, the authors check that the best configuration for the default approach was N p o p = 100 , getting the best solution in 12 cases, while the autonomous approach reached the best solution in 10 cases. As before, the rest of configurations for the default approach performs worse than N p o p = 100 and the autonomous approach tends to provide a similar behavior than the best static configuration, but without being specifically configured. Note that S t i m e is also better in the autonomous approach.
Regarding the results in Table 8 for instances BP61 to BP90, the authors check that there are three configurations for the default approach providing a good performance ( N p o p = 50 , N p o p = 80 , and N p o p = 100 ), getting the best solutions in 7 cases. On the other hand, the autonomous approach provides the best solutions in 10 c a s e s . Thus, the autonomous approach tends to perform in a similar way than the best corresponding default approach, but without being specifically configured. This situation implies that for a real case where the best configuration could not be obtained for a problem before the execution, the usage of an autonomous approach could increase the probabilities of getting a good solution.
If we focus on the results solving more complex instances in Table 9, the authors check that the best configuration for the default approach was N p o p = 30 , getting the best solution in 6 cases, followed by N p o p = 50 with 5 cases, while the autonomous approach obtained the best solution in 12 cases. As before, there is no general configuration for the default approach which performs well in most of the instances, and then the autonomous approach seems to be a promising way to address the problem.
Focusing on the results in Table 10, the authors check that there is a configuration for the default approach that performs well in most of the instances. This configuration is N p o p = 80 , getting the best solution in 11 cases, while the autonomous approach provided the best solution in 8 cases, which is better than the rest of configurations for the default approach. That means that the autonomous approach tended to work with a similar configuration as N p o p = 80 , but without being specifically programmed. Finally, in the last set of instances in Table 11, the authors check that there is no general configuration for the default approach performing well in most of the instances. As expected from the previous analysis, the autonomous approach performs better in this case.
From this analysis, the authors conclude that the performance of the autonomous water cycle algorithm is similar than the default approach when the latter was successfully configured. This fact is especially valuable because it implies that the autonomous approach could replace the original one in cases when it is not possible to identify an adequate configuration before running the algorithm. Additionally, the autonomous approach has shown a lesser execution time finding a good solution because of the improvement in the search capacity due to the usage of a dynamic population.

7. Conclusions

In this research, the authors have demonstrated a study of an alternative approach to the application of the water cycle metaheuristic algorithm. Specifically, the authors considered concepts from the autonomous search paradigm, which is a particular case of adaptive systems, for updating the population parameter of the bio-inspired algorithm. Thus, the proposed metaheuristic can control this relevant parameter during the search process.
To know the performance of the proposal, the default water cycle algorithm and the autonomous water cycle algorithm were considered for solving the manufacturing cell design problem, which is a relevant optimization problem in the industry. Thus, two sets of instances were considered, i.e., 90 classic instances proposed by Boctor and 70 more complex instances proposed by several authors. As a result of solving these instances, the authors concluded that the performance of the autonomous approach tends to be similar to the default approach when the latter was successfully configured. This conclusion is relevant because the autonomous approach could perform in a similar way than a well-configured default approach, but without being specifically configured. That means that the autonomous approach could be considered for solving optimization problems, where configurations are unknown.
As future works, it could be interesting to improve the autonomy of the algorithm by including the capacity of dynamically updating the rest of parameters in the metaheuristic. It could also be interesting to study how to provide autonomy to other metaheuristics in the literature. Additionally, the authors plan to explore the Learnheuristic approach [67], which considers concepts from the machine learning field, to improve the search capacity of the metaheuristic.

Author Contributions

Formal analysis, G.A. and H.d.l.F.-M.; Investigation, R.S., B.C., J.M.L.-G., F.P. and C.C.; Methodology, R.S. and B.C.; Resources, R.S. and B.C.; Software, R.O. and P.C.; Validation, R.O., P.C., G.A. and H.d.l.F.-M.; Writing—original draft, J.M.L.-G.; Writing—review & editing, F.P. and C.C. All the authors of this paper hold responsibility for every part of this manuscript.

Funding

Ricardo Soto is supported by Grant CONICYT/FONDECYT/REGULAR/1190129. Broderick Crawford is supported by Grant CONICYT/FONDECYT/REGULAR/1171243. Rodrigo Olivares is supported by Postgraduate Grant Pontificia Universidad Católica de Valparaíso (INF-PUCV 2015).

Acknowledgments

The authors thank the referees for their helpful comments, which highly improved the content and readability of the work.

Conflicts of Interest

The authors declare no conflict of interest. The founding sponsors had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, and in the decision to publish the results.

References

  1. Flanders, R.E. Design, manufacture, and production control of a standard machine. Trans. Am. Soc. Mech. Eng. 1924, 46, 691–738. [Google Scholar]
  2. Soto, R.; Kjellerstrand, H.; Durán, O.; Crawford, B.; Monfroy, E.; Paredes, F. Cell formation in group technology using constraint programming and Boolean satisfiability. Expert Syst. Appl. 2012, 39, 11423–11427. [Google Scholar] [CrossRef]
  3. Soto, R.; Kjellerstrand, H.; Gutiérrez, J.; López, A.; Crawford, B.; Monfroy, E. Solving Manufacturing Cell Design Problems Using Constraint Programming. In Advanced Research in Applied Artificial Intelligence; Springer: Berlin/Heidelberg, Germany, 2012; pp. 400–406. [Google Scholar]
  4. Moon, C.; Gen, M. A genetic algorithm-based approach for design of independent manufacturing cells. Int. J. Prod. Econ. 1999, 60–61, 421–426. [Google Scholar] [CrossRef]
  5. Xambre, A.; Vilarinho, P. A simulated annealing approach for manufacturing cell formation with multiple identical machines. Eur. J. Oper. Res. 2003, 151, 434–446. [Google Scholar] [CrossRef]
  6. Huang, C.; Li, Y.; Yao, X. A Survey of Automatic Parameter Tuning Methods for Metaheuristics. IEEE Trans. Evol. Comput. 2019. [Google Scholar] [CrossRef]
  7. Eskandar, H.; Sadollah, A.; Bahreininejad, A.; Hamdi, M. Water cycle algorithm—A novel metaheuristic optimization method for solving constrained engineering optimization problems. Comput. Struct. 2012, 110–111, 151–166. [Google Scholar] [CrossRef]
  8. Sadollah, A.; Eskandar, H.; Lee, H.M.; Yoo, D.G.; Kim, J.H. Water cycle algorithm: A detailed standard code. SoftwareX 2015, 5, 37–43. [Google Scholar] [CrossRef]
  9. Hamadi, Y.; Monfroy, E.; Saubion, F. What Is Autonomous Search? In Hybrid Optimization; Springer: New York, NY, USA, 2010; pp. 357–391. [Google Scholar]
  10. Črepinšek, M.; Liu, S.H.; Mernik, M. Exploration and exploitation in evolutionary algorithms: A survey. ACM Comput. Surv. (CSUR) 2013, 45, 35. [Google Scholar] [CrossRef]
  11. Boctor, F.F. A Jinear formulation of the machine-part cell formation problem. Int. J. Prod. Res. 1991, 29, 343–356. [Google Scholar] [CrossRef]
  12. Burbidge, J.L. Production flow analysis for planning group technology. J. Oper. Manag. 1991, 10, 5–27. [Google Scholar] [CrossRef]
  13. Purcheck, G.F.K. A Linear-Programming Method for the Combinatorial Grouping of an Incomplete Power Set. J. Cybern. 1975, 5, 51–76. [Google Scholar] [CrossRef]
  14. Oliva-López, E.; Purcheck, G.F. Load balancing for group technology planning and control. Int. J. Mach. Tool Des. Res. 1979, 19, 259–274. [Google Scholar] [CrossRef]
  15. Kusiak, A.; Chow, W.S. Efficient solving of the group technology problem. J. Manuf. Syst. 1987, 6, 117–124. [Google Scholar] [CrossRef]
  16. Albadawi, Z.; Bashir, H.A.; Chen, M. A mathematical approach for the formation of manufacturing cells. Comput. Ind. Eng. 2005, 48, 3–21. [Google Scholar] [CrossRef]
  17. Sankaran, S.; Rodin, E.Y. Multiple objective decision making approach to cell formation: A goal programming model. Math. Comput. Model. 1990, 13, 71–81. [Google Scholar] [CrossRef]
  18. Shafer, S.M.; Rogers, D.F. A goal programming approach to the cell formation problem. J. Oper. Manag. 1991, 10, 28–43. [Google Scholar] [CrossRef]
  19. Aljaber, N.; Baek, W.; Chen, C.L. A tabu search approach to the cell formation problem. Comput. Ind. Eng. 1997, 32, 169–185. [Google Scholar] [CrossRef]
  20. Lozano, S.; Adenso-Diaz, B.; Eguia, I.; Onieva, L. A One-Step Tabu Search Algorithm for Manufacturing Cell Design. J. Oper. Res. Soc. 1999, 50, 509–516. [Google Scholar] [CrossRef]
  21. Chang, C.C.; Wu, T.H.; Wu, C.W. An efficient approach to determine cell formation, cell layout and intracellular machine sequence in cellular manufacturing systems. Comput. Ind. Eng. 2013, 66, 438–450. [Google Scholar] [CrossRef]
  22. Lei, D.; Wu, Z. Tabu search-based approach to multi-objective machine-part cell formation. Int. J. Prod. Res. 2005, 43, 5241–5252. [Google Scholar] [CrossRef]
  23. Chung, S.H.; Wu, T.H.; Chang, C.C. An efficient tabu search algorithm to the cell formation problem with alternative routings and machine reliability considerations. Comput. Ind. Eng. 2011, 60, 7–15. [Google Scholar] [CrossRef]
  24. Venugopal, V.; Narendran, T. A genetic algorithm approach to the machine-component grouping problem with multiple objectives. Comput. Ind. Eng. 1992, 22, 469–480. [Google Scholar] [CrossRef]
  25. Gupta, Y.; Gupta, M.; Kumar, A.; Sundaram, C. A genetic algorithm-based approach to cell composition and layout design problems. Int. J. Prod. Res. 1996, 34, 447–482. [Google Scholar] [CrossRef]
  26. Lee, M.K.; Luong, H.; Abhary, K. A genetic algorithm based cell design considering alternative routing. Comput. Integr. Manuf. Syst. 1997, 10, 93–108. [Google Scholar] [CrossRef]
  27. Chan, F.T.S.; Lau, K.W.; Chan, L.Y.; Lo, V.H.Y. Cell formation problem with consideration of both intracellular and intercellular movements. Int. J. Prod. Res. 2008, 46, 2589–2620. [Google Scholar] [CrossRef]
  28. Chiang, C.P.; Lee, S.D. A genetic-based algorithm with the optimal partition approach for the cell formation in bi-directional linear flow layout. Int. J. Comput. Integr. Manuf. 2004, 17, 364–375. [Google Scholar] [CrossRef]
  29. Imran, M.; Kang, C.; Lee, Y.H.; Jahanzaib, M.; Aziz, H. Cell formation in a cellular manufacturing system using simulation integrated hybrid genetic algorithm. Comput. Ind. Eng. 2017, 105, 123–135. [Google Scholar] [CrossRef]
  30. Chan, F.T.; Lau, K.; Chan, P.; Choy, K. Two-stage approach for machine-part grouping and cell layout problems. Robot. Comput.-Integr. Manuf. 2006, 22, 217–238. [Google Scholar] [CrossRef]
  31. Nsakanda, A.L.; Diaby, M.; Price, W.L. Hybrid genetic approach for solving large-scale capacitated cell formation problems with multiple routings. Eur. J. Oper. Res. 2006, 171, 1051–1070. [Google Scholar] [CrossRef]
  32. Boulif, M.; Atif, K. A new branch-&-bound-enhanced genetic algorithm for the manufacturing cell formation problem. Comput. Oper. Res. 2006, 33, 2219–2245. [Google Scholar]
  33. Zeb, A.; Khan, M.; Khan, N.; Tariq, A.; Ali, L.; Azam, F.; Jaffery, S.H.I. Hybridization of simulated annealing with genetic algorithm for cell formation problem. Int. J. Adv. Manuf. Technol. 2016, 86, 2243–2254. [Google Scholar] [CrossRef]
  34. Banerjee, I.; Das, P. Group technology based adaptive cell formation using predator–prey genetic algorithm. Appl. Soft Comput. 2012, 12, 559–572. [Google Scholar] [CrossRef]
  35. Wu, T.H.; Chang, C.C.; Chung, S.H. A simulated annealing algorithm for manufacturing cell formation problems. Expert Syst. Appl. 2008, 34, 1609–1617. [Google Scholar] [CrossRef]
  36. Noktehdan, A.; Karimi, B.; Kashan, A.H. A differential evolution algorithm for the manufacturing cell formation problem using group based operators. Expert Syst. Appl. 2010, 37, 4822–4829. [Google Scholar] [CrossRef]
  37. Tavakkoli-Moghaddam, R.; Javadian, N.; Khorrami, A.; Gholipour-Kanani, Y. Design of a scatter search method for a novel multi-criteria group scheduling problem in a cellular manufacturing system. Expert Syst. Appl. 2010, 37, 2661–2669. [Google Scholar] [CrossRef]
  38. Durán, O.; Rodriguez, N.; Consalter, L.A. Collaborative particle swarm optimization with a data mining technique for manufacturing cell design. Expert Syst. Appl. 2010, 37, 1563–1567. [Google Scholar] [CrossRef]
  39. Soto, R.; Crawford, B.; Almonacid, B.; Paredes, F. A Migrating Birds Optimization Algorithm for Machine-Part Cell Formation Problems. In Advances in Artificial Intelligence and Soft Computing, Proceedings of the 14th Mexican International Conference on Artificial Intelligence (MICAI 2015), Cuernavaca, Mexico, 25–31 October 2015; Part I; Springer International Publishing: Cham, Switzerland, 2015; pp. 270–281. [Google Scholar]
  40. Soto, R.; Crawford, B.; Almonacid, B.; Paredes, F. Efficient Parallel Sorting for Migrating Birds Optimization When Solving Machine-Part Cell Formation Problems. Sci. Program. 2016, 2016, 21. [Google Scholar] [CrossRef]
  41. Soto, R.; Crawford, B.; Vega, E.; Paredes, F. Solving Manufacturing Cell Design Problems Using an Artificial Fish Swarm Algorithm. In Lecture Notes in Computer Science; Springer International Publishing: Berlin/Heidelberg, Germany, 2015; pp. 282–290. [Google Scholar]
  42. Soto, R.; Crawford, B.; Vega, E.; Johnson, F.; Paredes, F. Solving Manufacturing Cell Design Problems Using a Shuffled Frog Leaping Algorithm. In Advances in Intelligent Systems and Computing; Springer International Publishing: Berlin/Heidelberg, Germany, 2015; pp. 253–261. [Google Scholar]
  43. Soto, R.; Crawford, B.; Alarcón, A.; Zec, C.; Vega, E.; Reyes, V.; Araya, I.; Olguín, E. Solving Manufacturing Cell Design Problems by Using a Bat Algorithm Approach. In Lecture Notes in Computer Science; Springer International Publishing: Berlin/Heidelberg, Germany, 2016; pp. 184–191. [Google Scholar]
  44. Munoz, R.; Olivares, R.; Taramasco, C.; Villarroel, R.; Soto, R.; Alonso-Sánchez, M.F.; Merino, E.; de Albuquerque, V.H.C. A new EEG software that supports emotion recognition by using an autonomous approach. Neural Comput. Appl. 2018. [Google Scholar] [CrossRef]
  45. Soto, R.; Crawford, B.; Lama, J.; Almonacid, B. A firefly algorithm to solve the manufacturing cell design problem. In Proceedings of the 2016 11th Iberian Conference on Information Systems and Technologies (CISTI), Las Palmas, Spain, 15–18 June 2016; pp. 1–4. [Google Scholar]
  46. Soto, R.; Crawford, B.; Lama, J.; Paredes, F. A Firefly Algorithm to Solve the Manufacturing Cell Design Problem. In Advances in Intelligent Systems and Computing; Springer International Publishing: Berlin/Heidelberg, Germany, 2016; pp. 103–114. [Google Scholar]
  47. Soto, R.; Crawford, B.; Toledo, A.A.; de la Fuente-Mella, H.; Castro, C.; Paredes, F.; Olivares, R. Solving the Manufacturing Cell Design Problem through Binary Cat Swarm Optimization with Dynamic Mixture Ratios. Comput. Intell. Neurosci. 2019, 2019. [Google Scholar] [CrossRef]
  48. Soto, R.; Crawford, B.; Olivares, R.; Conti, M.D.; Rubio, R.; Almonacid, B.; Niklander, S. Resolving the Manufacturing Cell Design Problem Using the Flower Pollination Algorithm. In Lecture Notes in Computer Science; Springer International Publishing: Berlin/Heidelberg, Germany, 2016; pp. 184–195. [Google Scholar]
  49. Munoz, R.; Olivares, R.; Taramasco, C.; Villarroel, R.; Soto, R.; Barcelos, T.S.; Merino, E.; Alonso-Sánchez, M.F. Using Black Hole Algorithm to Improve EEG-Based Emotion Recognition. Comput. Intell. Neurosci. 2018, 2018. [Google Scholar] [CrossRef]
  50. Almonacid, B.; Aspée, F.; Soto, R.; Crawford, B.; Lama, J. Solving the manufacturing cell design problem using the modified binary firefly algorithm and the egyptian vulture optimisation algorithm. IET Softw. 2017, 11, 105–115. [Google Scholar] [CrossRef]
  51. Soto, R.; Crawford, B.; Olivares, R.; Galleguillos, C.; Castro, C.; Johnson, F.; Paredes, F.; Norero, E. Using autonomous search for solving constraint satisfaction problems via new modern approaches. Swarm Evol. Comput. 2016, 30, 64–77. [Google Scholar] [CrossRef]
  52. Soto, R.; Crawford, B.; Vega, E.; Gómez, A.; Gómez-Pulido, J.A. Solving the Set Covering Problem Using Spotted Hyena Optimizer and Autonomous Search. In Proceedings of the International Conference on Industrial, Engineering and Other Applications of Applied Intelligent Systems, Graz, Austria, 9–11 July 2019; pp. 854–861. [Google Scholar]
  53. Soto, R.; Crawford, B.; Herrera, R.; Olivares, R.; Johnson, F.; Paredes, F. WSM tuning in autonomous search via gravitational search algorithms. In Artificial Intelligence Perspectives and Applications; Springer: Berlin/Heidelberg, Germany, 2015; pp. 159–168. [Google Scholar]
  54. Sadollah, A.; Eskandar, H.; Bahreininejad, A.; Kim, J.H. Water cycle algorithm with evaporation rate for solving constrained and unconstrained optimization problems. Appl. Soft Comput. 2015, 30, 58–71. [Google Scholar] [CrossRef]
  55. Sadollah, A.; Eskandar, H.; Kim, J.H. Water cycle algorithm for solving constrained multi-objective optimization problems. Appl. Soft Comput. 2015, 27, 279–298. [Google Scholar] [CrossRef]
  56. Heidari, A.A.; Abbaspour, R.A.; Jordehi, A.R. Gaussian bare-bones water cycle algorithm for optimal reactive power dispatch in electrical power systems. Appl. Soft Comput. 2017, 57, 657–671. [Google Scholar] [CrossRef]
  57. Pahnehkolaei, S.M.A.; Alfi, A.; Sadollah, A.; Kim, J.H. Gradient-based water cycle algorithm with evaporation rate applied to chaos suppression. Appl. Soft Comput. 2017, 53, 420–440. [Google Scholar] [CrossRef]
  58. Wemmerlöv, U.; Hyer, N.L. Cellular manufacturing in the U.S. industry: A survey of users. Int. J. Prod. Res. 1989, 27, 1511–1530. [Google Scholar] [CrossRef]
  59. Zhang, Z. Modeling complexity of cellular manufacturing systems. Appl. Math. Model. 2011, 35, 4189–4195. [Google Scholar] [CrossRef]
  60. Mansouri, S.A.; Husseini, S.M.; Newman, S. A review of the modern approaches to multi-criteria cell design. Int. J. Prod. Res. 2000, 38, 1201–1218. [Google Scholar] [CrossRef]
  61. Bonoli, A.; Fusco, E.D.; Zanni, S.; Lauriola, I.; Ciriello, V.; Federico, V.D. Green Smart Technology for Water (GST4Water): Life Cycle Analysis of Urban Water Consumption. Water 2019, 11, 389. [Google Scholar] [CrossRef]
  62. Antunes, L.; Ghisi, E.; Thives, L. Permeable Pavements Life Cycle Assessment: A Literature Review. Water 2018, 10, 1575. [Google Scholar] [CrossRef]
  63. Hofman-Caris, R.; Bertelkamp, C.; de Waal, L.; van den Brand, T.; Hofman, J.; van der Aa, R.; van der Hoek, J. Rainwater Harvesting for Drinking Water Production: A Sustainable and Cost-Effective Solution in The Netherlands? Water 2019, 11, 511. [Google Scholar] [CrossRef]
  64. Zahid, A.; Abbas, H.T.; Imran, M.A.; Qaraqe, K.A.; Alomainy, A.; Cumming, D.R.S.; Abbasi, Q.H. Characterization and Water Content Estimation Method of Living Plant Leaves Using Terahertz Waves. Appl. Sci. 2019, 9, 2781. [Google Scholar] [CrossRef]
  65. Nguyen, H.T.T.; Chao, H.R.; Chen, K.C. Treatment of Organic Matter and Tetracycline in Water by Using Constructed Wetlands and Photocatalysis. Appl. Sci. 2019, 9, 2680. [Google Scholar] [CrossRef]
  66. Slimani, Z.; Trabelsi, A.; Virgone, J.; Freire, R.Z. Study of the Hygrothermal Behavior of Wood Fiber Insulation Subjected to Non-Isothermal Loading. Appl. Sci. 2019, 9, 2359. [Google Scholar] [CrossRef]
  67. Calvet, L.; de Armas, J.; Masip, D.; Juan, A.A. Learnheuristics: Hybridizing metaheuristics with machine learning for optimization with dynamic inputs. Open Math. 2017, 15, 261–280. [Google Scholar] [CrossRef]
Figure 1. Hydrological water cycle.
Figure 1. Hydrological water cycle.
Applsci 09 04736 g001
Figure 2. Transformation process.
Figure 2. Transformation process.
Applsci 09 04736 g002
Figure 3. Flow from a stream to its connecting river.
Figure 3. Flow from a stream to its connecting river.
Applsci 09 04736 g003
Figure 4. Exchange of roles between a stream and its river.
Figure 4. Exchange of roles between a stream and its river.
Applsci 09 04736 g004
Figure 5. Population size evolution in the autonomous approach, while solving the instance BP10.
Figure 5. Population size evolution in the autonomous approach, while solving the instance BP10.
Applsci 09 04736 g005
Table 1. Problem example. Machine-part matrix.
Table 1. Problem example. Machine-part matrix.
Machines
ABCDEFGHIJ
1
2
3
4
Parts5
6
7
8
9
10
Table 2. Problem example. Randomly generated machine-cell and part-cell matrices.
Table 2. Problem example. Randomly generated machine-cell and part-cell matrices.
Cell Cell
123 123
A 1
B 2
C 3
D 4
MachinesE Parts5
F 6
G 7
H 8
I 9
J 10
Table 3. Problem example. Optimized machine-cell and part-cell matrices.
Table 3. Problem example. Optimized machine-cell and part-cell matrices.
Applsci 09 04736 i003
Table 4. Boctor’s instances.
Table 4. Boctor’s instances.
InstanceCM max BestInstanceCM max BestInstanceCM max Best
IDKnownIDKnownIDKnown
BP012811BP112911BP2121011
BP02287BP12296BP222104
BP03284BP13294BP232104
BP042814BP142913BP2421013
BP05289BP15296BP252106
BP06285BP16293BP262103
BP07287BP17294BP272104
BP082813BP182910BP282108
BP09288BP19298BP292108
BP10288BP20295BP302105
BP3121111BP4121211BP513627
BP322113BP422123BP52367
BP332113BP432121BP53369
BP3421113BP4421213BP543627
BP352115BP452124BP553611
BP362113BP462122BP56366
BP372114BP472124BP573611
BP382115BP482125BP583614
BP392115BP492125BP593612
BP402115BP502125BP603610
BP613718BP713811BP813911
BP62376BP72386BP82396
BP63374BP73384BP83394
BP643718BP743814BP843913
BP65378BP75388BP85396
BP66374BP76384BP86393
BP67375BP77385BP87394
BP683711BP783811BP883910
BP693712BP79388BP89398
BP70378BP80388BP90395
Table 5. A set of complex instances from several authors.
Table 5. A set of complex instances from several authors.
InstanceMPIDM max CBestIDM max CBest
(Author)KnowKnow
King57CFP01320CFP02232
Waghodekar57CFP03325CFP04238
Seifoddini518CFP05325CFP062311
Kusiak68CFP07322CFP08237
Kusiak711CFP09423CFP10335
Boctor711CFP11422CFP12332
Seifoddini812CFP13426CFP14337
Chandrasekharan820CFP15427CFP163314
Chandrasekharan820CFP174228CFP183339
Mosier1010CFP19521CFP20430
Chan1015CFP21524CFP22430
Askin1424CFP23721CFP24532
Stanfel1424CFP25722CFP265322
McCormick1624CFP278216CFP286317
Srinivasan1630CFP298212CFP3063
King1643CFP318215CFP3263
Carrie1824CFP339213CFP3463
Mosier2020CFP3510227CFP3673
Kumar2023CFP3710225CFP3873
Carrie2035CFP391021CFP4073
Boe2035CFP41102CFP4273
Chandrasekharan2440CFP43122CFP4483
Chandrasekharan2440CFP45122CFP4683
Chandrasekharan2440CFP47122CFP4883
Chandrasekharan2440CFP49122CFP5083
Chandrasekharan2440CFP51122CFP5283
Chandrasekharan2440CFP53122CFP5483
McCormick2727CFP55142CFP5693
Carrie2846CFP57142CFP58103
Kumar3041CFP59152CFP60103
Stanfel3050CFP61152CFP62103
Stanfel3050CFP63152CFP64103
King3090CFP65182CFP66123
McCormick3753CFP67192CFP68133
Chandrasekharan40100CFP69202CFP70143
Table 6. Results solving the Boctor’s instances (1/3).
Table 6. Results solving the Boctor’s instances (1/3).
Water Cycle Algorithm
InstanceAutonomous ApproachDefault Approach
ID N pop { 10 , 100 } N pop = 30 N pop = 50 N pop = 80 N pop = 100
Stime It Opt Stime It Opt Stime It Opt Stime It Opt Stime It Opt
BP0111,631196.7111.139372157.5211.8111,572115.1611.2613,097169.1311.0013,163149.5211.39
BP0211,427172.7111.009081137.7111.2611,34580.2911.0612,92171.5811.0013,24746.3911.00
BP0311,572222.6811.009021178.5511.1310,329126.6811.0012,64272.0011.0013,28190.2311.00
BP0411,594128.8111.168964156.0011.2311,378158.5211.0012,863118.9711.0012,90361.1311.06
BP0511,31196.5811.159102146.9011.6510,363211.3911.0612,759154.0011.1013,347136.6111.19
BP0611,601370.877.038969135.037.2611,729241.487.2912,865264.167.2912,829252.947.16
BP0711,872141.266.159093111.716.2311,37796.136.2913,04282.846.4513,17165.486.45
BP0811,646199.065.108972136.485.3511,404178.874.9412,825144.294.7713,067142.134.90
BP0912,05433.354.26883686.354.7411,58174.973.7112,54835.774.1913,06670.524.00
BP1011,94281.613.379177106.033.7411,60247.553.6812,539114.103.2913,14772.103.48
BP1111,7235.975.3891288.774.7711,9003.555.5212,7431.165.0013,2920.715.48
BP1211,60673.654.39903852.654.6511,84040.554.5212,61446.234.5213,34755.194.65
BP1311,57695.944.138941178.194.4511,707114.234.3212,59665.134.1313,01669.844.00
BP1411,38435.263.15901937.773.5510,78916.943.5812,83926.843.4513,43111.653.65
BP1511,36577.192.15906236.192.1311,06231.902.2612,5147.192.4513,16849.262.06
BP1611,449121.2313.158907199.4214.4511,851251.4514.2612,709203.1614.2313,245226.0614.32
BP1711,47871.3213.00899653.3213.0010,80548.2313.0012,80123.1313.0013,10420.7113.00
BP1811,272110.1313.00894768.8713.0010,69596.4813.0012,71163.3213.0013,21958.7113.00
BP1911,334186.8113.199028127.3213.0611,087140.5213.1312,679169.6113.1013,03785.1013.00
BP2011,416269.3213.109022167.4513.4511,509192.0613.1312,919186.6513.1313,075142.0613.06
BP2111,44419.619.1490403.589.9711,8860.819.7712,9924.039.6512,9901.979.84
BP2211,41330.977.03907952.197.5811,60823.977.6112,7729.357.1313,20811.007.45
BP2311,11899.037.02906365.397.1910,60723.427.1312,78485.427.0612,870119.847.13
BP2411,39725.556.27913499.327.1011,71876.166.1912,77861.775.6813,11259.166.00
BP2511,925164.105.16910376.394.8710,51369.394.9013,099140.424.6513,255119.944.55
BP2611,724112.585.169071189.945.2611,784139.715.3913,111176.395.0613,023218.585.10
BP2711,566189.653.819100115.064.2911,95683.003.7112,85771.614.2313,14965.553.48
BP2811,60595.653.81900831.484.2311,34767.233.9413,074118.103.6113,02421.163.81
BP2911,481124.293.069042193.133.1310,89568.653.1313,11648.353.0613,241153.683.39
BP3011,4593.393.10907869.712.6811,75067.262.6512,876137.972.6113,21791.582.68
Table 7. Results solving the Boctor’s instances (2/3).
Table 7. Results solving the Boctor’s instances (2/3).
Water Cycle Algorithm
InstanceAutonomous ApproachDefault Approach
ID N pop { 10 , 100 } N pop = 30 N pop = 50 N pop = 80 N pop = 100
Stime It Opt Stime It Opt Stime It Opt Stime It Opt Stime It Opt
BP3111,191262.527.098989188.877.2911,711196.197.2912,982173.747.3213,080152.237.13
BP3211,22446.355.19906380.134.7710,66677.324.9412,87567.614.5813,37845.164.58
BP3311,79252.064.58895866.554.5811,54724.584.1912,88274.394.4513,39753.064.19
BP3411,49257.844.12907154.325.0310,80472.814.6513,07734.034.5813,43842.134.39
BP3511,45653.194.11900588.134.7411,58816.944.7412,97247.874.7713,23053.744.58
BP3611,251427.9013.169071336.5213.4810,919185.8713.2912,983187.4513.2313,262275.6813.06
BP3711,32151.3510.07908298.3210.9411,77035.5510.9712,51976.8111.0313,19279.5810.77
BP3811,318155.979.16893381.169.0010,856124.619.6812,861221.618.7713,195117.528.81
BP3911,571126.267.528985174.616.1310,582123.165.5212,842119.455.3913,405145.165.74
BP4011,763116.686.759115142.136.2611,869112.065.9713,09655.775.5813,02575.975.52
BP4111,275174.689.389100144.4210.2911,95186.909.5512,76299.559.4513,40429.689.61
BP4211,458150.068.008975100.558.2911,709180.948.3912,570106.168.1012,975113.138.00
BP4311,43677.358.279051133.908.6511,83849.979.0612,875168.198.8713,407128.108.58
BP4411,22279.266.249051151.816.8711,795127.746.4212,710136.876.7113,17177.266.06
BP4511,304205.946.15914878.197.3211,60995.976.8113,193120.456.2613,356223.105.77
BP4611,363243.428.02906155.459.3211,55090.238.8412,923196.618.6512,970106.488.65
BP4711,168235.166.169034161.236.3210,67799.295.5812,712165.585.8713,188149.355.84
BP4811,692109.355.759079139.945.8110,213131.945.6112,89160.265.6113,32636.035.71
BP4911,552121.355.47903896.777.0610,171196.906.3912,762123.425.7712,924173.685.39
BP5011,47197.005.59911173.616.4211,449139.065.7112,61876.005.8413,04482.236.10
BP5111,77139.1628.0011,96621.0331.2610,41844.6830.5213,07939.1930.8713,60417.8423.71
BP5211,5060.2322.1811,5160.9823.3210,3052.7422.9413,24956.3922.7413,5310.0322.10
BP5312,134239.4815.1211,932185.8414.0010,860236.3514.6113,095233.8113.8413,483226.9013.81
BP5411,653165.2614.1211,880168.3213.0011,000209.3213.2613,482158.5813.4513,677159.4515.26
BP5512,18257.5214.2911,78092.7414.1010,66496.0612.9713,22429.7111.8413,88322.5811.32
BP5611,77764.4812.1011,68327.3213.8111,31343.589.1313,085132.3910.5513,60572.8411.48
BP5712,00813.2311.2311,63430.5511.6111,1260.109.3213,12957.8110.1613,5470.0010.26
BP5812,096161.238.1411,741114.459.9011,31448.038.2913,19775.718.3513,777163.198.90
BP5911,76711.4513.0712,01541.1912.6511,0065.9012.1613,566134.5211.8713,84622.169.29
BP6011,6629.4210.2611,77265.589.5810,99728.429.0613,2903.879.1913,6701.589.58
Table 8. Results solving the Boctor’s instances (3/3).
Table 8. Results solving the Boctor’s instances (3/3).
Water Cycle Algorithm
InstanceAutonomous ApproachDefault Approach
ID N pop { 10 , 100 } N pop = 30 N pop = 50 N pop = 80 N pop = 100
Stime It Opt Stime It Opt Stime It Opt Stime It Opt Stime It Opt
BP6111,50617.777.1911,4740.277.8110,97280.616.1313,27997.035.8113,81517.136.29
BP6211,72644.615.3111,78485.977.0610,87078.745.0013,46631.555.8113,95760.526.00
BP6311,636152.9727.3411,661148.0027.9011,3359.6127.5813,338113.9727.5813,83585.5521.52
BP6411,75296.8414.2311,425135.9720.6811,282141.2620.4513,34353.7120.5813,856115.9021.29
BP6511,67070.6514.8411,65740.7418.0311,05067.6816.3513,07498.8715.8113,78781.7417.45
BP6611,539206.2314.3411,679180.1316.6511,192197.9014.6513,373265.3214.2313,781150.5814.58
BP6711,872162.6511.2112,170132.8714.1010,91271.5813.3213,983155.0612.8713,475141.3512.74
BP6811,87142.4512.0011,7129.3214.8111,05460.9712.0313,314106.9010.3513,76359.9712.03
BP6911,82735.1311.4511,85211.7711.1610,90953.429.7113,18417.5510.0613,92557.2611.06
BP7011,90130.6510.7712,29018.6511.8411,45576.359.5213,02062.659.5513,82148.979.26
BP7111,98972.909.1211,90780.719.6110,87451.948.8713,42777.529.3513,60990.617.19
BP7211,63932.299.0111,9688.358.9410,67819.528.4513,56241.718.7413,77450.067.52
BP7311,59639.527.1312,0197.659.3510,8120.527.4513,44332.688.0013,7937.487.06
BP7411,50934.657.8711,79356.746.9710,9516.716.5213,49623.426.2313,65245.976.94
BP7511,8270.4610.1011,64855.0017.8111,04165.0615.1313,42084.1314.2613,60028.8710.48
BP7611,7968.688.3411,4767.6112.4211,0975.949.8113,10458.459.4213,53727.4511.87
BP7711,86015.7110.3511,5271.3910.6810,4730.299.0613,45622.489.0613,59142.719.74
BP7811,747128.977.4711,56422.329.5211,20025.297.6113,21020.195.6513,69078.488.35
BP7911,810183.8713.6511,53191.8420.2910,8653.6818.3513,131129.4217.9013,919121.0316.32
BP8011,77845.7716.3711,5922.9418.2311,17039.8416.2913,22042.3217.0613,91948.9716.90
BP8111,493101.6814.0411,60064.8714.1911,36855.0014.6513,35385.0014.7113,56873.8115.61
BP8211,56992.1314.6511,53968.9713.4511,23656.5212.9413,23157.8713.6813,85942.3514.58
BP8311,564104.0611.2611,43238.1919.6110,68260.8716.1913,38374.1916.7713,746110.1315.03
BP8411,23544.8713.1711,5426.9718.1310,73744.5816.0313,63954.4815.2613,62316.2616.06
BP8511,46929.1911.1811,67360.2914.4510,78421.6510.5213,26236.6511.6513,756128.8712.87
BP8611,654110.9412.3211,56067.1913.4511,15497.5211.2313,619128.489.3513,74969.7711.10
BP8711,3549.3514.3511,84568.2616.8410,7795.1915.4513,31663.6115.0313,89923.4512.35
BP8811,27816.0615.2611,48731.1316.1310,88716.3512.7713,15326.4812.8113,22727.2313.19
BP8911,45535.8711.8711,88813.7112.8111,05783.8710.6813,22058.6511.1313,80389.7110.45
BP9011,39454.778.2411,71445.3910.4510,89589.3210.3213,028149.818.2613,91475.429.71
Table 9. Results solving complex instances (1/3).
Table 9. Results solving complex instances (1/3).
Water Cycle Algorithm
InstanceAutonomous ApproachDefault Approach
ID N pop { 10 , 100 } N pop = 30 N pop = 50 N pop = 80 N pop = 100
Stime It Opt Stime It Opt Stime It Opt Stime It Opt Stime It Opt
CF01446320.090.00489030.200.00558341.420.00521022.020.00556441.230.00
CF02410010.035.00498240.125.00467734.565.00526734.895.00604534.235.00
CF0345621.055.00472931.555.005129102.295.00524145.995.00668045.455.00
CF04414019.082.004999129.092.005577234.552.305578182.332.456137192.442.00
CF0543217.082.00476229.423.55457956.893.495023197.383.00580543.233.56
CF06474920.503.12453412.232.32512412.452.45531038.032.50613687.932.00
CF07420058.986.07470079.206.3348940.026.09527256.106.33617931.566.34
CF08489063.889.654124145.678.23520056.127.02516152.488.23427121.688.34
CF0943871.8029.68401988.7630.34467987.9229.2051244.1933.12601256.2329.23
CF104662107.071.87458956.782.44557923.121.28581246.793.66596787.341.98
CF11413672.006.71469246.894.00548998.124.12568117.234.77612669.344.12
CF12412334.702.014532109.231.92531376.124.215125168.782.45617535.304.12
CF134980186.072.67452337.343.44509251.223.10523978.992.00637645.233.12
CF144215123.9016.16442335.4618.23533332.5616.22456935.6717.34612576.3517.33
CF15457831.8512.07427878.5416.23457887.9912.45417292.3412.56556953.3412.46
CF164567123.9815.12498277.7717.444572182.2315.29537445.6719.34616290.6315.89
CF17499112.4514.67472967.9713.454793124.5617.23551735.4613.45457987.3414.22
CF184235128.0927.99493456.7829.03434698.2331.23577168.8929.34576454.2328.45
CF194215201.1225.91457976.2328.33514141.2326.34527923.7826.34657951.2426.34
CF20472169.082.02468934.872.34502522.453.12601194.232.56618974.672.34
CF21467641.0022.42468943.1225.00457877.2422.245102144.2221.34583413.6822.24
CF22466667.671.77532543.652.32455798.230.23512946.384.12612256.341.02
CF23473338.926.84483553.756.995034129.189.22580867.457.236123124.687.34
CF244935125.8810.94491245.7811.29517834.2210.22519866.949.34663283.499.84
CF25423556.7219.86452312.9723.44468956.8921.32698687.2319.34482934.6722.23
CF26456880.9122.21486767.6823.44433381.2824.55656764.2323.68597622.6723.24
CF274377132.0122.42466778.2322.09512986.2326.23611851.0122.456136163.4923.56
CF284213100.8232.05489945.2332.99519923.2433.22529230.4534.56637842.5633.34
CF29491231.5037.35456797.2338.12527545.2337.23512350.2039.34456278.9337.34
CF30476266.785.944987156.346.015331121.475.12639934.855.68656530.016.23
Table 10. Results solving complex instances (2/3).
Table 10. Results solving complex instances (2/3).
Water Cycle Algorithm
InstanceAutonomous ApproachDefault Approach
ID N pop { 10 , 100 } N pop = 30 N pop = 50 N pop = 80 N pop = 100
Stime It Opt Stime It Opt Stime It Opt Stime It Opt Stime It Opt
CF31458981.447.485744232.677.09412387.278.125509156.568.99619563.567.97
CF324412146.3425.32493557.6826.97512456.9225.22598249.0325.23651278.4624.21
CF33456798.9240.77556723.3240.01579472.0840.23561278.0241.57639156.2342.23
CF34456786.12218.04492412.34232.12456882.96231.59585757.89217.67589398.32221.15
CF35491240.7120.554678122.2314.23451212.3913.55566283.4612.565704112.3414.45
CF36480950.342.00457961.922.00512353.232.00582345.232.00672367.232.00
CF374579132.458.00498648.138.34498234.238.00590253.348.00572387.128.00
CF38479098.3411.23523051.0911.235234192.4311.00662398.1211.00623432.4711.00
CF39490255.107.00412369.237.00591230.347.00509148.237.00687154.127.00
CF40489141.345.00492666.345.00482756.435.00612377.345.00612376.125.00
CF41489164.122.00520982.122.00578258.232.23509279.572.00598312.682.00
CF42498177.237.00550056.197.00512373.237.00539752.127.00661265.697.00
CF43452056.5614.00498757.2315.23498280.2314.00666031.5616.20598177.2314.00
CF44453252.4540.23456255.2342.23467251.2341.70523412.5745.34698176.3541.23
CF45487364.982.154982124.592.23508822.451.23509818.474.35691291.342.34
CF46476291.230.23430977.340.23509165.781.10523057.211.23612588.312.34
CF474623102.343.69498676.233.13598274.232.20580987.344.12689810.343.34
CF48498173.343.65521054.332.344562128.233.12572973.232.34535434.573.12
CF49487157.0925.69497558.1222.35412312.3423.40667810.2324.34498164.4622.34
CF50481253.8917.28498761.2320.23572229.2318.23598245.2417.356198264.1218.23
CF51471893.5622.23419857.1224.56498277.3423.40509191.2323.466987136.3422.35
CF52441253.2319.235012105.2318.23598752.3420.23589031.4520.43587138.2320.34
CF53409267.7541.89487672.2346.12551277.3541.23578967.2345.35512365.2542.34
CF54490273.9834.47476452.3135.67542393.3436.98612354.1236.34671259.2136.45
CF55478253.4618.98556276.2319.325982192.3417.98509269.2316.87625854.1315.56
CF56478294.1235.79435798.2336.89591777.2336.98568977.2035.12628972.4636.45
CF57475742.104.56418957.235.23472888.346.98623482.234.12601238.574.48
CF58457821.858.695762133.239.23598279.239.54581978.358.23598248.239.86
CF59468412.8714.58452772.3414.55512367.3414.87512331.3415.12623069.1214.97
CF60489845.8233.87534245.1235.43533545.0133.52612323.1232.24649861.6833.56
Table 11. Results solving complex instances (3/3).
Table 11. Results solving complex instances (3/3).
Water Cycle Algorithm
InstanceAutonomous ApproachDefault Approach
ID N pop { 10 , 100 } N pop = 30 N pop = 50 N pop = 80 N pop = 100
Stime It Opt Stime It Opt Stime It Opt Stime It Opt Stime It Opt
CF61478767.3435.01458198.2334.56551253.2338.34698719.2336.12621345.1235.34
CF624899122.5632.58419834.2332.45598231.2437.236349149.2332.89609859.2333.56
CF63470083.5771.69592967.6072.35462745.1278.23523498.3471.23692849.1271.35
CF64469875.2953.68472156.7855.32498256.2359.23401271.2354.126340111.3554.34
CF65467787.3111.67589277.8911.01463585.3017.235821161.2410.23632951.5710.23
CF66498652.5815.56491256.7815.57587234.6718.335898104.2315.23621371.2314.23
CF67487281.2343.99471943.3247.45498325.6749.12631876.3457.23639133.4746.89
CF68479875.2346.46468976.3457.34498292.3451.235981207.2350.47630555.5848.23
CF69482165.12318.08498687.34331.32509356.45367.23610287.23320.23698297.24318.54
CF70498654.6743.654700120.3047.775928134.1246.23612441.2341.23646987.2341.67

Share and Cite

MDPI and ACS Style

Soto, R.; Crawford, B.; Lanza-Gutierrez, J.M.; Olivares, R.; Camacho, P.; Astorga, G.; de la Fuente-Mella, H.; Paredes, F.; Castro, C. Solving the Manufacturing Cell Design Problem through an Autonomous Water Cycle Algorithm. Appl. Sci. 2019, 9, 4736. https://doi.org/10.3390/app9224736

AMA Style

Soto R, Crawford B, Lanza-Gutierrez JM, Olivares R, Camacho P, Astorga G, de la Fuente-Mella H, Paredes F, Castro C. Solving the Manufacturing Cell Design Problem through an Autonomous Water Cycle Algorithm. Applied Sciences. 2019; 9(22):4736. https://doi.org/10.3390/app9224736

Chicago/Turabian Style

Soto, Ricardo, Broderick Crawford, Jose M. Lanza-Gutierrez, Rodrigo Olivares, Pablo Camacho, Gino Astorga, Hanns de la Fuente-Mella, Fernando Paredes, and Carlos Castro. 2019. "Solving the Manufacturing Cell Design Problem through an Autonomous Water Cycle Algorithm" Applied Sciences 9, no. 22: 4736. https://doi.org/10.3390/app9224736

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop