Cuckoo Search Optimization for Solving Product Mix Problem

The success of industrial companies is characterized by the efficient use of its resources. Most of decisions regarding to the efficient use of resources such as man, machine and material are subject to constraints. This paper considers a class of resource allocation problem named Product Mix Problem (PMP). The PMP is considered as an important production planning decision in the field of industrial engineering and management. The objective of this paper is to find the optimal quantities of different products that are required different amount of resources to maximize the return profit of a company where resources are limited. A Cuckoo Search Optimization (CSO) is proposed in this paper to as a methodology to search optimal solution. MATLAB Software is used to perform the proposed CSO method. Then, a comparative study between the CSO solution and existing solution in the literature is given. The simulations outcomes show the superiority of CSO over other methods.


Introduction
The Product Mix Problem (PMP) is considered an important production planning decision in the field of industrial engineering and management [1]. When the demand for products exceeds the company's capacity, companies are required to select a limited number of each product which can increase the company's profitability [2]. Therefore, the PMP aims to find the optimal quantities of different products that are required different amounts of resources to maximize the return profit subject to different constraints [3]. The PMP can be formulated as a Linear Programming Problem (LPP) [3] [4] and/or Integer Linear Programming Problem (ILPP) [5]. A heuristic method based on management philosophy named Theory of Constraints (TOC) was applied to solve PMP by Goldratt in 1987 [6]. The process of TOC to solve PMP is easy and assumed that the product with high profitability should be selected first in the case of a bottleneck situation [7]. Plenert [8] showed that TOC gives an insufficient optimal solution for PMP in comparison with Linear Programming (LP) when multiple constrained resources exist. Later, Fredendall and Lea [9] improved the traditional TOC and developed a revised TOC (RTOC) to find the optimal solution for PMP under situations where the traditional TOC failed. In the same way, Hsu and Chung [10] improve the TOC to solve PMP when multiple constrained resources existed.
Many meta-heuristic algorithms such as Tabu search [5], genetic algorithms [11], hybrid Tabu search -simulated annealing [12], simulated annealing [13], immune algorithm [14], and particle swarm optimization [15] have been developed for solving PMP. In this paper, a meta-heuristic named IOP Publishing doi:10.1088/1757-899X/1105/1/012016 2 Cuckoo Search Optimization (CSO) is proposed to search for an optimal solution for PMP. Then, a comparative study between the CSO solution and the existing solution in the literature is given.

Mathematical Model
Consider a company produces a set of N products (i.e. n = 1,2, … , N). Each product n has an upper limit of quantities D n based on the average demand for that product. Each product has a raw material cost c n and selling price p n . There is a limited resource r j (j is the number of resources required for each product, i.e. machine). PMP is to find the optimal quantities of each product q n that maximize the profit of the company. The PMP modelled as linear programming which is given by: Number of product N Index for products q n Optimal quantities of each product p n Selling price of the product c n Material costs of the product J Number of resources J Index for resources a nj Amount of resource j required to produce product n r j Maximum amount of resource j available

D n
Forecast market demand for product n

Cuckoo Search Optimization
This paper presents a CSO-based approach to solve PMP. Similar to other Bio-inspired methods, CSO is a meta-heuristic population-based method developed by Yang and Deb in 2009 [15]. CSO combines two search methods (Levy flights and brood parasitism of some cuckoo species). The CSO summaries as follows [16]: the algorithm starts by initialization a population of n nest host nest randomly as given: ℎ n nest Number of the host nest (population) x i

Individual solution
Rand a uniformly distributed random number between 0 and 1 x min Lower bound of the search space x max Upper bound of the search space Next, the new solution is generated based on Levy flights. Levy flights considers as one way that is used by animals to search for food. When there is no food in the surrounding area, animals move similar to Levy flight style which can be defined as a combination of shorts and long steps in different directions. The Levy flights in the CSO algorithm represents the local random walk and it is given by: α Step size (depends on the scale of the problem), α > 0 ⊕ After that, a new solution is generated based on the brood parasitism of some cuckoo birds. These Cuckoos have an aggressive reproduction strategy by laying their eggs in other bride's nests. If the host bird does not discover that this egg is not its own, they take care of cuckoo chicks. Otherwise, they will either throw it away or simply abandon the nest and build a new one. This concept is used in the CSO algorithm as follow: the algorithm randomly selected a nest, let say x i , a new solution is a generation depends on the probability that the nest host does not discover that this egg is not its own, it can be formulated as given: ℎ H Coefficient related to the probability that the host bird discover the egg in the nest To verify and to see the performance of the proposed CSO approach, the CSO is compared with other existing approaches. The software MATLAB is used to run the CSO algorithm that is described in Figure 1. The CSO algorithm parameters are listed in Table 1.  The chart of the first example is shown in Figure 2. The details of the first example are summarized in Table 2. Based on Table 2, this example is two products -four resources -three bottlenecks problem. The linear programming formulation for this example is given by: 15 + 10 ≤ 1700 (9) 15 + 30 ≤ 1700 (10) 15 + 5 ≤ 1700 (11) 10 + 5 ≤ 1700 (12) 0 ≤ ≤ 100 (13) 0 ≤ ≤ 50 (14) The chart of the second example is shown in Figure 3. The details of the second example are summarized in Table 3. Based on Table 3, this example is four products -four resources -three bottlenecks problem.  The chart of the third example is shown in Figure 4. The details of the third example are summarized in Table 4. Based on Table 4, this example is four products -four resources -two bottlenecks problem.   Table (5, 6 and 7). It can be notice from Table (5) for example1 that the best combination of product P and Q is 99 units of A and 7 units of B which is satisfy the capacity limit (all machines load less than 1770 min) and return a profit that equals to 4874$. In the same way, it can be seen from Table (6) for example2 that the best combination of product P, Q, P x and Q x is 100 units of A, 5 units of B, 50 units of P x and 0 units of Q x which satisfies the capacity limit (all machines load less or equal than 2400 min) and return a profit that equals to 6600$.  The comparison results between the CSO approach and other approaches such as integer linear programming (ILP), the theory of constraints (TOC), tabu search (TS), genetic algorithms (GA) and simulated annealing (SA) are presented in Table 8. The results of other approaches (ILP, TOC, TS. GA and SA) have been taken from [13]. In the case of the first example, ILP, TS, GA and SA methods in comparison with the CSO method show the same objective function (i.e. has the same performance). However, CSO outperforms TOC. For the second example, ILP, TOC and TS methods in comparison with the CSO method show the same objective function (i.e. has the same performance). However, CSO outperforms GA and SA. In the last case, ILP and TOC have the best objective function. However, the result of the CSO method is superior to the result of TS, GA and SA.

Conclusion
Product Mix Problem (PMP) has a direct influence on the manufacturing company's financial performance. PMP is a well-known constrained linear-integer optimization problem. The problem seeks to optimize the use of resources (i.e. machine) with in order to increase the profit of the company. The size of the problem increases based on the number of products, the number of resources and the number of bottlenecks. Several approaches have been utilized to solve the PMP problem including integer linear programming (ILP), theory of constraints (TOC), tabu search (TS), genetic algorithms (GA) and simulated annealing (SA). In this research, a Cuckoo Search Optimization (CSO) is used to solve PMP. CSO is a meta-heuristic optimization techniques developed to solve global optimization problems. It has numerous applications in the computational intelligence problems. The results show that CSO approach is good as the LIP approach and superior to TS, GA and SA approaches in solving the PMP.