ARTICLE IN PRESS Robotics and Computer-Integrated Manufacturing 25 (2009) 709– 720
Contents lists available at ScienceDirect
Robotics and Computer-Integrated Manufacturing journal homepage: www.elsevier.com/locate/rcim
Development of two-level decision tree-based real-time scheduling system under product mix variety environment Yeou-Ren Shiue Department of Information Management, Huafan University, No. 1, Huafan Road, Shihding Township, Taipei county, 22301 Taiwan, ROC
a r t i c l e in fo
abstract
Article history: Received 21 January 2008 Received in revised form 21 May 2008 Accepted 3 June 2008
Most of the research on machine learning-based real-time scheduling (RTS) systems has been aimed toward product constant mix environments. However, in a product mix variety manufacturing environment, the scheduling knowledge base (KB) is dynamic; therefore, it would be interesting to develop a procedure that would automatically modify the scheduling knowledge when important changes occur in the manufacturing system. All of the machine learning-based RTS systems (including a KB refinement mechanism) proposed in earlier studies periodically require the addition of new training samples and regeneration of new KBs. Hence, previous approaches investigating machine learningbased RTS systems have been confronted with the training data overflow problem and an increase in the scheduling KB building time, which are unsuitable for RTS control. The objective of this paper is to develop a KB class selection mechanism that can be supported in various product mix ratio environments. Hence, the RTS KB is developed by a two-level decision tree (DT) learning approach. First, a suitable scheduling KB class is selected. Then, for each KB class, the best (proper) dispatching rule is selected for the next scheduling period. Here, the proposed two-level DT RTS system comprises five key components: (1) training samples generation mechanism, (2) GA/DT-based feature selection mechanism, (3) building a KB class label by a two-level self-organizing map, (4) DT-based KB class selection module, and (5) DT-based dynamic dispatching rule selection module. The proposed two-level DT-based KB RTS system yields better system performance than that by a one-level DT-based RTS system and heuristic individual dispatching rules in a flexible manufacturing system under various performance criteria over a long period. & 2008 Elsevier Ltd. All rights reserved.
Keywords: Real-time scheduling Product mix variety Machine learning Decision tree learning Self-organizing map
1. Introduction During the past decade of the 21st century, leading high-tech manufacturing enterprises have been confronted with fierce global market competition. This highly dynamic customeroriented production environment is characterized by rapid changes in the product mixes, which need to be supplied in a short lead time. A possible solution to this problem is that the company should possess an efficient scheduling (dispatching) mechanism to increase the product mix variety and shorten the production cycle time (or reduce number of tardiness orders). This mechanism can yield improved customer service and a healthy market share [1]. Scheduling mechanisms are typically implemented by means of a knowledge base (KB) obtained through a machine learning-based dynamic dispatching mechanism (i.e., real-time scheduling—RTS)
Tel.: +886 2 26632102x4375; fax: +886 2 26632102x4353.
E-mail address:
[email protected] 0736-5845/$ - see front matter & 2008 Elsevier Ltd. All rights reserved. doi:10.1016/j.rcim.2008.06.002
on the basis of the current system status at each time decision point over a series of scheduling period horizons to meet the prerequisites in the dynamic production environment [2–5]. The advantage of using the machine learning-based RTS approach is that it can yield rapid acceptable solutions and conform to the operation characteristics of a dynamic manufacturing environment. Due to short life cycles, most leading high-tech manufacturing enterprises produce multiple products and product mixes that change from time to time. Chung and Haung [6] suggested that a product mix variety manufacturing environment would be marred by bottlenecks and capacity-constrained resources capacity utilization problems. Therefore, increasing the product mix variety induces shifts in the bottlenecks and variable machine workloads on the shop floor. In this situation, RTS systems should generate new scheduling KBs to resolve these bottlenecks in the resource capacity shifting problem. Most of the research on machine learning-based RTS systems has been aimed at either a single lot or constant mix environments. Arzi and Iaroslavitz [7] investigated a classical decision tree-based (DT-based) production control system (PCS) that
ARTICLE IN PRESS 710
Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
performed successfully in a produce-to-order (product mix ratio is known) environment. However, it does not outperform the singleheuristic rule in a highly random produce-to-order (product mix ratio are unknown) environment. In the product mix variety manufacturing environment, the KB is dynamic; therefore, it would be interesting to establish a procedure that would automatically modify the knowledge if important changes occur in the manufacturing system. Priore et al. [8] revealed that one of the limitations of RTS using machine learning algorithms is the absence of a refinement mechanism in the scheduling KB. From the above discussion, since the KB is dynamic in a product mix variety environment, the refinement of a scheduling KB for PCS in order to enhance the KB generalization ability is worth studying in the machine learning-based RTS problem domain. Based on the above proposition, this study seeks to develop a KB class selection mechanism that can support various product mix ratio environments. Hence, in this paper, the RTS KB is developed by means of a two-level DT learning approach. First, we select a suitable scheduling KB class. Then, for each KB class, we select the best (proper) dispatching rule for the next scheduling period. The rest of this paper is divided into four sections. In Section 2, relevant literatures about this paper are reviewed. Section 3 formulates the RTS problem and describes the methodology of the proposed two-level DT-based RTS system in detail. The study case experiment results and an analysis of the proposed two-level DTbased approach and other approaches are presented in Section 4. The conclusion of this paper is presented in Section 5 along with a summary and some future research issues.
2. Review of related research 2.1. Overview of machine learning approach for RTS Priore et al. [8] suggested three major machine learning approaches for resolving the problems with the RTS system, namely, artificial neural networks (ANNs), DT learning, and mixed (hybrid) approaches. Rumelhart et al. [9] demonstrated the capabilities of backpropagation ANNs for automatic learning, association, generalization, and pattern recognition, because they provide nonlinear transformations that can be used to model highly complex functions. Therefore, the complex interaction of the dynamic considerations in manufacturing cells is the reason for investigating the possibility of using ANNs to learn and perform RTS for a shop floor. When employing back-propagation ANN algorithms for RTS [5,10,11], the ANN is established for a set of training samples; each of these samples consist of a vector of the system attribute values and corresponding dispatching rules. The training examples are generated by simulation. The trained ANN can suggest a preference indicator of the candidate dispatching rules for a given system status. The use of a DT-based learning approach in RTS to improve the production of a manufacturing system has yielded outstanding outcomes in recent researches [5,7,11,12]. Most DT learning algorithms are variations of an algorithm that employs a top– down greedy search through the space of possible DTs. This approach includes the interactive dichotomizer 3 (ID3) algorithm [13,14] and its successor C4.5 [15]. C4.5 is the most widely used in the field of DT learning for RTS. By using the DT learning approach, the learned knowledge is presented in the form of either DTs or sets of if-then rules. The major advantage of the DT learning approach is that knowledge can be easily coded into RTS, which can improve its readability.
In mixed approaches, some researchers have combined different learning algorithms such as the genetic algorithm (GA) [16] or unsupervised competitive ANNs to improve upon the classical back-propagation ANN or limitations of DT learning. Chiu and Yih [17] used DT learning and GAs to extract the RTS KB. In their approach, a GA is used to search for a sequence of dynamic dispatching decisions, which are collated as good-quality training examples. Knowledge extraction using machine learning requires a set of predefined classified training data that need to be assigned. This training data generation process becomes an intolerable time-consuming task as the number of decision variables increases. Kim et al. [18] proposed an integrated approach of DT learning and competitive neural networks for developing multi-decision variables (dispatching rule selection mechanisms). Here, competitive neural networks are applied to classified training data and converted into rough scheduling knowledge and then RTS decision rules by using C4.5.
2.2. Related work on machine learning-based RTS systems in product mix variety environment problems Arzi and Iaroslavitz’s [7] study on classical DT-based RTS could be successfully used for controlling flexible manufacturing cells (FMCs) in a relatively random produce-to-order (product mix ratio are known) environment. The DT-based RTS was superior in terms of throughput and tardiness over each one of the competing rules when applied individually. This means that in the produce-toorder environment, DT-based RTS effectively maps the competing rules into FMC states. However, in a highly random (product mix variety) environment, the DT-based RTS fails to perform significantly better than the single scheduling rules. This result can be explained using an example of a highly random produce-to-order environment; here, the system may reach states that have not been mapped into DTs during the learning phase. In these cases, the DT-based RTS system would probably make decisions on the basis of irrelevant knowledge. In DT-based RTS systems, Park et al. [12] proposed a scheduling rule refinement mechanism that improves upon the classical DTbased RTS weakness under a product mix variety environment. The rule refinement stage provides a control mechanism for the purpose of ensuring an acceptable scheduling performance level. The rule refinement stage monitors the quality of the schedules generated at the scheduling stage by comparing the overall performance with those obtained by repeatedly applying each dispatching rule individually under a variety of scenarios. If this results in performance degradation, then the DTs need to be refined. The rule refinement procedure identifies all such instances of incomplete representations and augments the DT by appropriately generating additional rules. The rule refinement mechanism is performed according to the prediction accuracy that measures the proportion of the testing instances in which the scheduling rule selected by the DTs turns out to be the one that performs the best among all the rules when individually implemented. If the prediction accuracy is found to be less than the prespecified target prediction accuracy level, the learned rules are refined according to a three-step process. First, the deficient rules in the DTs are identified; next, additional training examples are generated in order to specifically address the preconditions manifesting in the deficient rules. In the final step, the DT learning algorithm is employed to update the tree on the basis of the additional information provided by these examples. The process of generating the testing instances, evaluating the prediction accuracy based on these instances, and refining the tree is carried out iteratively until the desired prediction accuracy is achieved.
ARTICLE IN PRESS Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
In ANN-based RTS systems, Arzi and Iaroslavitz [10] investigated the complex problem of real-time control of a FMC that is operated under a highly random produce-to-order (product mix variety) environment. In such a situation, different jobs arrive at random times at the FMC. The distribution of the arriving jobs is unknown and it changes drastically over time. Hence, the FMC is confronted with high demand fluctuations. The proposed ANNbased RTS system periodically retrains the ANNs according to the new additional information (samples) obtained during the FMC’s operation. These samples may be related to the unmapped areas, which are reached during the operation, due to the dynamic nature of the produce-to-order environment. An extensive simulation study shows that the proposed approach is useful, and it operates significantly better than using the best out of the individual rules and a DT-based RTS system. However, all of the abovementioned machine learning-based RTS systems (including the KB refinement mechanism) require the periodic addition of new training samples and regeneration of new KBs. Hence, the above machine learning-based RTS is confronted with the training data overflow problem and an increase in the scheduling KB building time, which are unsuitable for RTS control.
711
and conform to the operation characteristics of manufacturing systems. According to the description by Shiue and Guh [5], learningbased RTS can be represented by the 5-tuple {O, P, D, L, S}, where each pattern pAP is described by a conjunction of system features f; further, S is the set of possible system states given by {s1, s2, y, sT} at St, which can be supported by p. The scheduling rule dmoAD is activated by the lAL machine learning approach employed under the dispatching rule m and the given performance criterion oAO. Therefore, the objective function for a specific l machine learning-based RTS model can be defined as follows: Ol ¼ Omax þ Omin l l
(1)
where ¼ Omax l
[X o
¼ Omin l
t
[X o
t
Max f ðst ; dmo ; lÞ dmo
Min f ðst ; dmo ; lÞ dmo
and Omax [ Omin ¼ O, and Omax \ Omin ¼ +. l l l l 3.2. Overview of two-level DT RTS system
3. Development of two-level DT-based RTS system 3.1. Problem formulation Because the status of manufacturing systems changes continuously, previous studies have confirmed that it is possible to improve system performances by implementing a multi-pass scheduling policy on the basis of the system status at each decision point over a series of short-term scheduling period horizons rather than using a single dispatching rule for an extended planning horizon. The advantage of using learningbased RTS approaches is that they yield rapid acceptable solutions
Training samples generation mechanism
In order to provide online decision support for various product mix ratio environments, a learning-based RTS is developed to obtain the knowledge for a dynamic dispatching rule selection mechanism by means of a two-level DT approach that has the ability to select (i.e., refine) a suitable KB class and thus efficiently solve the product mix variety problem. Fig. 1 shows the architecture of the proposed two-level DT RTS system that comprises five key components: training samples generation mechanism, GA/DT-based feature selection mechanism, building a KB class label using a two-level self-organizing map (SOM), DT-based KB class selection module, and a DT-based
Customer order
Production performance criterion
Physical system & product specification
GA/DT-based feature selection mechanism
Build KB class label by two-level SOM
DT-based KB class selection module
DT-baseddynamic dispatching rule selection module Two-level DT-based Knowledge Base
Set product mix ratio
Two-level decision tree–based RTS system
Dispatching rule generation System status Data Base Shop floor physical system component
Fig. 1. Architecture of the proposed RTS system.
ARTICLE IN PRESS 712
Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
dynamic dispatching rule selection module. Each of these procedures is discussed in the following sections.
Table 2 System attribute used in this study
3.3. Training samples generation mechanism
System attribute ID
A set of training examples is provided as information to the system for learning the concepts that represent each class. The given training example comprises a vector of attribute values and the corresponding class. It is known that the relative effectiveness of a dispatching rule heavily depends on the status of the system. Hence, in order to construct a scheduling KB, training examples need to have sufficient information to reveal this property. In the KB requiring a dynamic dispatching rule selection mechanism, let X denote the set of training examples generated by the training samples generation mechanism. A training n example xAX can be denoted as a tuple ff; dmo g, where f is the n set of candidate system attributes (features) and dmo represents the optimal RTS strategy (dispatching rule) under the given performance criterion o and system attribute state f. Three types of performance criteria are typically studied in scheduling problems, namely, throughput-based, flow-timebased, and due date-based problems. Table 1 lists the three performance criteria used in this study. This research investigates the essential system attributes required under various performance criteria. Therefore, all the possible system attributes are exhaustively examined. Table 2 lists 31 candidate attributes. The criteria for selecting the system attributes are based on earlier researches [2,7,12,19] that employed machine learning to develop scheduling KBs and the features based on the consideration in the study case environment (described in Section 4). The need for dynamic dispatching rules arises from the fact that no particular dispatching rule has been proven to be optimal under a variety of shop configurations and operating conditions [2,7,12,19]. Consequently, excessive efforts are not required for studying the best dispatching heuristics in various environments. Table 3 summarizes six dispatching rules that were found to be effective in earlier studies [5,20–22] in terms of the three abovementioned performance criteria. To verify the proposed methodology, a discrete event simulation model is used to generate the training examples. The training examples are generated by executing a simulation run for every dispatching rule for the same initial state of the system attributes and arriving job streams, according to the proposition by Arzi and Iaroslavitz [7]. In addition, in order to provide comprehensive training examples representing a wide range of possible system states, the technique of multi-pass simulation [23] is used to collect training examples including the state variable of the system attributes recorded at a decision point and the performance measure of each dispatching rule recorded at the end of a scheduling point. Fig. 2 shows the use of the multi-pass simulation technique to generate the training sample procedure. 3.4. GA/DT-based feature selection mechanism Based on the results obtained from earlier studies [4,5,19], selecting suitable system information based on various producTable 1 Performance criteria used in this study Performance criteria
Description
TP MCT NT
Throughput Mean cycle time Number of the tardy parts
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Description
Number of the jobs in the system The mean utilization of machines The standard deviation of machine utilization The mean utilization of load/unload stations The mean utilization of pallet buffers The mean utilization of AGVs The minimum imminent operation time of candidate jobs within the system The maximum imminent operation time of candidate jobs within the system The mean imminent operation time of candidate jobs within the system The standard deviation of the imminent operation time of candidate jobs within the system The minimum total processing time of candidate jobs within the system The maximum total processing time of candidate jobs within the system The mean total processing time of candidate jobs within the system The standard deviation of the total processing time of candidate jobs within the system The minimum remaining processing time of candidate jobs within the system The maximum remaining processing time of candidate jobs within the system The mean remaining processing time of candidate jobs within the system The standard deviation of the remaining processing time of candidate jobs within the system The minimum slack time of candidate jobs within the system The mean slack time of candidate jobs within the system The standard deviation of the slack time of candidate jobs within the system The maximum tardiness of candidate jobs within the system The mean tardiness of candidate jobs within the system The standard deviation of the tardiness of candidate jobs within the system The maximum workload in front of any machine/station within the system The total workload in front of any machine/station within the system The mean sojourn time of candidate jobs within the system The standard deviation of the sojourn time of candidate jobs within the system The mean time now until due date of candidate jobs within the system The standard deviation of the time now until due date of candidate jobs within the system Current employ dispatching rule
Table 3 Dispatching rules used in this study Dispatching rule
Description
FIFO DS EDD SIO SPT SRPT
Select Select Select Select Select Select
the the the the the the
job job job job job job
according to the rule of first in first out with minimum slack time with the earliest due date with the shortest imminent operation time with the shortest processing time with the shortest remaining processing time
tion requirements to construct an RTS system KB in machinebased learning is a crucial research issue due to the existence of a large amount of shop floor information in manufacturing systems.
ARTICLE IN PRESS Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
Random select one dispatching rule for next time window starting point
Candidate dispatching rule SPT SIO SRPT DS Warm up Time
EDD
Time Window t
SPT
EDD
EDD
SIO SRPT
•••••••••••
DS Time Window
Time Window t+dt
Simulation end
SPT SIO SRPT
DS
713
t+2dt
••••••• t+3dt
Fig. 2. The multi-pass technique to generate the training samples procedure.
The use of too many attributes to learn a concept results in the overfitting of the training data and degrades the generalization ability of a RTS system KB. Moreover, omitting one important system attribute will greatly influence the learning process and may harm the ability of the RTS system to classify the knowledge. In the literature, two known general approaches exist for solving the feature selection problem: the filter approach and the wrapper approach [24]. The distinction is made depending on whether the feature subset selection is carried out independently of the learning algorithm that is used to construct the classifier (i.e., a filter) or not (i.e., a wrapper). In the filter approach, feature selection is performed before the classifier is applied to the selected feature subset. The filter approach is computationally more efficient than the wrapper approach. The wrapper approach trains the classifier system with a given feature subset as an input, and it estimates the classification error using an unknown data set. Although this is a slower procedure, the features selected are usually more optimal for the employed classifier. GAs has excelled performance in dealing with such a complex optimization problem. A wider application of GAs solves shop floor scheduling by some researcher [25–27]. Hence, in this study, the wrapper approach is used to select the near-optimal feature subset of the DT-based RTS system using a GA. The proposed GA/DT feature selection mechanism comprises two modules: a GA-based feature selection module (i.e., GA module) and a DT classifier module. The GA module yields a nearoptimal subset of the system attributes according to the various performance measures, whereas the DT classifier module generates the training examples according to the output of the GA module, which were later applied to evaluate the fitness of a given subset of system attributes. This GA-DT process iterates until a feature subset is obtained with the best performance in the classification of the unknown data. Based on discussion above, a GA/DT-based feature selection algorithm is as follows:
Step 1: Initialize GA module and DT classifier module parameters. Set g’0. Step 2: Initialize a random population of chromosomes Pg, which represents a population of candidate subsets of the system features at generation g. Step 3: Decode Pg into DT classifier, denoted as Pg-DT. Step 4: Evaluate Pg-DT. Step 4.1: Use a DT algorithm to learn Pg-DT in DT classifier module.
Step 4.2: Obtain the performance of the Pg-DT in classifying unseen data and use the performance as the fitness value for Pg-DT in DT classifier module. Step 5: IF termination criterion is true. For optimal pn 2 P, decode p* and generates near-optimal subset of the system features. Else Perform Steps 6–10 (Evolution Cycle). End Step 6: Encode Pg-DT with fitness values in GA module. Step 7: Set g’g+1. Step 8: Select Pg from Pg1 in GA module. Step 9: Crossover Pg in GA module. Step 10: Mutate Pg in GA module. Step 11: Go back to Step 4. A detailed description of the GA/DT-based feature selection mechanism can be found in Su and Shiue [4]. By using the GA/DTbased feature selection mechanism process, a training example that has a near-optimal subset of system attributes denoted as xGA=DT 2 XGA=DT can be obtained as the tuple ff GA=DT ; dmo g, where f GA=DT is the selected system attributes by the GA/DT-based feature selection mechanism, and XGA=DT are the training examples that have the near-optimal subset of the system attributes. 3.5. Building KB class label by two-level SOM In this study, using unique KBs is inadequate for RTS systems. In this paper, we investigate various RTS KBs that can support various product mix variety environments. Under the product mix variety production environment, the manufacturing pattern can be diverse. Hence, if the unique set of training examples to build the scheduling KB contains some scarce (possibly noise) patterns, they can degrade the generalization ability of the RTS system’s KB. Moreover, due to the lack of a KB refinement mechanism, when the product mix ratio changes on the shop floor, the current RTS KB cannot offer a proper dispatching rule strategy. Therefore, in this study, based on the similarity in the training examples, the near-optimal system attributes of the training examples denoted as FGA=DT can yield a classification of various KB classes by clustering techniques. By clustering analysis techniques, the accuracy of the training samples can be improved for the same class. Furthermore, the various obtained KB classes can provide various product mix variety environment requirements for an RTS system.
ARTICLE IN PRESS 714
Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
Neuron Positions 4 3 2 1 0 -1 -2 -3 -4
position (2,1)
7 6 5 4 3
2 SOM training 1 0 0
5
10
15
20
25
30
SOM clustering -1 0
1
2
N samples
3
4
5
6
7
8
position (1,1)
C clusters
M prototypes Fig. 3. A two-level SOM approach.
FGA/DT Two-level SOM approach
XGA/DT Subset # 1
XGA/DT Subset # 2
……..
XGA/DT Subset #n
1
2
XGA/DT
……..
j
4. Updating: Adjust the synaptic weight vectors of all the neurons by using the following update formula:
Assign KB class label
XGA/DT
2. Sampling: Draw a training example x from the input space with a certain probability; the vector x represents the activation pattern that is applied to the lattice. 3. Similarity matching: Find the best-matching (winning) neuron i(x) at time step n by using the minimum-distance Euclidean criterion: iðxÞ ¼ arg minxðnÞ wj ; j ¼ 1; 2; . . . ; J (2)
wj ðn þ 1Þ ¼ wj ðnÞ þ ZðnÞhj ; iðxÞðnÞðxðnÞ wj ðnÞÞ
n
XGA/DT
Fig. 4. Assign specific KB class label in XGA/DT by two-level SOM.
Clustering is a data mining technique in which the data is grouped into classes or clusters such that patterns within a cluster have high similarity in comparison to one another but have very dissimilar patterns to the data in other clusters. Based on this idea, at the KB class selection stage, unclassified training data are classified such that system attributes with similar characteristics fall into the same class. If the training data are classified into the same class, they can be assigned the same KB class label. By means of the clustering process, a training example with class label n denoted as xnGA=DT 2 XnGA=DT can be defined as the 3-tuple ff GA=DT ; dmo ; KBn g, where XnGA=DT represents the subset of n (i.e., assigned the class label n) in XGA=DT by the clustering analysis and KBn is the KB class n. The most widely applied clustering ANN is a SOM [28], which is an excellent tool in the exploratory phase of data mining because it has prominent visualization properties. There are three basic steps involved in the application of the SOM algorithm after initialization, namely, sampling, similarity matching, and updating. These three steps are repeated until the feature map has been completely formed. The SOM algorithm can be summarized as follows:
1. Initialization: Select random values for the initial weight vectors wj(0). The only restriction here is that wj(0) should be different for j ¼ 1, 2,y, J, where J is the number of neurons in the lattice. It may be desirable to maintain a small magnitude for the weights.
(3)
where Z(n) is the learning-rate parameter and hj; iðxÞðnÞ is the neighborhood function centered around the winning neuron i(x); both Z(n) and hj; iðxÞðnÞ are varied dynamically during the learning process of the best results. 5. Continuation: Continue with step 2 until no noticeable changes are observed in the feature map. However, by using the SOM approach, the visualizations can only be used to obtain qualitative information. In order to effectively utilize the information provided by the SOM, methods that can yield good candidates for map unit clusters or groups are required. It should be emphasized that the goal here is not to find optimal clustering for the data but to obtain good insight into the cluster structure of the data for data mining purposes. Therefore, the clustering method should be fast, robust, and visually efficient. Vesanto and Alhoniemi [29] proposed a two-level SOM that combined SOMs, K-means, and Davies-Bouldin (DB) index [30] to resolve these problems (Fig. 3). A two-level SOM approach has been proposed that first uses the SOM to determine the number of clusters and starting point and then employs K-means to find the best cluster. The benefit of using two-level SOM is that it effectively reduces the computation time and noise, while the additional abstraction levels yield higher distortion. The prototypes are less sensitive to random variations than the original data because the prototypes are local averages of the data [29]. The DB index is a function of the ratio of the sum of the withincluster scatter to that existing between cluster separations. The best clustering of a two-level SOM is achieved by minimizing the following DB index equation: K 1X Sc ðQ k Þ þ Sc ðQ l Þ max K k¼1 lak dce ðQ k ; Q l Þ
(4)
where Sc is the within-cluster distance, dce is the between the cluster distance, and K is the number of clusters.
ARTICLE IN PRESS Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
Fig. 4 shows the training samples by two-level SOM clustering approach, then, assign specific KB class label in training samples. 3.6. Two-level DT-based knowledge base In this study, the RTS system’s KB is developed in two phases: KB class selection module and DT-based dynamic dispatching rule selection module. During the KB class selection phase, the unclassified training data were clustered using the two-level SOM approach such that data with a similar characteristic—defined as the system attribute—are clustered into the same class. If the training data are classified into the same class, they can be assigned the same KB class label. After assigning the label, the entire set of training examples with near-optimal system attributes are learned using the DT algorithm and the KB class label is used to construct the KB class selection mechanism. Finally, the DT algorithm is reused to individually learn the various classes in the KB training examples in order to generate the dynamic dispatching rule for each KB class. The DT learning can be briefly described as follows. A DT is a tree-formed structure that represents the classification knowledge. Each nonterminal node represents a test or decision to be carried out on a single attribute value of the considered data set with one branch and sub-tree for each possible outcome of the test. In this study, C4.5 is used to induce the DT (rules) for the classification task of RTS KBs. C4.5 is a greedy algorithm that grows the tree along the top–down direction, selecting an attribute at each node that best classifies the local training examples. This process continues until the tree perfectly classifies the training examples or until all the attributes have been tested. Each instance attribute is evaluated using a statistical test (called information gain) to determine how effectively the training examples are classified. In order to precisely define the information gain, Quinlan [13] defined a measure used in information theory called entropy that characterizes the impurity of a collection of examples; it can be defined as X EntropyðXÞ ¼ PðcÞlog2 PðcÞ (5) c2C
where C is the set of class labels that categorizes the dispatching rules used in this study and P(c) is the proportion of X belonging to class c. Basically, the information gain is the expected reduction in the entropy caused by partitioning the examples according to their features. Hence, the information gain is defined as X GainðX; f Þ ¼ EntropyðXÞ PX ðvÞEntropyðXv Þ (6) v2V f
where f is a feature relative to the collection of examples X, Vf is the set of all possible values for feature f (i.e., f 2 f GA=DT is one of the system attributes selected by the GA/DT-based feature selection mechanism), and Xv is the subset of X for which the feature f has value v (i.e., Xv ¼ fx 2 Xjf ðxÞ ¼ vg). PX(v) is the probability that X belongs to the feature value v. The probability is estimated from the relative frequency of the training set. The best attribute is selected and used as a test at the root node of the tree. A descendant of the root node is then created for each possible value of this attribute, and the training examples are assigned to the appropriate descendant nodes. The entire process is then repeated using the training examples associated with each descendant node to select the best attribute to test at that point in the tree. The tree creation phase can create difficulties when the data includes noise. When the DT approach classifies such data, the resulting tree tends to be very large. However, the number of
715
branches reflects the probability of occurrence of the particular data rather than the underlying relationships. These relationships are very unlikely to occur in further examples. In this situation, the DT creation algorithm will produce trees that overfit the training examples. The post-pruning DT approach can identify the least reliable branches and remove them. Under this architecture, the RTS system receives the system status signal. First, a suitable KB class is selected by using the DTbased KB class selection module. Then, the DT-based dynamic dispatching rule selection module sends the best dispatching strategy control command based on the specific KB class to the shop floor.
4. Experiment 4.1. Study case description The study case involves a modification of the model used by Montazeri and Van Wassenhove [21]. It is a true flexible manufacturing system. The case involves (1) three machine families, (2) three load/unload stations, (3) three automated guided vehicles (AGVs), (4) an input buffer and a central WIP buffer with sufficient capacity to prevent a deadlock, and (5) a computer-controlled local area network. The first two machine families have two machines and the third has a single machine. Eleven different types of parts are produced by this model and their routing and processing times are identical to those used by Montazeri and Van Wassenhove [21]. 4.2. Constructing a simulation model and training example generation To verify the proposed methodology, a discrete event simulation model is used to generate the training examples. The simulation model is built and executed using an eM-Plant [31], an object-oriented simulation language, and is run on a Core 2 Duo PC with a Windows XP operating system. The proposed approach is expected to achieve the desired dynamic dispatching performance. Several parameters are determined in the preliminary simulation run. The time between the job arrivals is exponentially distributed with a mean of 31 min. The due date of each job is randomly assigned from 6 to 10 times the total processing time and is uniformly distributed. The maximum number of pallets (jobs) that are permitted in the flexible manufacturing system (FMS) is 100. Table 4 shows five product mix ratios to generate the training examples and to build the training example KB. The proportions of the part types vary continuously after every 20,000 min. Table 4 Five part mix ratios generate training examples and training examples KB Part ID
1 2 3 4 5 6 7 8 9 10 11
Part mix ratios (%) Mix 1
Mix 2
Mix 3
Mix 4
Mix 5
11.00 11.00 11.00 12.00 6.00 8.00 8.00 7.00 7.00 2.50 16.50
14.00 14.00 15.00 10.00 12.00 8.00 5.00 3.00 3.00 1.00 15.00
6.00 6.00 6.00 15.00 15.00 9.00 8.00 8.00 7.00 4.00 16.00
9.00 9.00 9.00 8.00 13.00 12.00 3.00 9.00 8.00 1.00 19.00
14.00 14.00 14.00 15.00 7.00 5.00 5.00 4.00 4.00 6.00 12.00
ARTICLE IN PRESS 716
Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
In order to generate a large number of different training examples, we used 100 different random seeds to generate 100 different job arriving patterns. The warm-up period for each run is 10,000 min, followed by 40 multi-pass scheduling periods. The time window of each multi-pass simulation is 2000 min. A total of 4000 training samples have been collated.
Table 8 DB index of each performance criterion Performance criterion
TP MCT NT
4.3. The two-level decision tree-based RTS formulation
No. of cluster 2
3
4
5
6
1.2258 1.2272 122666
0.9313 1.0155 0.8892
0.7262 0.8598 0.7466
0.8286 0.8112 0.8430
0.8140 0.8446 0.8647
The proposed GA/DT-based feature selection mechanism in the GA module was implemented using a program written by the authors coded in Visual C++ and linked to See5 (i.e., commercial windows version of C4.5) [32] by using the batch file mode. Table 5 lists the primary parameter settings of the GA/DT-based feature selection mechanism used in this study. Table 6 shows the results of the near-optimal subset of the system attributes according to each performance criterion. In this study, the two-level SOM approach is used for clustering the training samples and to assign a KB class label for each performance criterion. The two-level SOM algorithm is coded by MATLAB’s neural network toolbox [33]. Some experimental parameters in the two-level SOM are listed in Table 7. Table 8 shows the DB index that used the K-means value (i.e., number of clusters) from 2 to 6 for each performance criterion. The minimum values of the DB index in TP, MCT, and NT are 4, 5, and 4, respectively. Figs. 5–7 show the best clustering SOM Umatrix (unified distance matrix) for each performance criterion.
Table 5 The parameter of GA/DT-based feature selection mechanism
Fig. 5. The best clustering SOM U-matrix in TP criterion.
GA parameter
Value
Population size Crossover rate Mutation rate Elitism strategy Maximum generation Best fitness remains the same for generation
100 0.6 0.001 0.1 500 10
See 5 parameter
Value
m: The minimum number of instances represented by a node c: Confidence level for pruning
25 2
Table 6 The result of selected attributes for each performance criterion Performance criterion
Optimal subset of system attributes ID
No. of attributes selected
TP
{2, 3, 6, 8, 15, 16, 18, 24, 25, 26, 31} {3, 4, 8, 11, 17, 18, 23, 30, 31} {1, 2, 4, 7, 11, 15, 24, 25, 29, 31}
11
MCT NT
9 Fig. 6. The best clustering SOM U-matrix in MCT criterion. 10
Table 7 SOM parameters used in this study Map size Lattice Shape Neighborhood function
66 Hexagonal Sheet Gaussian
Based on the results in Table 8, to meet the TP, MCT, and NT performance criteria, we require 4, 5, and 4 KB class labels, respectively. Thereafter, two-level DT-based KB is established by using the method described in Section 3.5. Now, we verify that the proposed two-level DT-based RTS system is effective under the given product mix variety environment. Three different product mix ratios are designed (listed in Table 9) for online operation. A stream of arriving jobs was generated in a simulation lasting for 400,000 min using a different set of random seeds to investigate whether the proposed
ARTICLE IN PRESS Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
717
two-level DT-based RTS system is more effective over a long period of time based on the various performance measures than that in an earlier study by Su and Shiue [4] in which one-level DTbased RTS system and a single-heuristic rule was employed for various scenarios.
5. Experiment results and analysis Tables 10–12 show the resulting mean and standard deviation for the three performance criteria of the 30 simulation runs with 30 random seeds that employed different scheduling strategies under different product mix variety environments. The proposed two-level DT-based approach has been shown to achieve better results, as measured under all the performance criteria, because of superior efficiency. Due to the use of common random seeds to achieve the same system scenarios, a paired-sample t-test was carried out to examine whether the proposed two-level DT-based approach employing the KB class selection mechanism is significantly superior to the one-level DT-based approach that did not employ
Fig. 7. The best clustering SOM U-matrix in NT criterion.
Table 9 Part mix ratios used for online operation Part ID
Five part mix ratios
1 2 3 4 5 6 7 8 9 10 11 Part ID
1 2 3 4 5 6 7 8 9 10 11 Part ID
1 2 3 4 5 6 7 8 9 10 11
Mix 1
Mix 2
Mix 3
Mix 4
Mix 5
12.00 10.00 10.00 11.00 8.00 7.00 8.00 7.00 7.00 3.50 17.00
13.00 13.00 14.00 10.00 10.00 9.00 6.00 3.50 3.50 1.50 16.50
7.00 7.00 8.00 12.00 13.00 8.00 8.00 7.00 8.00 6.00 16.00
10.00 10.00 9.00 8.00 11.00 12.00 5.00 8.00 7.00 2.00 18.00
15.00 13.00 13.00 15.00 8.00 4.00 6.00 3.00 3.00 7.00 13.00
Six part mix ratios Mix 1
Mix 2
Mix 3
Mix 4
Mix 5
Mix 6
14.00 6.00 10.00 13.00 12.00 6.00 8.00 8.00 4.00 7.00 12.00
11.00 15.00 7.00 10.00 11.00 5.00 7.00 8.00 2.00 5.00 19.00
14.00 6.00 8.00 15.00 4.00 2.00 10.00 9.00 10.00 6.00 16.00
9.00 8.00 16.00 16.00 4.00 9.00 3.00 7.00 10.00 3.00 15.00
10.00 15.00 13.00 8.00 9.00 1.00 4.00 6.00 9.00 6.00 19.00
8.00 9.00 4.00 2.00 6.00 14.00 7.00 16.00 5.00 12.00 17.00
Seven part mix ratios Mix 1
Mix 2
Mix 3
Mix 4
Mix 5
Mix 6
Mix 7
10.00 7.00 8.00 15.00 10.00 10.00 6.00 6.00 9.00 5.00 14.00
8.00 13.00 9.00 16.00 11.50 5.00 7.00 10.00 1.00 3.50 16.00
15.00 8.00 5.00 15.00 9.00 7.00 9.50 5.00 8.50 1.00 17.00
13.00 6.00 15.00 12.00 7.00 9.00 6.00 10.50 5.00 5.00 11.50
16.00 12.00 10.00 8.00 12.00 9.00 4.00 6.00 2.00 8.00 13.00
10.00 19.00 4.00 9.00 6.00 6.00 12.00 3.00 7.00 9.00 15.00
14.00 9.00 11.00 17.00 5.00 8.00 2.00 8.00 4.00 10.00 12.00
ARTICLE IN PRESS 718
Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
Table 10 The results of two-level DT and the other scheduling strategy in five part mix ratios variety environment Scheduling strategy
Two-level DT One-level DT FIFO SPT SIO SRPT DS EDD
TP
MCT (min)
NT
Mean
SD
Mean
SD
Mean
SD
13086.4138 13031.5172 12800.3103 12964.2759 12891.6897 13011.8621 12934.2069 12832.8621
84.67523 75.42197 191.08340 138.02870 168.99157 98.07349 171.75967 191.59401
1071.0445 1113.1685 2239.9087 1213.0193 1401.8833 1443.3360 1340.0660 2015.1580
101.9691 162.1984 378.8444 232.3967 353.1282 404.3153 270.2833 445.5493
735.6786 1089.2143 8970.2857 1603.3929 3479.6429 1323.2500 3065.1429 7666.0714
400.21587 552.84117 4220.13383 1235.89270 2204.40374 697.49956 1972.65573 2400.94935
SD, standard deviation.
Table 11 The results of two-level DT and the other scheduling strategy in six part mix ratios variety environment Scheduling strategy
Two-level DT One-level DT FIFO SPT SIO SRPT DS EDD
TP
MCT (min)
NT
Mean
SD
Mean
SD
Mean
SD
12,952.6071 12,432.0714 12,084.9643 12,322.0714 12,177.7143 12,358.2143 12,333.8571 12,132.2857
305.08789 311.53347 333.12944 301.97227 333.37209 282.20643 279.42053 306.71351
931.6616 1134.4216 3161.6596 1104.4006 1310.2002 2269.2333 1374.9941 3062.5699
193.4234 212.9967 437.2417 192.9867 389.0670 358.2735 225.1282 143.8876
7033.3929 7936.7500 11,037.2500 8398.8929 9874.2500 8757.9643 8714.3214 10,954.0000
1204.32326 1252.80076 3229.12922 1498.45875 1536.91424 1648.93704 1768.07074 1234.42327
Table 12 The results of two-level DT and the other scheduling strategy in seven part mix ratios variety environment Scheduling strategy
Two-level DT One-level DT FIFO SPT SIO SRPT DS EDD
TP
MCT (min)
NT
Mean
SD
Mean
SD
Mean
SD
12,427.6071 12,184.4643 11,868.8929 12,100.8929 11,924.1429 12,129.6429 12,076.8214 11,889.7857
157.25336 247.51737 213.04031 194.78979 213.06263 209.88343 217.47389 215.44448
911.8566 992.6766 2185.4060 996.0566 1139.1890 1332.2000 1227.4940 1985.6690
205.6595 242.5567 557.1989 237.5517 296.1261 376.9133 329.8976 619.5841
7225.1667 8039.1429 11,851.6429 8568.2857 10,258.2500 8260.4286 8514.2857 11801.6429
1343.64232 1475.64323 3230.94527 1515.92162 1696.10206 1595.44040 1659.46789 2249.25745
the KB class selection mechanism and heuristic dispatching strategies. The null hypothesis is that the mean values of all the scheduling strategies are equal. An overall significance level of 95% was selected for this analysis. Tables 13 and 14 summarize the results of the paired-sample t-test. In Table 13, the paired-sample t-test shows that the hypothesis is rejected at a significance level of 95% for all the control strategies. Therefore, the proposed two-level DT-based approach outperforms the one-level DT-based approaches and other singleheuristic dispatching strategies. However, in Table 14, when compared with the one-level DT-based approach, under an environment with five part mix ratios, the p-value for the SRPT dispatching rule is 0.078 under the TP performance criterion. The p-value for the SRPT dispatching rule is 0.083 under the NT performance criterion. Under an environment with six part mix ratios, the p-values for the SPT dispatching rule is 0.334 in the MCT performance criterion (the one-level DT-based approach is worse than the SPT dispatching rule). The p-value for the SPT dispatching rule is 0.059 under the NT performance criterion.
Under an environment with seven part mix ratios, the p-value for the SRPT dispatching rule is 0.064 under the TP performance criterion. The p-value for the SPT dispatching rule is 1.000 under the MCT performance criterion. Hence, from the results listed in Table 14, it can be concluded that no significant difference was found between the one-level DT-based RTS system and the best single dispatching strategy.
6. Discussion and future work In this study, we develop a KB class selection mechanism that uses the two-level DT-based approach to build an RTS system under a product mix variety environment. The following inferences can be summarized: For the task of building scheduling KB here, the building time of the proposed two-level DT-based approach is longer than that for the one-level DT-based approach. However, both the two-level DT-based and one-level DT-based approaches are almost equal in
ARTICLE IN PRESS Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
Table 13 A comparison of the paired-sample t-test between two-level DT approach and the other dispatching strategy Performance Criterion
p-Value One-level DT FIFO
SPT
SIO
SRPT
DS
EDD
Five part mix ratios variety environment TP 0.000 0.000 0.000 0.000 0.000 0.000 0.000 MCT 0.020 0.000 0.020 0.001 0.001 0.000 0.000 NT 0.000 0.000 0.000 0.000 0.000 0.000 0.000 Six part mix ratios variety environment TP 0.000 0.000 0.000 0.000 0.000 0.000 0.000 MCT 0.000 0.000 0.000 0.000 0.000 0.000 0.000 NT 0.000 0.000 0.000 0.000 0.000 0.000 0.000 Seven part mix ratios variety environment TP 0.000 0.000 0.000 0.000 0.000 0.000 0.000 MCT 0.000 0.000 0.000 0.000 0.000 0.000 0.000 NT 0.000 0.000 0.000 0.000 0.000 0.000 0.000
Table 14 A comparison of the paired-sample t-test between one -level DT approach and the other dispatching strategy Performance Criterion
p-Value FIFO
SPT
SIO
SRPT
DS
EDD
Five part mix ratios variety environment TP 0.000 0.003 MCT 0.000 0.000 NT 0.000 0.011
0.000 0.001 0.000
0.078 0.000 0.083
0.001 0.000 0.000
0.000 0.000 0.000
Six part mix ratios variety environment TP 0.000 0.005 MCT 0.000 0.334 NT 0.000 0.059
0.000 0.023 0.000
0.034 0.000 0.000
0.002 0.000 0.003
0.000 0.000 0.000
Seven part mix ratios variety environment TP 0.000 0.028 MCT 0.000 1.000 NT 0.000 0.016
0.000 0.001 0.000
0.064 0.000 0.045
0.000 0.001 0.008
0.000 0.000 0.000
terms of computational speed for online operating mode. They need about 550 min CPU time executing 400,000 simulation minutes for each one of run. The classical one-level DT-based RTS system has failed to be significantly better than single-heuristic dispatching rules. This conclusion can be attributed to the inability of the one-level DTbased RTS system to perform KB refinement during the online control stage. A possible explanation for this result is that in the product mix variety environment, the system states may reach values that have not been mapped during the off-line learning phase. A possible reason for this is that when using a single KB, in the DT pruning phase, some system patterns that are less likely to appear will be considered as noise patterns and therefore deleted. Hence, under these conditions, the one-level DT-based RTS system would probably make decisions on the basis of an inappropriate KB. The proposed two-level DT approach outperforms the onelevel DT-based approaches and other single-heuristic dispatching strategies. The results reveal that this approach yields better system performance than those obtained using the classical DTbased dynamic dispatching rule selection mechanism and heuristic individual dispatching rules under various performance criteria over a long period. A possible reason is that by using the clustering analysis techniques, the purity of the training samples
719
in the same KB class can be improved. Furthermore, the various developed KB classes can provide various product mix variety environment requirements for the RTS system. Hence, under these conditions, the two-level DT-based RTS system would make better decisions as compared to the one-level DT-based RTS system. From this study, the limitations of the proposed method and some potential research issues for improvements in future work can be enumerated as follows: This work does not discuss the various job inter-arrival time effects. In this study, the proposed approach expected to achieve about 90% system utilization as a prerequisite. Hence, the interarrival time of jobs is set 31 min by a preliminary simulation run. As documented in Baker’s study [34], system utilization can increase or decrease the number of tardiness job (i.e., NT criterion) in a given system. The various job inter-arrival times may influence the ability of the predictive accuracy in the two-level DT-based RTS system KB. The investigation of this idea by sensitive analysis would be a potential research issue for future research. Ishii and Talavage [35] research indicates that by multiple decision rules approach in FMS scheduling improves FMS for the selected performance criteria compared with conventional approach that uses a single dispatching rule for all machines. This study only proposes the design of one dynamic dispatching rule control mechanism for all the machines in the system for a given scheduling interval. However, in large complex manufacturing systems such as semiconductor wafer fabrication systems or liquid crystal display (LCD) systems, multiple decision rules need to be simultaneously determined (such as a wafer lot release control, selection of a wafer lot by a machine, selection wafer lot by a stocker, selection wafer lot by AGV on a monorail, and so on); each of these need to be assigned an effective rule among the candidate dispatching rules based on the current system status and performance measures [36]. With regard to this issue, if we use supervised machine learning algorithms (i.e., this study corresponding DT-based approach methods) to induce dynamic dispatching rule selection mechanisms from the training examples. The main disadvantage of this is that the classes to which the training examples are assigned need to be predefined. This process to generate the training examples becomes very timeconsuming as the number of dynamic dispatching rule selection mechanisms increases [18]. A possible solution is to incorporate a reinforcement learning mechanism [37] that can learn to select proper actions for achieving the goals through interactions with the environment and intelligent multi-agent mechanisms (such as recurrent neural networks) in the form of multi-controllers to simultaneously achieve a common production performance criterion over the entire manufacturing system. Hence, we would like to investigate this topic in the near feature.
Acknowledgment This work was supported in part by the National Science Council, ROC, under Contract no. NSC-96-2221-E-211-008. References [1] Martin MV. Design for variety: a methodology for developing product platform architectures. PhD thesis. Department of Mechanical Engineering, Stanford University, Stanford, 2000. [2] Cho H, Wysk RA. A robust adaptive scheduler for an intelligent workstation controller. Int J Prod Res 1993;31(4):771–89. [3] Cho H, Wysk RA. Intelligent workstation controller for computer-integrated manufacturing: problems and models. J Manuf Syst 1995;14(4):252–63. [4] Su CT, Shiue YR. Intelligent scheduling controller for shop floor control systems: a hybrid genetic algorithm/decision tree learning approach. Int J Prod Res 2003;41(12):2619–41.
ARTICLE IN PRESS 720
Y.-R. Shiue / Robotics and Computer-Integrated Manufacturing 25 (2009) 709–720
[5] Shiue YR, Guh RS. Learning-based multi-pass adaptive scheduling for a dynamic manufacturing cell environment. Robot Comput-Integrated Manuf 2006;22(3):203–16. [6] Chung SH, Haung CY. The design of rapid production planning mechanism for the product mix changing in a wafer fabrication. J Chin Inst Ind Eng 2003;20(2):153–68. [7] Arzi Y, Iaroslavitz L. Operating an FMC by a decision-tree-based adaptive production control system. Int J Prod Res 2000;38(3):675–97. [8] Priore P, De la Fuente D, Gomez A, Puente J. A review of machine learning in dynamic scheduling of flexible manufacturing systems. Artif Intell Eng Des Anal Manuf 2001;15(3):251–63. [9] Rumelhart DE, Hinton GE, Williams RJ. Learning internal representations by error propagation. Parallel distributed processing. Cambridge, MA: MIT press; 1986. [10] Arzi Y, Iaroslavitz L. Neural network-based adaptive production control system for flexible manufacturing cell under a random environment. IIE Trans 1999;31(3):217–30. ˜ o J. A comparison of machine[11] Priore P, De La Fuente D, Puente J, Parren learning algorithms for dynamic scheduling of flexible manufacturing systems. Eng Appl Artif Intell 2006;19(3):247–55. [12] Park SC, Raman N, Shaw MJ. Adaptive scheduling in dynamic flexible manufacturing systems: a dynamic rule selection approach. IEEE Trans Robot Automat 1997;13(4):486–502. [13] Quinlan JR. Induction of decision trees. Mach Learn 1986;1(1):81–106. [14] Quinlan JR. Simplifying decision trees. Int J Man–Mach Studies 1987;27(3): 221–34. [15] Quinlan JR. C4.5: programs for machine learning. San Manteo, CA: Morgan Kaufmann; 1993. [16] Goldberg DE. Genetic algorithms in search, optimization, and machine learning. Reading, MA: Addison-Wesley; 1989. [17] Chiu C, Yih Y. A learning-based methodology for dynamic scheduling in distributed manufacturing systems. Int J Prod Res 1995;33(11):3217–32. [18] Kim CO, Min HS, Yih Y. Integration of inductive learning and neural networks for multi-objective FMS scheduling. Int J Prod Res 1998;36(9):2497–509. [19] Chen CC, Yih Y, Wu YC. Auto-bias selection for learning-based scheduling systems. Int J Prod Res 1999;37(9):1987–2002. [20] Baker KR. Sequencing rules and due-date assignments in a job shop. Manage Sci 1984;30(9):1093–104.
[21] Montazeri M, Van Wassenhove LN. Analysis of scheduling rules for an FMS. Int J Prod Res 1990;28(4):785–802. [22] Chan FTS, Chan TS. Analysis of dynamic control strategies of an FMS under different scenarios. Robot Comput-Integrated Manuf 2004;20(5):423–37. [23] Wu SD, Wysk RA. An application of discrete-event simulation to on-line control and scheduling in flexible manufacturing. Int J Prod Res 1989;27(9):1603–23. [24] Sun Z, Bebis G, Miller R. Object detection using feature subset selection. Pattern Recognition 2004;37(11):2165–76. [25] Chan FTS, Chung SH, Chan PLY. Application of genetic algorithms with dominant genes in a distributed scheduling problem in flexible manufacturing systems. Int J Prod Res 2006;44(3):523–43. [26] Chan FTS, Chung SH, Chan PLY, Finke G, Tiwari MK. Solving distributed FMS scheduling problems subject to maintenance: genetic algorithms approach. Robot Comput-Integrated Manuf 2006;22(5–6):493–504. [27] Shiue YR. Data mining-based dynamic dispatching rule selection mechanism for shop floor control systems using a support vector machine approach. Int J Prod Res 2008. [28] Kohonen T. Self-Organizing Map. 3rd ed. New York, NY: Springer; 2001. [29] Vesanto J, Alhoniemi E. Clustering of the self-organizing map. IEEE Trans Neural Networks 2000;11(3):586–600. [30] Davies FD, Bouldin DW. A cluster separation measure. IEEE Trans Pattern Anal Mach Intell 1979;1(2):224–7. [31] eM-Plant. Objects manual version and reference manual 7.0. Stuttgart: Tecnomatix Technologies; 2003. [32] See5. See5: An informal tutorial, /http://www.rulequest.com/see5-win.htmlS. [33] MATLAB. Matlab neural network toolbox version 5 user’s guide. Natick, MA: The MathWorks Inc.; 2007. [34] Baker KR. Sequencing rules and due-date assignments in a job shop. Manage Sci 1984;30(9):1093–104. [35] Ishii N, Talavage JJ. A mixed dispatching rule approach in FMS scheduling. Int J Flexible Manuf Syst 1994;6(1):69–87. [36] Min HS, Yih Y. Development of a real-time multi-objective scheduler for a semiconductor fabrication system. Int J Prod Res 2003;41(10):2345–64. [37] Stutton RS, Barto GB. Reinforcement learning: an introduction. Cambridge, MA: MIT Press; 1998.