Information Sciences 179 (2009) 2403–2415
Contents lists available at ScienceDirect
Information Sciences journal homepage: www.elsevier.com/locate/ins
Chromosome refinement for optimising multiple supply chains Chen-Fang Tsai a,*, Kuo-Ming Chao b,c a b c
Department of Industrial Management, Aletheia University, Taiwan, ROC Faculty of Engineering and Computing, Coventry University, Coventry CV1 5FB, UK Software School, Fudan University, China
a r t i c l e
i n f o
Article history: Received 4 February 2009 Received in revised form 8 March 2009 Accepted 10 March 2009
Keywords: Multiple supply chain optimisations Genetic Algorithms Chromosome refinement
a b s t r a c t Multiple supply chains management is a multiple criteria optimisation problem with a large and complex search space. It is a broad field in which the aim is to optimise and facilitate supply chain operations by balancing between quality improvement and cost reduction. This research proposes a dynamic adaptive Genetic Algorithm that includes a chromosome refinement procedure to adjust the structure and order of the genes within the chromosome. The method improves the search efficiency in a complex space by locating near-global optimal solutions. The proposed approach is implemented as a process parameter controller that allows the values of the production and quality control variables to be adjusted at the run-time. A case study involving various evaluation criteria and a number of variables in multiple supply chains within a mixed production problem domain is adopted to demonstrate the effectiveness of the proposed approach. Ó 2009 Elsevier Inc. All rights reserved.
1. Introduction A Genetic Algorithm (GA) is a population-based search technique which applies the Darwinian notion of ‘survival of the fittest’ and is rooted in the mechanisms of evolution and natural genetics [10,16,17]. The method generates a sequence of populations using a selection mechanism and uses crossover and mutation as its search mechanisms. A GA is a directed randomised search procedure, its power being derived from the mechanics of natural selection and the principle of the survival of the fittest individuals. Its applications to optimisation problems have been very successful due to the fact that the method is well suited to search problems [3,5,10]. The search problem domains can be classified into two categories: single objective functions and multiple objective functions [23]. The single objective function consists of a single fitness function which produces a single result for each search operation. They are easy to apply but are not efficient. This is because they usually locate a single point in the search space, compare its fitness value to the previous best result and determine the next point to be tested. The multiple objective functions are composed of several fitness functions which produce multiple outcomes for each experiment [25,27]. The optimisation of a multiple criteria problem is difficult because of the complexity generated by objective functions with multiple criteria [7,12]. A GA’s fitness function is able to handle the multiple criteria by assigning different weightings that are derived from domain knowledge [27,35]. These weightings reflect search policies in the problem domain. It can process groups of solutions in parallel. They are complex, but the optimisation process is computationally fast. According to the results of previous research [12,26,28], the GA is a good technique for finding near-global solutions for group optimisation [23]. A GA is different from the other well-known search mechanism, simulated annealing (SA) which only deals with one alternative in each trial, so a SA process requires substantial computation time to obtain a solution. The GA is a multiple objective optimisation * Corresponding author. E-mail addresses:
[email protected] (C.-F. Tsai),
[email protected] (K.-M. Chao). 0020-0255/$ - see front matter Ó 2009 Elsevier Inc. All rights reserved. doi:10.1016/j.ins.2009.03.009
2404
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
technique, which has had success in both single and multiple objective optimisation problems [20]. As a result, the GA community now includes a wide range of applied researchers in topics as diverse as engineering, economics, computer science, business management and music [8,9,11,21,26]. The following sections will describe the inner mechanisms by which a GA obtains its final solutions. This paper is structured as follows: Section 2 introduces the schemata behaviours of Genetic Algorithms and Section 3 describes the proposed dynamic adaptive GA. In Section 4 the mixed multiple supply chains problem is presented. Section 5 presents experimental results for the application of the proposed chromosome refinement in the optimisation of mixed multiple supply chains. Section 6 concludes the results and discusses future work. 2. The schemata behaviours of Genetic Algorithms The fundamental element possessed by a GA is a string of bits which is called a chromosome. A chromosome is composed of a set of genes, which are sections of the chromosome representing individual parameters. For example, in a supply chain, the genes would represent the setup cost of control charts; their associated sample sizes; and the methods of sampling. As the arrangement of these genes significantly affects the GA’s performance, an improper choice for the chromosome structure often results in poor performance [15,18,33]. It is therefore imperative to design a suitable structure for the chromosome. Identifying the similarities among these highly fitted genes and grouping them in an appropriate structure can improve the search behaviour of the GA [10]. Holland’s schema theorem [17] was the first attempt using formal descriptions to justify how a GA works. A schema is a pattern of genes consisting of a subset of genes at certain positions in a chromosome [4]. It presents a structure of gene values which includes the alphabet used to encode the chromosome and adds a wild card or ‘don’t care’ symbol, which is denoted by ‘‘*”. Each schema represents the set of all binary strings of length l, in which the corresponding bit-positions contain bits identical to those ‘0’ and ‘1’ bits of the schema. Goldberg [10] provides the following examples for chromosomes of length 5: the schema *0000 matches two strings, {10000, 00000}, and the schema *111* matches {01110, 01111, 11110, 11111}. The schema allows similar genes to be expressed concisely. These expressions have significant impacts on the fitness of individual chromosomes. Individual chromosomes in the population are given opportunities to reproduce, often referred to as reproductive trials for the production of offspring. The number of opportunities each individual has is in proportion to its fitness, so the better individuals contribute more of their genes to the next generation. It is assumed that an individual having high fitness is due to the fact that it contains superior schemata [23,25]. Schemata are also known as similarity subsets because they represent subsets of strings with similar patterns at certain fixed position. By passing more of these superior schemata on to the next generation, it increases the likelihood of finding better solutions. Schemata possess two essential properties: the order of the schema and its length. The fitness value of a schema is defined as the average fitness of the elements it contains. Holland showed that the optimum way to explore the search space is to allocate reproductive trials to individuals in proportion to their fitness relative to the rest of the population. In this way, the individual with high-quality schemata receives an exponentially increasing number of trials in successive generations [19]. Schemata are implicitly handled by the GA in parallel. Holland names this process as ‘‘Implicit Parallelism” and this justifies the claim that a GA can often generate outstanding search performance in complex environments [24]. The schema theory is formed by the building block hypothesis. Low-ordered, highly fit schemata with short defining length are called building blocks. According to Goldberg [10], the power of a GA lies in it being able to find high-quality building blocks. These are schemata with short defining length consisting of bits which work well together, and they tend to lead to improved performance when they are incorporated into a chromosome [15]. A successful coding scheme is one which encourages the formation of good building blocks by ensuring that related genes are close together in the chromosome, while there is only little interaction between well separated genes [29]. Interactions (often referred to as epistasis) between genes mean that the contribution of a gene to the fitness depends on the value of other genes in the same chromosome. In fact interactions between genes in multimodal fitness functions are inevitable [16]. This leads to the formation of a complex search space. The focus of GA research is to improve search efficiency and the effectiveness of searches in locating any approximate global optimisation in such complex problem domains. The search space formed by unimodal functions, which are less complex, can normally be fully explored using other light weight optimisation methods. The preservation of beneficial genetic material is important during the process of gene crossover and mutation. The schema theorem [15] implies that the disruptive effects of crossover and mutation are detrimental to the efficiency of the genetic search. However, these activities often occur in evolutionary processes where complex problems with a rugged fitness landscape appear. Clearly, an approach which can reduce the disruption of beneficial building blocks is useful in preventing the loss of important genes. If epistasis can be prevented, then the performance of GA can be predicted more accurately through the schema theorem. However, in many cases, the exact nature of the relationship between the genes may not be known to the designer. Even though the relationships among them are relatively simple, it may still be impossible to code the genes in a way that precisely reflects their relationships. If we can ensure that each gene only interacts with a small number of other genes which are essential and these genes can be placed together on a chromosome, then the problem of the epistasis can be solved. However, when large numbers of interactions between genes are required or they cannot be avoided, Goldberg’s recommendations [11] should be taken into consideration in the design of the schemes to ensure that the GA will perform well. In this
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
2405
research, we try to use domain knowledge to refine the chromosome structure in a dynamic adaptive GA which conforms to Goldberg’s recommendations [18]. Such a modification usually leads to an improvement in the GA’s search. The goal is to regain beneficial genes that were lost through poor selection of mates in the evolution process. 3. Dynamic adaptive Genetic Algorithms The proposed dynamic adaptive GA includes a traditional GA mechanism and a process parameter controller (PP Controller) which is able to refine the structure of the chromosome in order to improve the GA’s performance [8]. A PP Controller is able to optimise chromosomes by identifying internal gene interrelationships and refining their structures. Fig. 1 shows the relationship between GA and PP Controller in the proposed method. PP Controller includes three operations namely: gene ranking, gene grouping, and gene ordering. These operations interact with the GA to use the evolution evidence along with the problem domain knowledge in order to adjust the positions of the genes within the chromosome [9]. These three operations are invoked in sequence and iteratively as shown in Fig. 1. The sub-goal weighting is given after the chromosome has been refined to a certain level, so the derived results from the operations can be used as sub-goal weightings. These adjust the weightings in the objective functions in order to produce a better solution. 3.1. Gene ranking Gene ranking evaluates the relative effect of each gene on the fitness function. In our gene ranking, we attempt to identify the beneficial genes within the chromosome structure in three stages. First, we calculate a ratio representing the relative fitness of the genes and the sub-gene groups. Then, we select control variables (i.e. the larger cost factors, such as the penalty cost) according to: the fitness value; the GA evolution evidence, or, the policies [28] (the policies are derived from the problem domain knowledge). Finally, we analyse the relationships between the ratios and the control variables to produce a ranking for the variables, and a weighting is assigned according to the resulting rankings. Fig. 2 illustrates the main procedures at the gene ranking stage. The following illustrate the steps at the gene ranking stage. (1) Assign the individual values, Genei (i = 1, . . . ,n), contributing to Genetotalcostvalue: so TC (total cost value) = Gene1 + + Genen = Genetotalcostvalue. (2) Produce a ratio between the cost values of the genes as a proportion of the total fitness: affecting ratio ðARÞ ¼ GenenAR ¼ Genen-costvalue =Genetotalcostvalue : (3) Generate a ranking from the AR of the genes and place the best one in the front and the worst in the end. A collection of genes and their sequence, for example, can be expressed as Gene5, Gene2, Gene3, Gene1, Gene4, and Gene6. In this case, Gene5 is the best and Gene6 is the worst one. (4) Define a weighting vector (WGenen = >1.5, 1.0, 0.8, 0.4, 0.2, 0.1) and assign the largest value 1.5 to the best one (Gene5) and the smallest value 0.1 to the worst one (Gene6) and calculate the adjusted ratio for the six genes: (The cost value weighting). (5) Find the control variables according to domain knowledge; in the example take as control variables (CV) = Gene1, Gene2, Gene3. (6) Set CV weightings (CVWn) which are derived from the domain knowledge (e.g. the importance of orders’ profit or production and maintenance policies) (WGenecvw1 = 16.0, WGenecvw2 = 4.0, WGenecvw3 = 2) and apply them to these three genes. This produces the control variable ratio by multiplying the original gene ratios by these weights. (7) Calculate the mean of the affecting ratio and the control variables ratio using: Genemean = (GeneAR + GeneCV)/2. (8) Present a final ranking for the genes with their evaluated values.
Fitness value Genetic Algorithms
1. Gene Ranking 2. Gene Grouping
Sub-goal Weighting 3. Gene Ordering Refined chromosome Fig. 1. The process parameter controller.
2406
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
Gene Ranking 1. Ratio Calculation of Genes to Total Fitness 2. Control Variables Selection
3. Ranking by Fitness Ratio
Fig. 2. The procedure of gene ranking.
The above fitness values are the final values at the gene ranking stage and these values can be used in the next stage, which is gene grouping. 3.2. Gene grouping In gene grouping, the process parameter controller employs the ratios of the fitness values which are shown in step (7) above; and together with domain knowledge (e.g. production and maintenance policies or lead time length) and the ranking sequence, to define the grouping relationships between genes. Initially, the control variables are arranged in a subgroup and the rest of the variables are placed in another group. We then select the higher affecting ratio ðARÞ ¼ ðGenenAR ¼ Genencostvalue =Genetotalcostvalue Þ which are shown in step (2) above, and strongly related factors (using domain expertise; e.g. the contribution importance of an orders’ profit) to break down these subgroups into further subgroups. This operation is repeated until no subgroup contains more than three to five variables (depending on the complexity of the problem). This procedure is intended to find the best subgroup for the chromosomes. The gene grouping procedures are shown as Fig. 3. Use the data from the previous example on gene ranking. The grouping procedure’s initial gene ranking is based on descending fitness ratio, so that we have the same sequence derived from the previous stage. Then define the control variables to produce their ratio through the multiplication of their original gene ratios by the weights. Then calculate the mean of the adjusted ratio and the control variable ratio to obtain a final ranking for the genes which are Gene1, Gene2, Gene5. The genes can be grouped as follows: Gene grouping: [(Gene1, Gene2, Gene5), (Gene3, Gene4, Gene6)] (after considering the control variable effect, (Gene2/ Gene1) are swapped). 3.3. Gene ordering Once gene ranking and grouping have been carried out, we apply gene ordering to optimise the gene sequence of the chromosome. This approach employs the ranking sequence of the fitness ratios to arrange the gene sequence within each gene group according to descending fitness. Then we accumulate the total ratio value of the subgroup and rank these values to find the sequence for the chromosome (gene group). Over a number of evolutions, the beneficial genes will be recognised
Gene Grouping
1. Sub-group gene grouping
2. Individual gene grouping
Fig. 3. The procedure of gene grouping.
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
2407
and the beneficial values and positions will be fixed to accommodate certain genes. This produces a refined structure for the chromosomes. The ordering procedures are shown as Fig. 4. The next step is to order the genes in sub groups. The procedure for gene ordering is based on the adjacent genes (i.e. similar to the procedures to rank ratio shown in Steps 6 and 7). For example, set the genes as the section of gene grouping: [(Gene1, Gene2, Gene5), (Gene3, Gene4, Gene6)]. Then reproduce the gene order in each subgroup according to the ranking ratio: Calculate the mean of the adjusted ratio and the control variable ratio which derive: Genenmean = (GeneARn + GeneCVn)/2. After the each chromosome has been refined, the evidence about the fitness ratios for the gene group and sub-gene groups can be collected. These can be used to assign weightings to the individual objective functions, which have been ranked during the operation of the GA evolution. The performance data are collected so that the three elements of the PPC can be applied in every generation. The cost values used in ‘gene ranking’ are collected and the PPC is rerun. This method presents an alternative approach to the refinement of chromosome structure based upon the building block theory. According to the building block hypothesis [16,17], the preservation of beneficial genetic material is crucial during the GA’s evolution. This theory has been successfully demonstrated using several rugged fitness landscapes [1]. The function of the proposed process parameter controller is to attempt to find a better chromosome structure for the GA’s operation and the appropriate weight for any sub-goal. It is a set of procedures to refine the representation of the chromosome structure. This new approach can be used to effectively identify and preserve the beneficial building blocks in genes by utilising related domain knowledge. In the next sections an example of multiple supply chains will be used to demonstrate the effectiveness and efficiency of the proposed method. 4. Multiple supply chains management A mixed production chemical process, which required multiple supply chains [13,22,34], is adopted in order to evaluate the proposed method. Mixed production is a complicated production method which manages multiple products in a single production process simultaneously. A multiple supply chain could include an R&D chain, a production/quality chain, and a logistic chain [8,9]. The objective of an R&D chain is to facilitate carrying out product research and design concurrently in order to increase the design lead time and improve response time for inappropriate design or change of design specification. The main function of a production/quality chain is to postpone the production of the non-standard components to being as late as possible in the production procedure which can reduce cost and improve quality control [2]. However, due to the complex interdependence among their production processes, it is very difficult to detect and diagnose quality problems while the multiple products are being processed. Hence, multiple control charts are required and each of them is designed to manage the quality situation for a single product. The process engineer has to find a way to design these processes economically, so this can be classified as a search problem in a complex environment. The aim of a logistic chain using postponement designs is to provide local distribution centres with flexibility in managing their logistics. In this paper, the techniques of postponement design and production process postponement have been applied to mixed production problem domains associated with multiple supply chain management. The techniques are used to: increase design efficiency and effectiveness; decrease production costs; have better control on product quality, and, shorten the required design and production time. 4.1. Postponement design in multiple supply chains management The objective of postponement design is, by utilizing appropriate policies, to postpone the time for making a decision on the delivery place and the resource allocation to a point as close as possible to the demands of the customer orders. In other words, no action will be taken until the uncertainty in the environment is reduced. It applies the concept of product differentiation, which includes parts commonality and parts specialty, to classify the dependency of products and production operations. Postponement design is used to maximise the commonality of parts and production operations and leave the part assembly as late as possible.
Gene Ordering
1. Individual gene ordering
2. Sub group gene ordering Fig. 4. The procedure of gene ordering.
2408
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
The schemes from postponement design are utilized for the different stages of production and packaging by postponing special parts assembly to the time just sufficient for shipping the goods on-time. This can reduce the forecasting deviation and cut down the inventory level, and that in turn can improve inventory holding cost, the cost of inventory scrap and obsolescence, as well as improve flexibility in the context of changeable demands. These efforts enable the participating parties including suppliers in the sub-chain and customers to increase their efficiency and boost their profits, but it also requires higher precision in production and quality control. 4.2. Multiple mixed supply chains with process postponement The advantage of applying postponement design to the mixed multiple supply chains is that it can increase the flexibility in the operation management. The mixed multiple supply chains contain: (1) the R&D chain, which involves distributed design and engineering operations [8,30]; (2) the logistic chain, which enables local distribution centres to configure their orders and shipments [32]; (3) the quality chain which involves control design and control chart selection operations. When the parts and processes designs have to consider modularization and configuration for their operations, they also need to design a postponement evaluation. This can control and reduce the total setup and inventory costs as well as managing shortage costs. Therefore, the objective of a mixed multiple supply chain with a postponement design is to maximise the overall utility [9]. This entails evaluating all possible alternative solutions which can meet the demands issued by the customers while reducing the associated costs. The mixed multiple supply chains with a postponement design include six major parts of design costs: (1) (2) (3) (4) (5) (7)
Investment cost for the R&D chain (RDIV); Setup cost of the logistic chain (LCSC); Inventory cost of the WIP in the logistic chain (LCICWIP); Inventory cost of the buffer stock in the logistic chain; (LCICbuf) Shortage cost for components in the logistic chain; (LCShC) Quality design cost for the optimisation of multi supply chains (multiple supply chainstotal
cost;
MSCchart
type).
The application of postponement design during a new product design is used to optimise the cost of product design and material logistic control with the appropriate control chart selections. The cost function, PRMSCn, which provides the objective function for the PP Controller, can be formulated as below: PRMSCn = (RDIV) + (LCSC) + (LCICWIP) + (LCICbuf) + (LCShC) + (MSCn). (1) Investment Cost for the R&D chain; (RDIV) S X F X P X O X ðRDIVtsfpo ¼ Unit investment costtsfpo Investment Quantitytsfpo Þ
ðRDIV Þ ¼
s¼1 f ¼1 p¼1 o¼1
(2) Setup cost of the logistic chain; (LCSC)
ðLCSC Þ ¼
S X F X P X O X ðLCSCtsfpo ¼ Unit set-up costtsfpo Set-up quantitytsfpo Þ s¼1 f ¼1 p¼1 o¼1
(3) Inventory cost of the WIP in the logistic chain; (LCICWIP);
ðLCICWIP Þ ¼
S X F X P X O X
ðLCICWIPsfpo ¼ Unit inventory cost in WIPtsfpo Inventory quantity in WIPtsfpo Þ
s¼1 f ¼1 p¼1 o¼1
(4) Inventory cost of the buffer stock in the logistic chain; (LCICbuf)
ðLCICbuf Þ ¼
S X F X P X O X ðLCICbuf sfpo ¼ Unit inventory cost in BStsfpo Inventory quantity in BStsfpo Þ s¼1 f ¼1 p¼1 o¼1
(5) Shortage cost for components in the logistic chain; (LCShC)
ðLCShC Þ ¼
S X F X P X O X ðLCShCsfpo ¼ Unit shortage costtsfpo Shortage quantitytsfpo Þ s¼1 f ¼1 p¼1 o¼1
The mixed multiple supply chains with a postponement design included five major parts of design costs (i.e. the elements (1–5) above). After the initial postponement design for mixed multiple supply chains has been completed, the optimisa-
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
2409
tion of multiple control charts should be considered. The postponement design is used to increase common parts in a product and improve the stability of the production process, so the cost of quality control can be reduced. However, the setup component in the overall cost will increase. Thus it is important to find a solution that provides an appropriate trade off. (6) Quality cost for the optimisation of alternative control charts selections in multiple supply chains; MSCn (multiple supply chainstotal cost; MSCchart type). There are three alternative approaches to derive the total quality costs (MSCtotn = 1, 2, 3 represented as MSCtot1 MSCtot2 and MSCtot3) and they differ in the quality charts that are adopted (i.e. X-R charts/C charts; X-R-charts/cusum charts, or cusum charts/C charts). These can be represented in the following formulae.
MSCtot1 ¼ W 1 MSCX—Rchart þ W 3 MSCCchart : MSCtot2 ¼ W 1 MSCX—Rchart þ W 2 MSCcusum chart : MSCtot3 ¼ W 2 MSCcusum chart þ W 3 MSCCchart : The cost of each quality control chart can be further decomposed into three cost elements: set-up cost; search cost, and, penalty cost. The following shows the detailed formulation of these costs in MSCX—Rchart .
MSCSet-up ¼ X—Rchart ¼ MSCSearch X—Rchart
S X F X P X O X
½ðC 1 þ C 2 NÞ=Hsfpo :
s¼1 f ¼1 p¼1 o¼1 S X F X P X O X
½ððY C 3 Þ=H þ X C 4 Þ=ð1 þ XÞ ðt 2 þ t 3 þ t 4 ÞÞsfpo :
s¼1 f ¼1 p¼1 o¼1
MSCPenalty ¼ X—Rchart
S X F X P X O X
½ðC 5 X ðt2 þ t3 þ t4 Þsfpo :
s¼1 f ¼1 p¼1 o¼1
Therefore, the overall cost for adopting X—R charts to carry out quality control can be derived as follows.
MSCX—Rchart ¼
S X F X P X O S X F X P X O X X ½ðC 1 þ C 2 NÞ=Hsfpo þ ½ððY C 3 Þ=H þ X C 4 Þ=ð1 þ XÞ ðt2 þ t3 þ t 4 ÞÞsfpo s¼1 f ¼1 p¼1 o¼1
s¼1 f ¼1 p¼1 o¼1
S X F X P X O X þ ½ðC 5 X ðt2 þ t 3 þ t 4 Þsfpo : s¼1 f ¼1 p¼1 o¼1
Similarly, the set-up, search and penalty costs of adopting cusum charts are illustrated below.
MSCSet-up cusum chart ¼
S X F X P X O X
½ðC 1 þ C 2 NÞ=Hsfpo
s¼1 f ¼1 p¼1 o¼1
MSCSearch cusum chart ¼
S X F X P X O X
ððC 5L R1 þ C 5L R2 Þsfpo Þ
s¼1 f ¼1 p¼1 o¼1
MSCPenalty cusum chart ¼
S X F X P X O X
½ðpr H C 3 Þ þ ðC 4 fn Þsfpo =ðfn tÞsfpo :
s¼1 f ¼1 p¼1 o¼1
In addition, the overall operation cost for using Cusum charts can be formulated as follows.
MSCcusum chart ¼
S X F X P X O X
½W 2 ðC1 þ C 2 NÞ=Hsfpo þ
s¼1 f ¼1 p¼1 o¼1
þ
S X F X P X O X
S X F X P X O X
ðC 5L R1 þ C 5L R2 Þsfpo
s¼1 f ¼1 p¼1 o¼1
½ðpr H C 3 Þ þ ðC 4 fn Þsfpo =ðfn tÞsfpo :
s¼1 f ¼1 p¼1 o¼1
Finally, the following shows the formation of set-up, search and penalty cost for C charts.
MSCset-up Cchart ¼
S X F X P X O X
ððC 1 þ C 2 NÞ ðt 1 þ t 2 þ t3 ÞÞ=HÞsfpo
s¼1 f ¼1 p¼1 o¼1
MSCSearch Cchart ¼
S X F X P X O X
ðC 4 Y t 1 ð1=XÞ=HÞsfpo
s¼1 f ¼1 p¼1 o¼1
MSCPenalty Cchart ¼
S X F X P X O X s¼1 f ¼1 p¼1 o¼1
½ðC 4 t 3 Þ þ ðC 6 þ C 7 Þ t4 þ ðC 5 pr qÞ=ðN a ðt2 þ t 3 ÞÞsfpo :
2410
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
The overall cost of using C charts can be represented as follows.
MSCCchart ¼
S X F X P X O S X F X P X O S X X X ½ððC 1 þ C 2 NÞ ðt 1 þ t2 þ t3 ÞÞ=HÞsfpo þ ½ðC 4 Y t1 ð1=XÞ=HÞÞsfpo þ s¼1 f ¼1 p¼1 o¼1
s¼1 f ¼1 p¼1 o¼1
s¼1
F X P X O X ½ðC 4 t 3 Þ þ ðC 6 þ C 7 Þ t 4 þ ðC 5 pr qÞ=ðN a ðt 2 þ t3 ÞÞsfpo : f ¼1 p¼1 o¼1
where: S = number of suppliers, F = number of factories, P = number of products, O = number of customer orders. C1 = fixed cost of operating control chart C3 = cost of searching false alarm C5 = penalty of each defective product C7 = penalty cost of stop production C5U = cost of mean moving to upper bound H = sampling interval t1 = in-control time t3 = average time of searching action X = no. of false alarms pr = defective rate of new design production fn = number of samples taken between false alarms R1 = time ratio of process moving to upper bound Wi = the cost weighting for multiple control charts selections
C2 = variable cost of operating control chart C4 = cost of searching assignable cause C6 = penalty cost of revising action C5L = cost of mean moving to lower bound N = sample size t2 = out-control time during no revised action t4 = average time of revised action Y = no. of assignable causes q = successful rate of new design production K = the bound limit of control chart R2 = time ratio of process moving to lower bound
Once the costs of using the different types of control charts in the quality control have been formulated, the costs for three different multiple supply chains can be determined. Each of these supply chains uses two types of control chart with different weightings. The supply chain costs are the objective functions for the proposed dynamic adaptive GA in its search for near globally optimal solutions. To examine the effectiveness and efficiency of the proposed approach, the experiment design attempts to reflect the complexity of mixed multiple supply chains. So, the proposed dynamic adaptive GA will exercise different set of parameters and objective functions to evaluate its performances in different scenarios. The process parameter controller within the dynamic adaptive GA, will refine chromosome structures in order to improve the behaviour of the GA search as applied to the costs of the mixed multiple supply chains. These costs take into account postponement design and differences between choices of control charts. 5. Experimental result of chromosome refinement for GA evolutions The purpose of these experiments is to verify whether the proposed method can effectively improve the GA search behaviour in the context of PRMSCn. The experiment includes three kinds of control chart to form a practical test-bed. These are X– R, C, and cusum charts. In order to examine the performance of the proposed method in different environments, we developed three multiple supply chains, PRMSC1, PRMSC2 and PRMSC3, with the use of the two different sets of process parameters in the experiments. PRMSC1 consists of a C chart and an X chart. PRMSC2 comprises a Cusum chart and an X chart. PRMSC3 consists of a C chart and a cusum chart. These charts are for quality control associated with various costs to generate them which were described in the previous section [16,22,23]. Two production policies (models), which will be used to form the basis of the chromosomes, are also introduced to the experimental environment. These models are Model 1 – refined process parameters: C1, C2, C3, C4, C5, C6, C7, t1, t2, t3, t4, X, Y, N, H, Pr, Prq, K, G; and Model 2 – non-refined process parameters: C1, C6, t3, N, Pr, C2, C7, t4, H, Prq, C3, t1, X, G, C4, t2, Y, K, C5. These variables and data sets are taken from the equations for multiple control chart selections (see above section and equation 6 ). In the simulation configurations, we selected the crossover operator from {1 point, 2 point, 8 point}; the crossover rate from {0.5, 0.7, 0.9} the mutation rate from {0.5, 0.05, 0.01}; the replacement operator from {uniform, simulated annealing, tournament}; the population size was set at twenty; and the number of evolution generations to eight hundred. The problem domain attributes are represented in the chromosomes as genes and some of these genes’ values are illustrated as follows: The cost of setting up and maintaining the control charts (C1 + C2 N (sample size for quality checking operations)); the cost of responding to false alarms (C3); the cost of searching for assignable causes (C4); the cost of production loss related to control chart upper and lower bounds (C5LU); the cost of sales losses (C6); the penalty cost of stopped production (C7); the penalty cost for processes being out of control (A; B; Prq); the operating time of chart operations (t13; H); the defective rates in production (X; Y; Pr); and other factors (N; Fn; O; M1). These values (data ranges) are contributed by the domain experts, so the GA is used to produce numerous effective alternative multiple control charts for selection (see Table 1).
2411
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415 Table 1 The classification of process parameters in multiple supply chains. Control charts cost
Penalty cost
Operating time
Defective rate
Others
C1 = 5–40 C2 = 2–16 C3 = 50–400 C5 = 10–80 C6 = 15–120 C7 = 20–160 C5L = 80–640 C5U = 50–400
A = 100–800 B = 1–8 Prq = 10–80
t1 = 5–40 t2 = 5–40 t3 = 5–40 H = 1–8
X = 0.01–0.08 Y = 0.01–0.08 Pr = 0.01–0.08
N = 2–16 Fn = 1–8 O = 1–8 R1 = 1–10% R2 = 1–10% K = 1–3
The weightings of the relevant objective functions are arbitrarily assigned initially. The proposed method in the experiment is to carry out chromosome refinement in order to group the strongly related genes together. Once the chromosome refinement has been processed and the adjusted weights have been obtained, the optimisation of the multiple objective functions can be conducted and the weight for each individual objective function can be re-distributed in order to find a better solution. When all the essential required information for the experiments along with the data from the case study has been determined, the evolution process can start and evidence collection from the evolution’s intermediate results is carried out. The evidence can then be analysed. According to previous research results [6,14,31], the variables (e.g. three majors policy factors N: sample size, H: sample interval, K: control chart bound limit) produce various effects on the generation of the overall utility. Table 2 shows the evolution result from the deployment of Model-1. The evidence in the table has been refined through the domain knowledge which has shown that the genes, C1, C2, C3, C4, C5, C6, C7, t3, and Pr, produce a strong effect on the result (utility rise) in correlation with the value of N (the sample size for the quality control operations in the formula for PRMSCn). It also shows that the genes, C5 and Pr have a strong effect in relation to the gene for the H (the sampling interval for the quality control operations in the formula for PRMSCn). The genes, C6, t3, and R1, become the influential factors when the gene for K (control chart bound limit for the quality operations in the formula for PRMSCn) is used. Similar results can also be found in the experiments associated with Model-2. The genes for Pr, t1, t2 have a strong correlation of effect with the gene for N on the objective function value; the genes for C4, C5, Pr are the factors associated with the gene for H which can produce a great effect on the generation of overall utility, and, the genes for C2 and R2 are the key factors in combination with the gene for K can improve the overall performance (see Table 3).
Table 2 The relationship of the parameters for Model-1. Model 1
Strong effect
Weak effect
N (the sample size) H (the sampling interval) K (control chart bound limit)
C1, C2, C3, C4, C5, C6, C7, t3, Pr C5, Pr C6, t3, R1
C1, C3, C5, C7, Pr C1, C2, C5, C7, t3 C1, C3, C5, C7, Pr
Table 3 The relationship of the parameters for Model-2. Model 2
Strong effect
Weak effect
N (the sample size) H (the sampling interval) K (control chart bound limit)
Pr, t1, t2 C4, C5, Pr C2, R2
C1 C1, C2, C3, X Pr, t1
Table 4 The operators and parameters selections (OP) of Model-1 (M1) and Model-2 (M1). Operators and parameters (OP) Expt. no.
Crossover operator
Crossover rate
Mutation rate
Simulated annealing
Elitism
1–16
1; 2;8
0.5; 0.7; 0.9
0.01; 0.05; 0.5
On; Off
On; Off
Model-1 (M1) with refined process parameters: C1, C2, C3, C4, C5, C6, C7, t1, t2, t3, t4, X, Y, N, H, Pr, Prq, K, G. Model-2 (M2) with randomised process parameters: C1, C6, t3, N, Pr, C2, C7, t4, H, Prq, C3, t1, X, G, C4, t2, Y, K, C5.
2412
Expt. no.
Cp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 1 1 1 1 1 1 1 8 8 8 8 8 8 8 8
Cr 0.7 0.7 0.7 0.7 0.9 0.9 0.9 0.9 0.7 0.7 0.7 0.7 0.9 0.9 0.9 0.9
Mr 0.01 0.01 0.5 0.5 0.01 0.01 0.5 0.5 0.01 0.01 0.5 0.5 0.01 0.01 0.5 0.5
Sa
Ei
M1F
M2F
Expt.No.
Cp
On Off On Off On Off On Off On Off On Off On Off On Off
On On On On On On On On On On On On On On On On
312 307 287 326 292 287 287 334 287 302 292 307 287 327 287 312
355 403 287 383 365 415 287 464 287 415 288 345 292 352 287 320
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2
Cr 0.7 0.7 0.7 0.7 0.9 0.9 0.9 0.9 0.7 0.7 0.7 0.7 0.9 0.9 0.9 0.9
Mr 0.5 0.5 0.05 0.05 0.5 0.5 0.05 0.05 0.5 0.5 0.05 0.05 0.5 0.5 0.05 0.05
Sa
Ei
M1F
M2F
Expt.No.
Cp
On Off On Off On Off On Off On Off On Off On Off On Off
On Off On Off Off On Off On On Off On Off Off On Off On
107 210 216 764 107 117 225 118 107 147 107 258 107 117 137 107
107 214 219 769 107 120 177 125 107 244 177 131 107 122 137 107
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
2 2 2 2 2 2 2 2 8 8 8 8 8 8 8 8
Model-1 (M1) with refined process parameters: C1, C2, C3, C4, C5, C6, C7, t1, t2, t3, t4, X, Y, N, H, Pr, Prq, K, G. Model-2 (M2) with randomised process parameters: C1, C6, t3, N, Pr, C2, C7, t4, H, Prq, C3, t1, X, G, C4, t2, Y, K, C5. Cp: crossover operator, Cr: crossover rate, Mr: mutation rate, Ei: elitism, Sa: simulated annealing, F: fitness value.
Cr 0.7 0.7 0.7 0.7 0.5 0.5 0.5 0.5 0.7 0.7 0.7 0.7 0.5 0.5 0.5 0.5
Mr 0.5 0.5 0.05 0.05 0.5 0.5 0.05 0.05 0.5 0.5 0.05 0.05 0.5 0.5 0.05 0.05
Sa
Ei
M1F
M2F
On Off On Off On Off On Off On Off On Off On Off On Off
On Off On Off Off On Off On On Off On Off Off On Off On
107 184 107 258 107 116 107 134 107 178 107 489 107 142 107 107
107 206 107 308 107 126 110 145 107 183 107 491 107 139 107 107
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
Table 5 The fitness values of Model-1 (M1F) with refined process parameters and Model-2 (M2F) with randomised process parameters.
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
2413
According to the above experimental results, the genes for C1, C2, C3, C4, C5, C6, C7, t3, Pr and the gene for N should be arranged in the same group if Model 1 is adopted. Similarly we can also conclude that the genes for P1, t1, t2 and the gene for N should be arranged in the same group in Model-2. Consequentially, eliminating some of the less significant parameters (i.e. the weak effect factors) should take place in order to reduce the complexity of the search space. In the final stage, which is the gene ordering, the process parameter controller will utilise previous experimental results regarding the relationship among the parameters by calculating the ratio of their fitness values. The groups are compared against each other according to the resulting ratios, so their sequence within the chromosome can be rearranged in order to reflect their correlations. As a result, the procedure produces a chromosome with shorter building blocks and the related blocks are located close each other. These significantly reduce the likelihood of the destruction of a good solution during the evolution process. The experimental results have revealed that some operators and parameters can improve the GA and the multiple supply chains’ performance. Also when the combination of simulated annealing and elitism was adopted in the evolutionary process, the improvement in the GA’s performance was significant. However, the higher crossover rate only performed well with the refined set. The behaviour of the mutation rate is affected by other operators and parameters, so it is difficult to find appropriate values for it which work efficient in most situations (see Table 5). Sixteen experiments have been performed using these test-beds. The experimental factors, crossover operator (1; 2; 8); crossover rate (0.5; 0.7; 0.9); mutation rate (0.01; 0.05; 0.5); simulated annealing (On; Off); elitism (On; Off) (see Table 4), were selected to carry out the experiments. Two chromosome structures have been adopted: Model-1 (M1) which includes a set of refined process parameters and Model-2 (M2) which contains a number of randomised process parameters with different operators and parameter selections (see Table 5). The results of Model-1 (M1) with refined process parameters and Model-2 (M2) with randomised process parameters are shown in Table 5. Table 5 shows that in terms of efficiency the GA performs better with the fitness values (total cost) of Model-1 M1F than with Model -2 M2F.These results also imply that the effect of the GA parameters on its behaviour is modified by the choice of chromosome structures. The outcome of these experiments also supports Goldberg’s building block theory that the refinement of the chromosome structure can improve GA performance.
Table 6 A comparison refined and non-refined structure for PRMSC1. t-Test: two-sample assuming unequal variances PRMSC1
Non-refined
Refined
Mean Variance Standard deviation P-value
742.625 10180.55 100.8987 0.010429
621.625 6953.696 83.38883
PRMSC2
Non-refined
Refined
Mean Variance Standard deviation P-value
943.125 11585.27 107.6349 0.012256
813.25 9624.5 98.10454
PRMSC3
Non-refined
Refined
Mean Variance Standard deviation P-value
918.5 5037.714 70.97686 0.005854
818.25 4533.357 67.33021
Table 7 A comparison of costs for refined and non-refined structure for PRMSC2. t-Test: two-sample assuming unequal variances
Table 8 A comparison of costs for refined and non-refined structure for PRMSC3. t-Test: two-sample assuming unequal variances
2414
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
The chromosome structures (i.e. Models 1 and 2) in the above experiments were derived from an expert and they are static. In order to conduct further analysis on the difference in performance between refined and non-refined chromosome structures in terms of the mean and variance of the minimum total cost the proposed approach was deployed to automatically refine the chromosome structure. A t-test at the 5% level was used to determine the statistical significance of any differences in outcomes. The mechanism with the better performance should exhibit a lower mean value for the minimum cost. The first set of experiments are based on PRMSC1 which has mixed multiple supply chains with postponement design and includes the use of two control charts; a C chart and an X chart. The experimental results are shown in Table 6 (the values in the following tables are the minimum total cost), together with the probability of the t-value showing a common population. The results demonstrate that the static setting with the refined structure attains a steady performance which is significantly better than the one with a non-refined structure. It also demonstrates that these two different chromosome structures with their designated parameters produce significantly different effects on the GA behaviour. PRMSC2 has mixed multiple supply chains with postponement design and it includes two control charts; cusum chart and an X chart. Table 7 gives the t-test figures for the two-samples assuming unequal variances of PRMSC2. As with the results for PRMSC1 it also shows that the GA parameters within these two chromosome structures have different effects on the GA behaviours. The GA with the refined structure performs significantly better than the one with non-refined structure as can be seen from the P-value. The results clearly show that the cost of the refined chromosome remains below that of the un-refined chromosome. PRMSC3 is similar to the previous two environments apart its choice of control charts: a C chart and a cusum chart for the quality control and it produces similar experimental results to those from PRMSC12. A t-test on these two set of methods (refined and non-refined) was carried out. It shows that the two different chromosome structures have different influences on the effectiveness of the GA parameters and their performances in the evolution process. It shows that the refined structure was significantly better than the non-refined structure. In addition, the cost of using the refined chromosome is less than that of the un-refined chromosome (shown in Table 8). The overall experimental results indicate that the GA with the refined chromosome structure can perform better than the one with the non-refined chromosome structure. It also shows that GA with the refined structure achieves a better performance than the GA with the non-refined structure on a complicated function (i.e. PRMSC1) and also on simple functions (i.e. PRMSC2 and PRMSC3). 6. Conclusions In this paper, we propose a new method using what we have called the PP Controller (process parameter controller). This is an iterative procedure to refine the representation of chromosome structures in order to improve the performance of a Genetic Algorithm. The proposed controller is part of a dynamic adaptive GA mechanism which is able to refine chromosome structures in order to change search behaviour. To evaluate the proposed method the way the system could be applied in mixed multiple supply chains to optimise the cost related parameter selection is analysed. It is shown that the approach could provide significant improvement in terms of cost reductions. The paper provides a comparative analysis of the performances of GA with refined and non-refined chromosome structures. The result supports Goldberg’s building block theory that the refinement of the chromosome structure can improve GA performance. The experimental results have been supported by a number of t-tests in order to examine the effectiveness of the chromosome structure in relation to the overall GA performance. We can conclude that a GA with the refined chromosome structure can find the solutions with lower average and less variant costs than the non-refined chromosome structure. It is also shown that a GA with the refined structure can perform well in both a complex search space formed by complicated functions (i.e. PRMSC1) and in less complicated environments. The future work of this research is to identify a way of measuring the degree to which the chromosome structure affects the performance of the operators and parameters within a GA search. To identify and verify the interrelationship of these factors is a very challenging issue. However, the work so far can be useful for the process engineers to design an optimised mixed multiple supply chains. Another part of our future work is the introduction of dynamic weightings to objective functions of a GA, so the values can be determined based on the evidence collected from each generation in the evolution process. Acknowledgements We would like to express our gratitude to Dr. Nick Godwin for his contribution to the early version of this paper. We also would like to convey our gratefulness to the anonymous reviewers for their valuable comments. References [1] A.L. Corcoran, Techniques for Reducing the Disruption of Superior Building Blocks in Genetic Algorithms, Ph.D. Thesis, The University of Tulsa, USA, 1994. [2] B. Awadth, A Manufacturing Process Planning Model Using Genetic Algorithms, Ph.D. Thesis, University of Manitoba, Canada, 1994.
C.-F. Tsai, K.-M. Chao / Information Sciences 179 (2009) 2403–2415
2415
[3] B. Jeong, J. Lee, H. Cho, Efficient optimisation of process parameters in shadow mask manufacturing using NNPLS and genetic algorithm, International Journal of Production Research 43 (5) (2005) 3209–3230. [4] B. Moon, Hybrid Genetic Algorithms with Hyperplane Synthesis: A Theoretical and Empirical Study, Ph.D. Thesis, The Pennsylvania State University, 1994. [5] C.A. Ankenbrandt, An extension to the theory of convergence and a proof of the time complexity of genetic algorithms, in: J.E. Rawlins (Ed.), Foundations of Genetic Algorithms, Morgan Kaufmann Publishers, Palo Alto, CA, 1991, pp. 53–68. [6] C.-F. Tsai, C.G. Bowerman, J.I. Tait, Fuzzy Refinement in Genetic Algorithm for the Economic Design of Control Chart, Conference on Agile and Intelligent Manufacture Systems, CD ROM, 1996. [7] C. Han, M. Damrongwongsiri, Stochastic modeling of a two-echelon multiple sourcing supply chain system with genetic algorithm, Journal of Manufacturing Technology Management 16 (1) (2005) 87–108. [8] C.-F. Tsai, An intelligent adaptive system for the optimal variable selections of R&D and quality supply chains, International Journal of Expert Systems and Applications, Elsevier Science, 2006, pp. 808–825. [9] C.-F. Tsai, Kuo-Ming Chao, Anne James, A dynamic evolutionary mechanism for mixed-production, Taylor and Francis 46 (9) (2008) 2499–2517. [10] D.E. Goldberg, Genetic Algorithms in Search, Optimisation and Machine Learning, Addison-Wesley, 1989. [11] E. Alba, F. Chicano, Software project management with gas, Information Sciences 177 (11) (2007) 2380–2401. [12] G. Chen, S. Chen, W. Guo, H. Chen, The multi-criteria minimum spanning tree problem based genetic algorithm, Information Sciences 177 (22) (2007) 5050–5063. [13] G.Q. Huang, X.Y. Zhang, L. Liang, Towards integrated optimal configuration of platform products, manufacturing processes, and supply chains, Journal of Operations Management 23 (3/4) (2005) 267–290. [14] H.L. Liu, The economic design of C control chart, University of Chang-Kong, in: Proceedings of the 24th Anniversary of CSQC, 1988, pp. 99–117. [15] J.D. Schaffer, Learning multiclass pattern discrimination, in: Proceedings of the First International Conference on Genetic Algorithms, Lawrence Erlbaum Associates, 1985, pp. 74–79. [16] J.H. Holland, Adaptation in Natural and Artificial System, second ed., The MIT Press, 1992. [17] J.H. Holland, Adaptation in Natural and Artificial Systems, The MIT Press, 1975. [18] J.J. Grefenstette, Incorporating problem-specific knowledge into genetic algorithms, in: L. Davis (Ed.), Genetic Algorithms and Simulated Annealing, Morgan Kaufmann, San Mateo, Calif., 1987, pp. 42–60. [19] J.P. Rosca, Towards automatic discovery of building blocks in genetic programming, in: AAAI Fall Symposium, 1995, pp. 78–85. [20] J. Sanchis, M. Martı´nez, X. Blasco, Integrated multiobjective optimisation and a priori preferences using genetic algorithms, Information Sciences 178 (4) (2008) 931–951. [21] J.-C. Hung, A genetic algorithm approach to the spectral estimation of time series with noise and missed observations, Information Sciences 178 (24) (2008) 4632–4643. [22] K.J. Petersen, G.L. Ragatz, R.M. Monczka, An examination of collaborative planning effectiveness and supply chain performance, Journal of Supply Chain Management 41 (2) (2005) 14–25. [23] K.S. Ripon, S. Kwong, K.F. Man, A real-coding jumping gene genetic algorithm (RJJGA) for multiobjective optimisation, Information Sciences (2) (2007) 632–654. [24] M. Coli, P. Palazzari, Searching for the optimal coding in genetic algorithms, IEEE International Conference on Evolutionary Computation 1 (1995) 92– 96. [25] M.S. Gibbs, G. C Dandy, H.R. Maier, A genetic algorithm calibration method based on convergence due to genetic drift, Information Sciences 178 (14) (2008) 2857–2869. [26] P.D. Sherman, Ranking Techniques in Multi-criteria, Genetic Algorithm-based optimisation, Ph.D. Thesis, Polytechnic University, NY, 1995. [27] P.K. Tripathi, S. Bandyopadhyay, S.K. Pal, Multiobjective particle swarm optimisation with time variant inertia and acceleration coefficients, Information Sciences 177 (22) (2007) 5033–5049. [28] R. Yager, On ordered weighted averaging aggregation operators in multicriteria decision making, IEEE Transactions on Systems, Man, and Cybernetics 18 (1) (1998) 183–190. [29] S. Piramuthu, Machine learning for dynamic multi-product supply chain formation, Expert Systems with Applications 29 (4) (2005) 985–990. [30] S.K. Fixson, Product architecture assessment: a tool to link product, process, and supply chain design decisions, Journal of Operations Management 23 (3/4) (2005) 345–369. [31] W.A. Shewhart, Economic Control of the Quality of Manufactured Product, Van Nostrand Reinhold, Princeton, NJ, 1931. [32] T.S. Felix, C. Chung, S.H. Subhash, A hybrid genetic algorithm for production and distribution, Omega, Oxford 33(4) (2005) 345–355. [33] T.Y. Choi, K. Eboch, The TQM Paradox: relations among TQM practices, plant performance, and customer satisfaction, Journal of Operations Management 17 (1) (1998) 59–75. [34] W. Shen, Distributed manufacturing scheduling using intelligent chains, IEEE Intelligent Systems 17 (1) (2002) 80–94. [35] X. Blasco, J.M. Herrero, J. Sanchis, M. Martı´nez, A new graphical visualization of N-dimensional pareto front for decision-making in multiobjective optimisation, Information Sciences 178 (20) (2008) 3908–3924.