A cloud-based simulated annealing algorithm for order acceptance problem with weighted tardiness penalties in permutation flow shop scheduling

The subject discussed in the paper is the multi‐objective optimization of industrial management which is one of the topics of the journal. Indeed, as the economic competition turns harder and harder, industrial companies have to face much more difficulties. To afford that problem, they have to optimize different criteria simultaneously. In addition to that, today’s customers want the right product at the right price and at the right time. That is why multi‐ objective optimization becomes more and more a main issue in the management of production systems. The rest of this short document aims to underline the main techniques and resolution methods used in the multi‐objective optimization and especially to solve multi‐objective scheduling and lines design problems. As a starting point, we have to claim that the different objectives must be contradictory. Otherwise, the problem can be easily solved with the scalar multi‐objective optimization. Since scheduling problems are first discussed here, specific objectives usually studied are described. In scheduling problems; the most studied criterion is the makespan minimization which increases the production rate of the system. Another objective is the minimization of the total tardiness of the tasks which increases the service quality and customers’ satisfaction. Another objective is the variability of the cycle time which decreases sudden changes in the workload. Thus, dealing with multi‐objective optimization is essential if one wants to increase the production rate without decreasing the quality of service. The multi‐objective optimization is therefore with a challenge to tackle and encounter the tradeoff between several criteria or objectives. For the multi‐objective lines design problems such as buffers sizing, line balancing or equipment selection s, different objectives may be taken in consideration. Two criteria are generally the most studied ones: the minimization of the cost of the line and the maximization of the line throughout rate. The cost minimization allows lines manufacturers to be more competitive in the market. Besides, the line throughput rate maximization allows enhancing the service level for example. However, throughput rate maximization means automatically being constraint to use efficient machines which are naturally more expensive than less efficient machines. A trade‐off must be found to maximize the technical objective (throughput rate) and to minimize the financial objective (the cost of the line).

applying make-to-order (MTO) manufacturing strategy, due to limited resources or capacities, may have to reject some orders. From the viewpoint of supply chain management, it has been proven that firms satisfying due dates promised to the customers and shortening lead times will have a competitive advantage. Flow shop scheduling problem with order acceptance decision, the objective function of which is to maximize the total net profit of the accepted orders, has become the epicenter of attention during the past years. Morton (1996, 2007), Ghosh (Ghosh, 1997), Lewis and Slotnick (2002), Rom and Slotnick (2009), and Pourbabai (1989) are among those addressed the flow shop scheduling problem with order acceptance decision and predetermined process times in a single machine (or workstation) environment. It is crystal clear that a production line often consists of multiple stages where the process time of each job in one stage may be different from the one in others. As an illustration, Toyota Motor Corporation's vehicle production system is a multistage lean manufacturing system or a just-intime (JIT) system that has been established based on many years of continuous improvements with the objective of making and delivering the ordered vehicles in the quickest and most efficient way. Xiao et al. studied the order acceptance problem with weighted tardiness penalties in permutation flow shop scheduling problem, the process of choosing the selected orders and simultaneously scheduling them on a multistage production line to maximize the total net profit of the accepted orders (Xiao, 2012). In this paper, we address the order acceptance problem with weighted tardiness in permutation flow shop scheduling. The problem is formulated as an integer-programming (IP) model, and a cloud-based simulated annealing (CSA) algorithm is developed to solve the problem. Based on the number of candidate orders the firm receives, fifteen problems with different scales are generated. Each problem is considered an experiment, which is conducted five times to compare the efficiency of the proposed CSA algorithm with the one of a formerly suggested simulated annealing (SA) algorithm for the problem. The experimental results validate the improvement in objective function values yielded by CSA algorithm in comparison with the ones produced by the previously proposed SA algorithm.

Literature Review
The publication of optimal two-stage and three-stage production schedules with set-up times by Johnson (2010) aroused considerable interest in the flow-shop scheduling problem. Ribas et al. presented an extensive review of the recently published papers on hybrid flow shop (HFS) scheduling problems. The papers were classified first according to the HFS characteristics and production limitations and second according to the solution approach proposed. Sviridenko (2004) proposed two approximation algorithms for the permutation flow shop problem with make-span objective function. The first algorithm had an absolute performance guarantee, and the second one was an approximation algorithm. Ladhari and Haouari (2005) considered the classical permutation flow shop problem, the scheduling of n jobs through m machines to minimize the make-span. This problem was known to be NP-hard. They presented extensive computational results on both random instances, with up to 8000 operations, and well-known benchmarks with up to 2000 operations, denoting the proposed algorithm solved large-scale instances in moderate CPU time. Cheng et al. (2001) addressed the three-machine permutation flow-shop scheduling problem with release times to minimize the maximum completion time. Two dominance rules were applied to generating initial schedules, directing the search strategy and decomposing the problem into smaller ones. The proposed branch-and-bound algorithm integrated an adaptive branching rule with a fuzzy search strategy to narrow the search tree and lead the search to an optimal solution as early as possible. Ladhari and Haouari (2005) and Cheng et al. (2001) drew a conclusion that even though the non-permutation schedule provides shorter make-spans than the permutation one, the permutation schedule is a common practice to address the flow-shop scheduling

A r c h i v e o f S I D www.SID.ir
problem. In contrast to most of the previously published papers assuming that the process time of each job in each stage is predetermined, Niu et al. (2008) and Chanas and Kasperski (2001) addressed the scheduling problem using fuzzy process times and fuzzy due dates. De et al. (1993) explored a single-machine scheduling problem using random processing times and deadline to select a subset of the jobs and sequence the selected jobs to maximize the expected profit. They presumed an exponentially distributed deadline and did not allow preemption. They described several solution properties, presented dynamic programming (DP) algorithms, and proposed a polynomial time approximation scheme (1993). Based on group technology and JIT manufacturing concepts, Pourbabai (1992) proposed an optimal selection of orders in a JIT manufacturing environment. Two loading models for optimal utilization of the processing capabilities of an integrated manufacturing system were developed to integrate and utilize the available information from both the bill of materials and the process plans. Gupta et al. (1992) addressed the simultaneous selection of a subset of N projects and determination of an optimal sequence to maximize the net present value of the total return. The process consisted of establishing an optimal sequence of all projects, without being dependent on the particular subset of selected projects, and proposing an efficient polynomial DP method to solve the problem. Slotnick and Morton (1996) maintained that one way of adjusting the workload in a manufacturing facility when available jobs exceed the current capacity was to select a subset of jobs with the objective of maximizing total net profit, revenues minus costs, using weighted lateness as a criterion for time-related penalties. They developed an optimal algorithm and two heuristic procedures. Lewis and Slotnick (2002) elaborated on this problem by examining the profitability of job selection decisions over a number of periods when current orders exceed the capacity with the objective of maximizing profit (net revenue of processing costs minus weighted lateness costs per-job). Besides, they assumed that rejecting a job would adversely affect the future orders from that customer; in other words, they addressed the trade-offs between accepting or rejecting job orders and ensuring timeliness with money-back guarantees. Ebben et al. (2005) argued that order acceptance and production planning are functionally separated. As a result, order acceptance decisions are made without considering the actual workload in the production system, or by only considering the aggregate workload. They addressed the significance of a good workload-based order acceptance method in over-demanded job shop environments and studied approaches integrating order acceptance with resource capacity loading. Yang and Geunes (2007) examined single-resource scheduling when candidate jobs may be accepted or rejected. Their solution approaches sought to maximize the profitability of the resulting schedule under job-specific tardiness costs and reducible processing times. They presented an algorithm to maximize schedule profit for a given sequence of jobs, along with two heuristic approaches to generate good job sequences. Torabzadeh and Zandieh (2010) addressed a two-stage assembly flow shop problem with m Machines in the first Stage to minimize the weighted sum of the make-span and the mean completion time for n available Jobs. Inasmuch as the problem was NP-hard, they proposed a CSA algorithm to solve it. Above-mentioned papers fail to address the multistage flow-shop scheduling problem with order acceptance decision at the same time. To the best of our knowledge, there are only two relevant works: Xiao et al. (2012) studied the order acceptance problem with weighted tardiness penalties in permutation flow shop scheduling, the process of choosing the selected orders and simultaneously scheduling them on a multistage production line with the aim of maximizing the total net profit of the accepted orders. A heuristic algorithm named simulated annealing based on partial optimization (SABPO) was developed for solving the IP model and obtaining nearoptimal solutions. Roundy et al. (2005) proposed a capacity-driven acceptance of customer orders for a multistage batch manufacturing system. When a new order comes in, they look for a feasible schedule to

A r c h i v e o f S I D www.SID.ir
accommodate it and all of the already accepted orders. They may use multiple production batches to fill the new order; hence, lot-sizing decisions are made as well. They developed a mixed-integer linear programming (MILP) formulation of the order insertion problem, which bypassed detailed Gantt chart manipulations, but guaranteed feasibility. The prevailing approach to solving the flow-shop scheduling problem with order acceptance decision is to choose a subset of orders from the selected orders and schedule them by taking into account such criteria as total net profit, make-span, and total net present value, among others. Ghosh (1997) proved that one-machine flow-shop scheduling problem with order acceptance decision is NP-hard; consequently, exact algorithms are applied only to small-sized problems.
Meta-heuristic algorithms such as genetic algorithm (Rom and Slotnick (2009) In this paper, we address the order acceptance problem with weighted tardiness penalties in permutation flow shop scheduling. The problem is formulated as an IP model, and a CSA algorithm is developed to solve the problem. The rest of the paper is organized as the following. In Section 3, we describe the permutation flow-shop scheduling problem with order acceptance and weighted tardiness and formulate it as an IP model. In Section 4, the proposed CSA algorithm and the SABPO algorithm presented by Xiao et al. (2012) are elaborated. In Section 5, computational study on fifteen different problems, along with experimental results are presented. In Section 6, conclusions are drawn based on the results.

Problem definition and formulation
MTO is a production strategy in which manufacturing starts only after a customer's order is received. Firms applying MTO, due to limited resources or capacities, may have to reject some orders; as a result, the order acceptance problem with weighted tardiness is of paramount significance to them. The problem is defined as choosing the selected orders and simultaneously scheduling them on a multistage production line to maximize the total net profit of the accepted orders. As Xiao et al. discussed earlier, the production line, comprising a single processing line with multiple stages, is continuously available, and n Orders are processed through m Stages. At the same time, a number of candidate orders from the outside are waiting to be selected. The attributes of each candidate order are a due date, revenue, a tardiness penalty weight (used when an order is delivered later than its due date), and a number of deterministic process times for each stage. The tardiness penalty is proportional to the length of the delay. Finally, the orders are independent from each other, and rejecting (or accepting) an order will not negatively (or positively) impact on other orders. Table 1 shows the notations used in this paper: The ID of an order in kth position The processing of higher-ranked order at Stage j has been completed. It is crystal clear that there is a unified processing sequence of orders through the stages in a permutation flow-shop system. Table 2 depicts a schematic diagram of a permutation flow-shop system with n Orders and m Stages:

A r c h i v e o f S I D www.SID.ir
In this section, we first review the partial optimization strategy and the SABPO algorithm proposed by Xiao et al. (2012). We then present the basic concepts of cloud theory, which paves the way for introducing our proposed CSA algorithm for the permutation flow shop scheduling problem with order acceptance decision and weighted tardiness penalties.

Partial optimization (PO) strategy
Since the objective function f Y,S     includes two independent decision variables, the prevailing approach to addressing the problem is to employ a PO strategy, which in turn optimizes one of the variables while fixes the other. Although this strategy has its merits, it only accepts solutions being better than the incumbent solution, which is prone to be trapped in a local optimum. Besides, the quality of the solution is dependent on the initial solution and which variable is optimized first. The following are the steps of PO strategy:  Find an initial solution as the incumbent solution.
 Fix S and find Y to maximize f Y,S  .
 Fix Y and find S to maximize f Y,S  .
 Iterate the second and third steps until f Y,S   cannot be improved anymore.

Simulated annealing (SA)
The SA algorithm, first proposed by Kirkpatrick et al. (1983), is a random search to find the optimal solution in stochastic combinatorial optimization problems. It is characterized by allowing hill climbing moves to escape the local optima and find global optimal solutions if the cooling schedule is slow enough. These approaches are based on the physical concepts of increasing temperature to reach a high value followed by a gradual cooling process and finally reaching to a state of a minimum potential energy. This improvement mechanism consists of two phases:  Heating phase: an initial solution is set as the incumbent solution. The algorithm repeatedly changes the incumbent solution, and the maximum deviation of the objective function between two neighboring solutions is used as the initial temperature for the next phase.

Simulated annealing based-on partial optimization (SABPO) algorithm
According to the Metropolis rule, the SABPO algorithm proposed by Xiao et al. (2012) will accept a worse solution with a probability that decreases as the temperature drops. As a result,

A r c h i v e o f S I D www.SID.ir
SABPO, unlike the PO strategy, is capable of jumping out of local optima to find a globally optimal solution. The parameters of SABPO algorithm are defined in Table 2. The SABPO algorithm proposed by Xiao et al. (2012) is elaborated in Figure 1: Number of total attempts for optimizing S while Y is fixed:   and Equation 10  , respectively.

18) End 19) Return the incumbent solution Y , S
  and its objective function value.  Table 3 displays one possible solution for a problem with ten orders n  10  . It consists of two rows of numbers, the first one refers to the acceptance or rejection of the orders, and the second one denotes the processing sequence of orders through the stages; that is, orders 3, 6, and 7 are rejected, and orders 8 and 9, among others are the first two ones processed through the stages, respectively: Three main functions being described in Figure 1 are as the following:  Y new  Function Y old   : This function randomly generates an integer between 1 and n , which specifies the corresponding gene of the Y old chromosome to be changed. The content will become 1 if it is 0 , and vice versa.

Solution representation, functions, and operators
 S new  Function S old   : Three different operators are defined to generate a new order sequence S new   . The swap operator randomly generates two integers between 1 and n , which specify the corresponding genes of the S old chromosome to be changed. The genes will be mutually exchanged. Table 4 illustrates the procedure for getting a new order sequence by swap operator. The insert operator randomly generates two integers between 1 and n , which specify the corresponding genes of the S old chromosome to be changed. One gene will be inserted into another gene; it is placed before that gene. Table 5 illustrates the procedure for getting a new order sequence by insert operator. The reverse operator randomly generates four integers between 1 and n , which specify the corresponding genes of the S old chromosome to be changed. Each pair genes will be mutually exchanged. Table 7 illustrates the procedure for getting a new order sequence by reverse operator.    .

Basic concepts of cloud theory
The cloud theory utilizes natural language to transfer uncertainty between quality concept and quantity data representation. The randomly changing nature of the annealing temperature diversifies and expedites searching of the neighborhood as well as avoids being trapped in the local optimum (Deyi et al. 1995). Cloud theory is an expansion of membership function in fuzzy theory, which guarantees both characteristics of randomness and stability (Deyi & Yi 2005). It has many applications in such areas as intelligence control  and Feizhou et al. (1999)), knowledge representation (Cheng et al. (2005) and Deyi et al. (2000)), and data mining (Kaichang et al. (1999), Kaichang et al. (1998), Shuliang et al. (2003), and Yingjun and Zhongying (2004)), among others.
Let F be the language value of domain d and mapping C F X   as the following:

Proposed Cloud-based Simulated Annealing (CSA) algorithm
All the required parameters for introducing our proposed CSA algorithm have been previously defined in Table 2. A suffix 'cloud' is added to roughly all variables and parameters to differentiate this algorithm from SABPO. Our proposed CSA algorithm is elaborated in Figure 4. At high temperatures, drop dispersion increases, and the range of the annealing temperature widens; hence, it ensures the randomness of annealing process. However, the opposite is the case at low temperatures (drop dispersion decreases, and the range of the annealing temperature narrows), which ensures the stable tendency of annealing process (Torabzadeh & Zandieh, 2010). In this paper, when it comes to using P Y and P S to compare the efficiency of CSA

A r c h i v e o f S I D www.SID.ir
algorithm to the one of SABPO, these parameters are fixed at 0.05  N , unlike the Equation 9   and Equation 10   proposed by Xiao et al. (2012). It will not make the results invalid inasmuch as the same condition is used for comparison. Besides, the procedure to use swap, insert, and reverse operators is different from the one offered by Xiao et al. (2012). All functions are calculated according to the rules described in section 4.4. The following show the mechanism for selecting the right operator for both algorithms, which will not question the validity of the comparison:  Generate a random value b   from standard uniform distribution 0,1  .
 The selection mechanism is: 3) Randomly change Y and S for N times. Set the Maximum Deviation of the Objective Function as the initial temperature T cloud   and Equation 10  , respectively.

Computational study and experimental results
In this section, we carry out computational experiments to compare the efficiency of our proposed CSA algorithm to the one of SA algorithm formerly suggested by Xiao et al. [8] for order acceptance problem with weighted tardiness penalties in permutation flow shop scheduling.

Data settings
Based on the number of candidate orders a firm receives, fifteen different problems are generated. Each problem is regarded as an experiment and run five times. The number of stages m   is fixed at 10. Other values are generated according to the rules introduced by Xiao et al.

 
This hypothesis testing is carried out by SPSS. Table 9 and Table 10 Table 11 and Table 12 indicate the results of hypothesis testing for computational times. Since significance level  0.061  0.05 , we fail to reject the null hypothesis; that is, there is insufficient evidence to make a conclusion about the inequality of two population means and  ComputationalTime SABPO     ComputationalTime CSA  . Hence, we conclude that the CSA algorithm is not superior to SABPO algorithm when it comes to comparing the time to get the best solution. Figure 6 and Figure 7, showing 95% confidence interval plots for SABPO's and CSA's OF values and computational times, testify to the conclusions made based on SPSS outputs.

A r c h i v e o f S I D www.SID.ir
algorithm is developed to solve the problem. Computational study, which consists of generating fifteen different problems based on the number of candidate orders a firm receives, is carried out to evaluate the efficiency of the proposed algorithm. The results denote that our proposed CSA algorithm outweigh the formerly SABPO algorithm suggested by Xiao et al. (2012) in terms of producing better objective function values. Future studies may include developing a more efficient and effective algorithm for the problem or formulating the problem in a nonpermutation flow-shop environment.