Evolutionary tuning of a fuzzy dispatching system

0 downloads 0 Views 111KB Size Report
combine the antecedents into premises, and ui k is the crisp output ... idle vehicle searches for the highest inflow demand station from the. PARTS_IN attribute.
632

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART B: CYBERNETICS, VOL. 30, NO. 4, AUGUST 2000

Evolutionary Tuning of a Fuzzy Dispatching System for Automated Guided Vehicles K. K. Tan, K. C. Tan, and K. Z. Tang

Abstract—This paper develops a novel genetic algorithm (GA) based methodology for optimal tuning of a reported fuzzy dispatching system for a fleet of automated guided vehicles in a flexible manufacturing environment. The reported dispatching rules are transformed into a continuously adaptive procedure to capitalize the on-line information available from a shop floor at all times. Simulation results obtained show that the GA is very powerful and effective to achieve optimal fuzzy dispatching rules for higher shop floor productivity and operational efficiency. Index Terms—Automated guided vehicles, evolutionary tuning, flexible scheduling, fuzzy logic.

I. INTRODUCTION In a recently published paper [1], a flexible vehicle dispatching system has been developed, using a self-adapting fuzzy prioritizing approach for a fleet of automated guided vehicles (AGVs) operating in a multiple workcenter manufacturing environment. The dispatching rules thus designed are able to strike a compromise between the satisfaction of multiple operational criteria. Flexibility is further incorporated by allowing key parameters of the fuzzy rules to be adaptive to the situation, through feedback of available information from the manufacturing activities. Compared with other conventional approaches [2]–[8], this fuzzy vehicle dispatching system has yielded higher shop floor productivity and operational efficiency. Following on the earlier work of [1], an important prerequisite for the success and effectiveness of the fuzzy approach toward vehicle dispatching is the proper selection of scaling factors for the various operation criteria. It is very difficult to obtain an optimal set of the scaling parameters using conventional analytical or numerical approaches, since the dispatching problem is NP-complete in nature. Moreover, the performance index may not be “well-behaved” in the multimodal, multidimensional search space. In [1], these parameters are determined manually through a tedious trial-and-error process based on the operator’s experiences. An effective search algorithm is thus necessary in optimizing these scaling parameters to achieve an automated dispatching system with optimal performance. The vehicle dispatching system of [1] can be further enhanced if the dispatching rules are allowed to alter on-line or change continuously to suit the working environment. Therefore, any tasks assigned to a vehicle may be adaptively changed according to the shop floor situation, even while the vehicle is en route to a different task arisen in an earlier task assignment. Under the scheme, the task that is most in need or with the highest priority will always be serviced immediately or assigned first in the waiting queue, and thus increase shop floor operation efficiency. This paper reports on the continuation work that strengthens the two above-mentioned weaknesses of the reported dispatching system in [1]. Section II provides a brief description of the fuzzy dispatching system. A novel tuning methodology based on a genetic algorithm (GA) to evolve a set of optimal scaling factors for various operation criteria of

the dispatching rules is also addressed in Section II. The procedure is further enhanced by allowing the dispatching decision to be continuously adaptive to manufacturing situations on the shop floor, such that no decision is considered final until the assigned task has been delivered. In Section III, a simulation study is carried out for the enhanced GA fuzzy dispatching system based on the same hypothetical facility as studied in [1]. The performance is compared with both the reported fuzzy dispatching system of [1] and the well-known approach of Egbelu [8]. Conclusions are drawn in Section IV. II. FUZZY VEHICLE DISPATCHING SYSTEM The key idea in the fuzzy dispatching approach is to associate each vehicle in the system with two attributes, PARTS_IN and PARTS_OUT. These two attributes are respectively related to the extent of demand-driven and source-driven needs of each of the workcenter with respect to the vehicle. These attributes are fuzzy variables (PARTS_IN, PARTS_OUT 2 [0; 1]) computed from a fuzzy operation on a combination of variables that are expected to influence the extent of the demand and source-driven needs of the workcenter. PARTS_IN relates to the incoming parts demand level of each workcenter and PARTS_OUT relates to the need to clear the outgoing parts. Decisions for material movement will be driven primarily by these attributes. A. Takagi and Sugeno’s Fuzzy Rules The two attributes, PARTS_IN and PARTS_OUT, are inferred from a Takagi and Sugeno type of fuzzy inference. Consider the following p rules governing the PARTS_IN attribute of the kth workcenter:

i If xik1 is F1i 1 1 1 xikm is Fkm

i=1 1 1 1 p

p i = 1, where F i are fuzzy sets, xi = (xi ; j k1 i=1T i . . . ; xkm ) 2 U are the input linguistic variables identified to affect the need of the parts inflow for rule i, is a fuzzy operator which combine the antecedents into premises, and uki is the crisp output for rule i. i is the scaling factor for rule i, reflecting the weight of the rule in determining the final outcome. The value of the PARTS_INk attribute is then evaluated as a weighted average of the ui s: with

p

wki uki

PARTS INk = 1 p

(1)

wki

1

where the weight wki implies the overall truth value of the premise of rule i for the input and is calculated as

wki =

m j =1

i

F

(xkj ):

Similarly, the q rules for the PARTS_OUT attribute may be formulated as

i is Gi If yki 1 is Gi1 1 1 1 ykn kn

;

then vki = i ;

i=1 1 1 1 q

q i = 1, where Gi are fuzzy sets, y i = (y i ; j k1 i=1 T i . . . ; ykn ) 2 V are the linguistic variables identified to affect the need of the parts outflow for rule i. vki is the crisp output for rule i may be the linguistic i, and i is the scaling factor. In this case, ykj variable WAITING_TIME and Gij may be the fuzzy set LONG. The with

Manuscript received November 22, 1998; revised August 19, 1999 and April 23, 2000. This paper was recommended by Associate Editor Y. Narahari. The authors are with the Department of Electrical Engineering, National University of Singapore, Singapore 119260. Publisher Item Identifier S 1083-4419(00)06726-1.

then uki = i ;

;

1083–4419/00$10.00 © 2000 IEEE

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART B: CYBERNETICS, VOL. 30, NO. 4, AUGUST 2000

value of the PARTS_OUTk attribute is then evaluated as a weighted average of the v i s:

633

With these attributes, the workcenters may be sorted in the order of their demand or source-driven needs. In a pull-based situation, an idle vehicle searches for the highest inflow demand station from the PARTS_IN attribute. This station may then be paired off with a station having the highest PARTS_OUT attribute, identified from a set of stations supplying the parts to the station in demand. The converse is true for a push-based system.

searching poorly understood and complex space for optimization in engineering applications [14]–[16]. Before this simulated evolution process begins, an initial population of multiple coded strings representing random scaling factors is first formed. Every such string is assigned a performance index calculated against the operational efficiency of the shop floor. At each generation of search, multiple candidates are evaluated and the search will be directed intelligently according to Darwin’s “survival of the fittest” principle. Then useful search information and coordinates are exchanged and altered for the next generation of candidate solutions. Supported by the Schema theory [16], such an evolutionary search process is proved to offer an exponentially reduced search time compared with an exhaustive search. For faster convergence and better accuracy, individuals in each generation of the GA are further fine-tuned by going through a local hill-climbing process. This GA with improved local exploration has been successfully applied to solve engineering system identification and modeling problems [17], [18]. The enhanced GA was programmed in Matlab and compiled into standalone executable C + + source codes using Matcom [19] to significantly reduce the program execution time. Here, integer coding with two-point crossover and tournament selection is employed for better convergence [20].

B. Push/Pull Switching

D. Continuously Adaptive Dispatching System

Instead of rigidly commissioning a push or a pull-based concept in the vehicle dispatching system, it is proposed to view each of these concepts as being suited to different operating conditions, and switch between them when crossing these different operating regions. Clearly, a mechanism is needed to trigger this switch between a pull and a pushbased environment, and has been formulated as follows. • Denote SCE(k) as the set of workcenters supplying to the input buffer of workcenter k , and DES(k) as the set of workcenters to which workcenter k supply parts. • The workcenters ku3 and kv3 are identified where

A production process is often continuous and dynamic in which its working conditions may change continuously, such as the number of idle vehicles that are available for delivery and picking up of loads, the number of loads at the outgoing queue of the workcenters, etc. Therefore, a dispatching decision that is considered optimal at some point in time may not remain optimal later. This has motivated the development of a continuously adaptive dispatching system to address the dynamical and sometimes unpredictable nature of the production process. The procedure is similar to that described in Section II-A and Section II-B except the computation of the workcenters’ attributes corresponding to each vehicle is done on a continuous basis, even when the vehicle is en route to pick up the load from the source workcenter following the initial decision. That is to say an idle vehicle or a vehicle that is en route to pick up a load will continuously inspect the situation of the shop floor. If the situation of the shop floor changes such that another workcenter is more urgently in need to be serviced, the vehicle will abort its decision to pick up the load from the workcenter (from an earlier dispatching decision) and service the newly identified one. To illustrate the continuously adaptive dispatching strategy, consider a vehicle x that is en route to pick up a load from a source workcenter kv and to deliver the load to a destination workcenter. Before picking up the load, another source workcenter kv 0 has become more urgently needed to be serviced as compared to the workcenter kv , based on the “priority” computation described in Section II-A and II-B. Under the adaptive dispatching strategy, any earlier dispatching decisions for the vehicle x will be aborted immediately, and the vehicle x will be en routed to service the needier workcenter kv 0 instead.

q PARTS OUTk =

1

wki vki q 1

(2)

wki

where the weight wki is calculated as

wki =

m j =1

i ): G (ykj

PARTS INku3 = max(PARTS INk ); SCE(ku3) 6

k k

PARTS OUTkv3 = max(PARTS OUTk ); DES(kv 3) 6

:

• Based on these attributes, the current state system toward a push or a pull operation may be determined. For example, a simple formulation may be to compute the following ratio: STRATEGY =

PARTS OUTkv3 : PARTS INku3 + PARTS OUTkv3

If STRATEGY > (where suitable values for may be in the range 0:6 < < 0:7, depending on the desired level of PULL dominance), a PUSH operation may be initiated, otherwise a PULL operation will be initiated. The PULL dominance is necessary for reasonably busy facilities where it has been shown [3] that a PULL strategy is more efficient in moving parts through the facility.

III. CASE STUDIES

C. Optimal Weight Selection Using An Enhanced GA As addressed in the Introduction, an important prerequisite for the success of the fuzzy dispatching system is the selection of the scaling factors ’s and ’s. Manual trial-and-error adjusting of these parameters can be very time consuming and the performance of the final dispatching system may be far from the best. For this, genetic algorithm that emulates the Darwinian–Wallace principle in natural selection and genetics is employed to obtain an optimal set of the scaling parameters. The GA evaluates performances of candidate solutions at multiple points simultaneously and has been found to be very effective in

A. Test Facility The simulation analysis is based on a hypothetical facility as given in Fig. 1. The facility operating data is provided in Table I. There are nine workcenters or departments, and a warehouse for the raw materials and finished products. B. Simulation Language The control simulation language Matlab was used for implementing the study. The language may be used for simulation of both continuous

634

Fig. 1.

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART B: CYBERNETICS, VOL. 30, NO. 4, AUGUST 2000

Layout of a test facility.

TABLE I FACILITY OPERATING DATA

The time taken for the processing of the load at each workcenter is assumed to be fixed and known as in Table I so that these variables can be directly computed. The four rules formulated for the computation of the PARTS_IN attribute for the k th workcenter are

LT IN is SHORT, THEN u IF STD IN is SHORT, THEN u IF SLT IN is SHORT, THEN u IF PC IN is LOW, THEN u IF

k

k

k

k

k

k

k

and discrete-time systems. In this case, it is applied to discrete event investigation, where the AGV guide path is modeled as a directed network consisting of nodes and arcs. Point locations in the network are uniquely identified by their Cartesian coordinates. Traffic conflicts at the load pickup/delivery points are explicitly modeled.

In this simulation, the input variables chosen for the computation of the PARTS_IN attributes are • length of time before incoming queue is empty, LT_IN; • shortest travel distance of vehicle to source workcenters, and to the workcenter concerned, STD_IN; • Shortest length of time before the outgoing queue of source workcenters is full, SLT_IN; • Number of parts completed already by the workstation, PC_IN.

:

k

PARTS_IN is then computed as in (1). The input variables chosen for the computation of the PARTS_OUT attributes are • shortest length of time before outgoing queue of workcenter is full, SLT_OUT; • shortest travel distance of vehicle to workcenter concerned, and to target workcenters, STD_OUT; • length of time before the incoming queue of destination workcenter is empty, LT_OUT; • number of parts completed already by the workstation, PC_OUT. Similarly, the four rules formulated for the computation of the PARTS_OUT attribute for the kth workcenter are

SLT OUT is SHORT, THEN v STD OUT is SHORT, THEN v IF LT OUT is SHORT, THEN v IF PC OUT is LOW, THEN v

IF IF

C. Computation of Attributes

= 1 = 2 = 3 = 4

k

k

k

k

k

k

k

k

= 5 = 6 = 7 = 8

:

PARTS_OUT is then computed as in (2). Here, 1 1 1 1 8 are the scaling parameters for the fuzzy dispatching system, which will be tuned by the enhanced GA described in Section II-C to achieve optimal shop floor productivity. The membership functions are made time varying according to the set of assigned tasks at any point in time. In our approach, a linear interpolation between the

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART B: CYBERNETICS, VOL. 30, NO. 4, AUGUST 2000

maximum and minimum values of the variables serves as the membership function. As an example, consider the following STD_IN variable

SHORT (STD INk ) =

635

TABLE II COMPARISON OF THE SCALING PARAMETERS

STD INk 0 min(STD IN) : IN) 0 min(STD IN)

max(STD

D. Rule Comparison The performance of the proposed GA fuzzy dispatching system was compared with the demand driven (DEMD) rules of Egbelu [8] and the fuzzy approach of Tan et al. [1]. The rule comparison was carried out under the following three different cases as studied in [1]. The details of the case studies are given below. Case I: Given an equal number of vehicles, the same facility scenario, and the same length of time or shift duration, how does the facility throughput compare between the two sets of rules? Throughput is defined as the total number of parts completed and removed from the facility shop floor during the shift. The following parameters were used for Case I analysis. 1) The facility operates a two-hour shift. 2) Three vehicles are in use. 3) Infinite number of loads were available for processing at time, t = 0. Case II: Given the same conditions as in Case I, how long does it take for the facility to produce a known number of parts under the two sets of rules? The analysis was done with three vehicles and 30 parts or unit loads to be produced and centers on the determination of the length of time it will take the facility to produce the 100 parts under each of the dispatching methodology. The facility operating duration is a measure of the rule’s ability to accelerate the unit loads through the facility. Case III: Given the same conditions as in Case I and a production target over a fixed time period, how many vehicles are required to meet the production target under the two sets of rules? The conditions for the analysis are as follows. 1) There are a fixed number (30) of unit loads to be produced. 2) The production of the fixed number of unit loads must be satisfied within the time interval specified (two hours). If all other factors remain the same, it seems that the number of vehicles required will be a function of the dispatching rule in force, since the rules act differently with the vehicles. E. Simulation Results The manually trial-and-error obtained scaling parameters of [1] are shown in the second row of Table II. For this approach, the scaling parameters are changed on a rather ad hoc basis, relying solely on the experience and the judgment of the operator. The operator has to decide on which scaling parameters to increase or decrease. For example, if the operator thinks that WAITING TIME is an important aspect in the dispatching decision, he should increase the value of the scaling parameter related to WAITING TIME. Finding the optimum set with this approach would be too time consuming to be possible. To achieve an automated weights selection and to improve the performance of the dispatching system, the enhanced GA described in Section II-D has been run for 50 generations with a population size of 50. The obtained weighting parameters at the end of the evolution are given in the third row of Table II. Note that the GA approach has changed the manual setting significantly. Based on the scaling factors in Table II, the performances of the various dispatching methods were compared and summarized in Table III. For all three cases under studied (i.e., Case I, Case II, and Case III), the fuzzy approach of Tan et al. [1] has outperformed the DEMD rules

TABLE III COMPARISONS OF RESULTS USING VARIOUS DISPATCHING METHODS

of Egbelu. The improvements (%) of the fuzzy approach [1] over the DEMD rules of Egbelu are as shown in the fourth column of Table III. Using the DEMD rules of Egbelu, a dispatching decision, which adopts a pull strategy, is employed to dispatch the AGVs. The fuzzy approach is able to provide better performance for the AGVs. It adopts a weighted decision, which satisfies several criteria and is adaptive to the dynamic situation of the environment. Here, the scaling factors for the fuzzy rules are tuned in a trial-and-error manner, assuming no prior information is available on the scheduling efficiency associated with the relative weightage of the scaling factors. The relative values of the scaling factors reflect the relative importance of the rules. By increasing the value of a scaling factor would increase the relative contribution of the rule (associated with that scaling factor) toward the final decision. Although a trial-and-error basis is used, the weights used in generating the results of Table III are the results of many rounds of iterations. If some prior knowledge/experience of the scheduling process is available, a good initial set of weights can be appropriately designed. Using the same three cases as before, the fuzzy approach of Tan et al. [1] (manually tuned) is compared with the same fuzzy approach tuned using GA. The improvements (%) of GA-tuned fuzzy approach over the manually tuned fuzzy approach of [1] are as shown in the sixth column of Table III. It is shown that by tuning the scaling parameters using a genetic and global search method, we are able to obtain a set of optimal scaling parameters that yields better performances. In this way, the fuzzy approach [1] is further strengthened after being tuned using GA. Thus, it can be seen that the developed GA fuzzy dispatching methodology has outperformed the fuzzy dispatching rules of [1] and DEMD dispatching rules of Egbelu for all the three cases under study. IV. CONCLUSIONS This paper develops a significantly improved version of an earlier reported fuzzy dispatching system for a fleet of automated guided vehicles operating in a flexible-manufacturing environment with multiple workcenters. To achieve higher shop floor operational efficiency, a novel GA based tuning methodology for optimal fuzzy dispatching rules has been developed. Dynamic and adaptive vehicle dispatching strategy has been implemented to fully utilize the on-line information available from the shop floor at all times. Simulation results obtained show that the GA fuzzy dispatching system has outperformed other conventional approaches for all the three different case studies.

636

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART B: CYBERNETICS, VOL. 30, NO. 4, AUGUST 2000

REFERENCES [1] K. K. Tan, T. H. Lee, and K. Z. Tang, “Flexible dispatching rules for automated guided vehicles based on a self-adapting fuzzy prioritizing system,” Int. J. Intell. Automat. Soft Comput., vol. 5, no. 4, pp. 327–336, 1999. [2] B. Grabot and L. Geneste, “Dispatching rules in scheduling,” Int. J. Prod. Res., vol. 32, pp. 903–915, 1994. [3] P. J. Egbelu and J. M. A. Tanchoco, “Characterization of automated guided vehicle dispatching rules,” Int. J. Prod. Res., vol. 22, pp. 359–374, 1984. [4] R. Russell and J. M. A. Tanchoco, “An evaluation of vehicle dispatching rules and their effect on shop performance,” Material Flow, vol. 1, pp. 271–280, 1984. [5] T. J. Hodgson, R. E. King, and S. K. Monteith, “Extracting heuristic control rules for an AGVS using Markov decision processes,” Belgian J. Oper. Res., vol. 27, pp. 3–17, 1987. [6] D. S. Yim and R. J. Linn, “Push and pull rules for dispatching automated guided vehicles in a flexible manufacturing system,” Int. J. Prod. Res., vol. 31, pp. 43–57, 1993. [7] J. T. Lin and P. K. Dgen, “An algorithm for routing control of a tandem automated guided vehicle system,” Int. J. Prod. Res., vol. 32, pp. 2735–2750, 1994. [8] P. J. Egbelu, “Pull versus push strategy for automated guided vehicle load movement in a batch manufacturing system,” J. Manuf. Syst., vol. 6, pp. 209–221, 1987. [9] G. B. Dantzig and J. H. Ramser, “The truck dispatching problem,” Manage. Sci., vol. 6, p. 80, 1956.

[10] L. Bodin and B. Golden, “Classification in vehicle routing and scheduling,” Networks, vol. 11, pp. 97–108, 1981. [11] L. Bodin, B. Golden, A. Assad, and M. Ball, “Routing of vehicles,” Comput. Oper. Res., vol. 10, pp. 79–115, 1983. [12] C. L. Chen, C. S. Lee, and C. D. McGillem, “Task assignment and load balancing of autonomous vehicles in a flexible manufacturing system,” IEEE J. Robot. Automat., vol. 3, pp. 659–671, 1987. [13] L. R. Foulds, Combinatorial Optimization. New York: SpringerVerlag, 1984. [14] D. Dasgupta and Z. Michalewicz, Evolutionary Algorithms in Engineering Applications. Berlin, Germany: Springer-Verlag, 1997. [15] A. M. S. Zalzala and P. J. Fleming, Genetic Algorithms in Engineering Systems, ser. IEE Control Engineering 55, U.K., 1998. [16] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning. Reading, MA: Addision-Wesley, 1989. [17] K. C. Tan and Y. Li, “Evolutionary system identification in the timedomain,” Proc. Inst. Mech. Eng., pt. I, vol. 211, no. 4, pp. 319–323, 1997. [18] K. C. Tan, Y. Li, P. J. Gawthrop, and A. Glidle, “Evolutionary grey-box modeling for practical systems,” in 2nd Institute of Electrical Engineers Int. Conf. on GA in Engineering Systems Innovations and Applications, Glasgow, U.K., 1997, pp. 369–375. [19] MathTools, Matcom V2.01- A Matlab to C++ Compiler: MathTools, 1996. [20] K. C. Tan, “Evolutionary methods for modeling and control of linear and nonlinear systems,” Ph.D. dissertation, Univ. Glasgow, Scotland, U.K., 1997.

Suggest Documents