An Approach for the Integration of a Scheduling System and a Multi-Agent Manufacturing Execution System. Towards a Collaborative Framework.

An Approach for the Integration of a Scheduling System and a Multi-Agent Manufacturing Execution System. Towards a Collaborative Framework.

Proceedings of the 14th IFAC Symposium on Information Control Problems in Manufacturing Bucharest, Romania, May 23-25, 2012 An Approach for the Integ...

412KB Sizes 1 Downloads 54 Views

Proceedings of the 14th IFAC Symposium on Information Control Problems in Manufacturing Bucharest, Romania, May 23-25, 2012

An Approach for the Integration of a Scheduling System and a Multi-Agent Manufacturing Execution System. Towards a Collaborative Framework. Juan M. Novas*, Rudi Bahtiar**, Jan Van Belle**, Paul Valckenaers** *INTEC (UNL-CONICET), Güemes 3450, S3000GLN Santa Fe, Argentina [email protected] ** Department of Mechanical Engineering, KU Leuven, Celestijnenlaan 300B, 3001 Heverlee, Belgium [email protected] [email protected] [email protected] Abstract: The paper presents advances in the development of a collaborative framework between a centralized scheduling system (SS) and a decentralized manufacturing execution system (MES). The SS is based on constraint programming (CP) technology, while the MES implements the PROSA reference architecture and applies the delegate multi-agent system pattern (D-MAS). The CP scheduling system generates a good quality global schedule, which in turn is executed by the MES. The framework is intended to develop capabilities to collaborate at runtime, exploiting the benefits of each specialized technology. Moreover, this work aims to show the impact on the execution process performance when an unexpected disruptive event occurs and turns the on-going schedule - as it was originally provided by the SS - into an infeasible one. The experimental results have shown a trade-off between efficiency and stability measures. Keywords: Multi-agent systems, Manufacturing systems, Scheduling execution, Constraint satisfaction problems. 

a scheduling support system is available, the execution process relies on human RSHUDWRUV¶ expertise.

1. INTRODUCTION Manufacturing execution systems (MESs) have been widely examined to tackle manufacturing production related problems (Leitão and Restivo, 2006; Valckenaers et al., 2007a; Leitão and Restivo, 2008). MES systems have been employed to manage not only the correct and autonomously execution of a plan of activities or schedule, but also to efficiently respond to production changes and the occurrence of unexpected disturbances (Hadeli et al., 2006). Among the main benefits that characterize manufacturing execution systems are adaptability and flexibility when facing changes on the shop floor, as well as efficiency when using the available resources. But even when the manufacturing execution systems provide robustness and reconfigurability, they suffer of decision myopia; i.e. MESs are not capable neither of planning far ahead nor optimizing a whole system for a middle/long-term horizon. These features are achieved more efficiently by centralized systems, such as planning and scheduling systems (SSs). Nevertheless, most of the theoretical research done during the last two decades in the scheduling domain is of limited use in practice (Henning, 2009). One of the main drawbacks of SSs is their lack of reactive capabilities and the inability to provide detailed solutions in a reasonable computational time. Currently, in most industries, even when 978-3-902661-98-2/12/$20.00 © 2012 IFAC

As the standard ANSI/ISA±95 (2000) states, both SSs and MESs functions are part of the Manufacturing Operation and Control Level at the enterprise functional hierarchy. Nevertheless, to efficiently address the scheduling execution problem found in real manufacturing domains, the integration between SSs and MESs is a challenge that needs to be faced. The synchronization of execution with scheduling functions enables companies to efficiently manage resources and time. Exploiting the strengths of both technologies allows the correct management of manufacturing operations and to perform plant control activities (Harjunkoski et al., 2008). Several recent reports highlight this research topic, as Aytug et al. (2005), Valckenaers et al. (2007b) and Framinan and Ruiz (2010). Furthermore, since executing a schedule means a continuous revision of the on-going agenda, system nervousness is an inherent feature that cannot be avoided. Schedule alterations are produced every time the agenda is updated and may affect other related plans. Therefore, schedule stability is also a very important issue to take into consideration. Thus, research efforts should be oriented towards avoiding a time-expensive full-scale revision of in-progress plans while they are been executed; i.e. allowing only limited and accurate changes in the disrupted schedule, seeking for a smooth plant operation

728

10.3182/20120523-3-RO-2023.00156

INCOM 2012, May 23-25, 2012 Bucharest, Romania

(Rangsaritratsamee, 2004; Kopanos et al., 2008; Novas and Henning, 2010).

³endBeforeStart(Taski,Taski')´ ensures that Taski must be finished before Taski' starts its execution.

This work is aimed at addressing the SS-MES collaboration. The paper presents achieved advances in the development of an automatic collaboration framework between a scheduling system formulated by means of constraint programming (CP) technology and a manufacturing execution system based on the PROSA reference architecture (Van Brussel et al., 1998; Valckenaers et al., 2006). Since this work is also concerned about stability during execution, several experiments were run in order to observe how different MES configurations affect a set of efficiency and stability performance measures. After introducing the SS-MES framework and the technologies involved in the next section, Section 3 discusses the results corresponding to the test examples. Finally, Section 4 highlights the conclusions and future work.

2.2 The Manufacturing Execution System

2. SS-MES COLLABORATIVE FRAMEWORK The proposed interaction framework addresses the automatic cooperation between two completely different approaches: a centralized scheduling system and a decentralized manufacturing execution system. This paper shows how the integration of both systems can be achieved, since they are based on an explicit domain knowledge representation. After introducing the main characteristics of the two systems, the interaction process between them is explained. 2.1 The Scheduling System The main objective of the scheduling system is to generate good quality schedules for a certain period of time (scheduling horizon), in a low CPU time, optimizing a given performance measure and satisfying all the modeled constraints. The SS has been developed using constraint programming technology, which comprises computational implementations of algorithms to tackle constraint satisfaction problems. CP is an excellent tool to tackle short-term scheduling problems, as proved by many publications in different domains (e.g. Baptiste et al., 2005; El Kayat et al., 2006; Zeballos et al., 2011), and its use provides several important advantages. For instance, the facility to easily and incrementally add, delete or modify constraints, the potential to find optimal or good quality suboptimal solutions in low computational times, and the ability to detect infeasible problem specifications immediately. Also, it allows formulating domain-based strategies to speed up the searching process. CP algorithms have been embedded in several systems such as the IBM ILOG environment (ILOG OPL 6.3, 2010). In our proposal, the new ILOG version (2010) was selected for the SS formulations development. This is the latest version, which is certainly more suitable than the older version (ILOG OPL 3.7.1, 2005) in order to be integrated with another system (i.e. the MES). The used CP modeling language is highly declarative. Tasks are formulated as interval variables, and constrains among them are expressively declared. For instance, the construct

The decentralized MES is an implementation of the PROSA reference architecture, which stands for Product-ResourceOrder-Staff Architecture, and makes use of the delegate multi-agent system (D-MAS) pattern to accomplish its objectives (Valckenaers et al., 2007b; Verstraete et al., 2007). PROSA is composed of three types of basic agents: product, resource and order agents, and also allows the interaction with staff agents. This last type of agents can assist the basic agents with expert knowledge. During execution time, the order agents create two types of lightweight agents called ant agents or simply ants: exploring and intention ants. Exploring ants virtually execute the production stages, inquiring the resources about their availabilities and capabilities. In turn, the resource agents answer the ants based on their self-knowledge. The exploring ants stochastically search different possible solutions and report their solutions to the order agent. The order agent then chooses, according to the performance measure it tries to optimize, the best solution. In the current implementation, the order agents attempt to reduce the average lead time. Next, the chosen solution (called the intention) is communicated to the resources by the intention ants, which virtually execute this solution and reserve the necessary capacity at the corresponding resource agents. This feature allows generating short-term forecasts denoting resource loads and order sequences. From the point of view of the MES, and based on PROSA, the scheduling system can be considered as a staff agent. Agents in the MES will follow the advice given by the staff agent and will deviate from the original schedule only if they find a significant better solution. The level of guidance adopted by the MES agents, i.e. the percentage of exploring ants that are going to follow the original schedule, has to be determined on beforehand. Further details on PROSA are out of the scope of this work. A comprehensive description has been presented by Van Brussel et al. (1998). More information about the ant exploration and intention mechanisms, as well as schedule execution, can be found in Valckenaers et al. (2007a, b) and Verstrate et al. (2007). 2.3 SS-MES Interaction Process On the one hand, the centralized scheduling system is in charge of generating a good quality global solution for a given set of orders that have to be processed on the shop floor. The system ensures that the main constraints related with the domain are satisfied (temporal, assignment and topological restrictions). On the other hand, the decentralized execution system processes all tasks involved in the problem, including not only the manufacturing activities already scheduled by the SS, but also other relevant activities as transport and storage tasks.

729

INCOM 2012, May 23-25, 2012 Bucharest, Romania

In order to collaborate, these two systems need to exchange data. While the SS feeds the MES with a good schedule to be executed, the MES returns - when demanded - the updated on-going agenda information. This data interchange is represented in Fig. 1.

Fig.1. Schematic representation of the data exchange between SS and MES. The MES executes the schedule - based on a certain predefined level of guidance - as it is originally delivered by the SS. The execution is carried out until a disruptive event occurs. Since these events have been characterized beforehand (unit breakdowns, job cancelletions, etc.), their identification is not an MES responsibility. At this point, due to the fact that the current agenda is no longer feasible to be performed (because of alterations caused by the unexpected situation), the MES can profit from new advice from the SS in order to continue the execution. This communication process has to be as fast as possible. A consequence of a long SS-MES interaction time is that the new schedule could be outdated (and no longer feasible to execute on the shop floor) when it arrives. Therefore, the decision has to be taken in real-time; i.e. the effective collaboration between SS and MES has to be on-line. However, due to the communication protocols and the solving time employed by the SS, a certain delay in MES reception of an updated schedule is likely to occur. This has to be taken into account when the MES captures the current status of the system. Indeed, based on the fact that the MES is capable of knowing the near future system state, the status capture requires being set within a defined future time window (Fig. 2).

scheduling problem. At this moment, the execution system sends to the SS the current status data of the manufacturing environment; e.g. in-progress and not yet executed tasks, their temporal properties, machine states, etc. The CP scheduling system receives the call to reschedule and takes the on-going agenda status information as input data. When the SS finds a new solution, it is sent to the MES to continue the execution of the remaining in-progress orders and not yet processed orders. The new solution is automatically taken as the new guidance for the MES agents, and the execution continues until a new call is made or all orders are completed. The data of the new schedule is post-processed and sent to the MES as an XML file, which is conform the input data structure managed by the MES. In the reverse way, the MES sends the status data as an XML file, which in turn is preprocessed and translated into the data format used by the SS system. This SS-MES interaction process is represented in Fig. 3.

Fig. 3. Collaborative framework between the constraint programming SS and MES. The MES system needs not only the schedule to execute, but also the engineering data concerning the addressed production process. The engineering data refers to information regarding physical entities, their properties and connections, as well as alternative manufacturing routes of the parts to be processed. Since this is knowledge about the shop floor, it depends on the considered domain. We refer to this as static data, to differentiate from the dynamic information represented by a schedule of tasks, which temporal properties can be updated during execution, e.g. the original start time of a task can be modified. By means of this approach, the system is able to maintain persistent information, such as machines capabilities, processing times, etc., in a separate way from the dynamic data, such as updated predictive schedules. 3. EXPERIMENTAL RESULTS

Fig. 2. Time window for effective SS-MES communication. The time window has to be at least equal to the minimal time interval that the SS requires to generate a new solution. As the SS is a staff agent, at a rescheduling time point (when a disturbance occurs), the MES calls the SS to solve a new

The factory instance considered in this work is a flow shop manufacturing cell consisting of three processing stages, where every part (job) follows the same manufacturing route. There are a total of seven workstations, two alternative machines in the first stage, three in the second and two in the

730

INCOM 2012, May 23-25, 2012 Bucharest, Romania

final stage. A single automated transportation device is in charge of carrying in-progress parts among workstations and between machines and an intermediate buffer. A case study involving 5 orders and 3 operations per order was employed to test the approach.

input schedule provided by the SS as a guideline, and how the executed schedule is affected by the level of guidance. The second scenario is intended to simulate the execution of a given schedule when facing unexpected events, and to observe the impact on global efficiency (time-related) and stability (nervousness-related) measures. In all cases, for each level of guidance being adopted by the MES, 10 simulation runs are performed, from which average, maximum and minimum values of each performance measure are calculated. 3.1 Scenario 1

Fig. 4. Manufacturing plant configuration. A constraint programming model to address this flow shop manufacturing cell was developed using ILOG OPL Environment (ILOG, 2010). This model deals with the input/output transport activities and the storage and manufacturing tasks. It is worth mentioning that, until now, the transport was not modeled in such an explicit way in previous approaches. Formerly, in order to take into account transport times, a slack time between processing activities was added in the predictive solution. In the current approach, however, transport tasks are executed by an automated device and the agenda of this resource is also part of the scheduling problem. The various temporal and capacity constraints among the different activities are taken into account by the CP model. Furthermore, in order to be consistent with the objective pursued by the MES agents; i.e. the order agents try to optimize their lead time, the minimization of total lead time was defined as the objective function of the CP model. Moreover, as it is allowed by CP technology, a domainspecific search strategy was used to balance the load of alternative machines in each stage. Further details about the CP modeling are out of the scope of this work. Constraint programming-based scheduling formulations can be found, for instance, in Novas and Henning (2010, 2011). In order to model the flow shop for the MES, a testbed modeling tool developed by Valckenaers et al. (2007b) was used. All engineering information needed to execute a schedule can be defined using this tool. The modeled entities consist of machines, orders, products, an intermediate buffer, and a device to transport the parts between machines or between machines and the intermediate buffer. The properties related with the entities, such as connections among machines, alternative manufacturing routes and processing times are also described. The data is stored as an XML file. At this point, no information about timing and sequencing of tasks is embedded, but only the previously described static data. With the aim of testing the approach, two scenarios are defined. In the first scenario, no disruptive events happen. The aim is to observe how the MES works when using an

First, a good quality schedule for the flow shop problem instance is determined by means of the SS (in a low computational time). This schedule is taken as an input for the MES. Then, the MES starts to execute the activities while trying to follow the global schedule provided by the SS. With the aim of observing the MES behavior, simulations with a level of guidance of 50% and 100% were run. During execution, the order agents follow the sequence and machine assignments given by the original schedule, but they do not necessarily respect the temporal properties of the tasks. Usually, because the MES takes care of transport and storage activities, the start times of the manufacturing tasks change. For this scenario, different performance measures were considered: makespan (Mk), total lead time (TLT), and median lead time (MLT). A comparison between the performance measure values before execution (obtained by the SS) and the average values achieved after execution is made. The obtained results show that, the 50% guided mode reaches smaller average deviations from the performance measure of the original schedule than the 100% guided mode, for all considered measures (see Table 1). Table 1. Results obtained for scenario 1

Input schedule (SS) Avg. dev. from input (50%) Avg. dev. from input (100%)

Performance measures Mk TLT MLT 3110 12940 2680 916 1695 318 1378 4029 1002

In addition, independently of the level of guidance, the original machine assignments were maintained in all solved instances. As a consequence, there were no resource changes or equipment instability under smooth processing conditions. By means of scenario 2, it is shown that this MES behavior is no longer true when considering disruptions. 3.2 Scenario 2 In this scenario, real disruptive events that alter the on-going agenda are taken into consideration. The aim of the scenario is to observe the impact on stability when varying the level of guidance. Similarly to scenario 1, the execution of the schedule obtained with the SS is simulated, but in this case, an unexpected event disrupts the agenda.

731

INCOM 2012, May 23-25, 2012 Bucharest, Romania

Machine breakdowns are among the most common unforeseen events in plants. Thus, a workstation failure was modeled as the disruption that takes place during the schedule execution. It is assumed that an unexpected breakdown event occurs on one of the machines at the third stage. In this test, in addition to the metrics used in scenario 1, two additional performance measures were used to compare the results: i) an efficiency-related metric, normalized average makespan (NAM) and ii) a stability-related measure, normalized equipment stability (NES). NAM is calculated by expression (1), where AMK stands for average makespan, IMK means input schedule makespan, and H is the schedule horizon. In the NES expression (2), Y = 1 when the machine assignment of a task has changed and 0 otherwise, and card(Tasks) is the cardinality of the set of manufacturing tasks involved in the execution. For both measures holds that the closer their value is to 1, the better is the performance.

Makespan (avg deviation) 3000

2500

2000

1500

1000 0

10

20

30

40

50

60

70

80

90

100

Fig.5. Average deviation from the makespan of the original schedule for different levels of guidance. Total lead time (avg deviation) 7000

NAM

NES

1  ( AM K  IM K H  IM K ).

1  ( ¦ Y card (Tasks )).

(1)

6000 5000

(2)

4000

Tasks

The results show that the efficiency measures follow a negative (increasing) trend when the level of guidance increases. This behavior is depicted by Fig. 5 and 6, which show the average (from 10 simulation runs) deviation from the performance measure of the original schedule for the different levels of guidance, for Mk and TLT, respectively. Regarding the normalized metrics (see Fig. 7), the obtained results show that the NAM values also follow a decreasing tendency when the level of guidance increases. If breakdowns happen on machines, in order to maintain the original planned sequence of tasks (input schedule), activities that cannot longer be processed on out-of-service units have to wait until those machines are recovered for production. This behavior was expected, since every time the guidance percentage is increased, order agents try harder to follow the sequence of tasks defined in the original schedule. In this way, giving less freedom to order agents by setting a high level of guidance has a direct impact on the whole schedule execution efficiency-related metrics. On the other hand, the NES values are higher when the level of guidance is higher. For high values of guidance, high equipment stability values are reached. When the guidance is 100%, the best equipment stability values and worst makespan values are obtained. All tasks involved have to be executed on the original assigned machine. On the other extreme, without any guidance, the executed schedules have the best values for makespan and the worst values for equipment stability. In this case, tasks have more freedom to change their original assignment, and switch when they find better solutions. However, the makespan values are always worse than the makespan value of the original schedule, as this schedule does not consider that a machine is out-of-service for a certain period. This can be seen in Fig. 7, where the best NAM is only 0.60 (NAM is 1 if the makespan equals the makespan of the original schedule).

3000 2000 1000 0 0

10

20

30

40

50

60

70

80

90

100

Fig. 6. Average deviation of the total lead time of the original schedule for different levels of guidance. 1.00

0.80

0.60

NAM NES

0.40

0.20

0.00 0

20

40

60

80

100

Fig. 7. NAM and NES values for different levels of guidance. The results also show that, when maintaining the original machine allocation of tasks as defined by the original schedule (by means of setting a high level of guidance), the efficiency-related performance measures decrease. Even when the order agents try to optimize their individual lead time, a high level of guidance ensures they will strongly try to maintain their machines assignment (equipment stability). 4. REMARKS AND FUTURE WORK Advances in a collaborative framework between a constraintbased scheduling system and a multi-agent manufacturing execution system are presented. This framework allows a CP scheduling system i) to feed the MES system with a good quality predictive schedule to guide its execution, and ii) to

732

INCOM 2012, May 23-25, 2012 Bucharest, Romania

capture the current status of the on-going schedule. Both approaches rely on a generic representation of domain knowledge; MES relies on PROSA architecture, while the scheduling system is based on an explicit scheduling domain representation. This feature allows a consistent and robust integration of both systems. In this way, implementations in different (manufacturing) domains can be addressed in future work. Furthermore, a trade-off between efficiency and stability measures when varying the level of guidance was shown. The automatic communication between the MES and CP solver libraries is already achieved, as well as the matching of data between both systems. Currently, it is possible to capture the domain status information at a certain time point during the schedule execution horizon. In future work, the CP SS will be informed with these status data each time an unexpected event happens. This knowledge is expected to have an important impact on the reactive scheduling process, since it will allow taking better decisions at real-time. In addition, the shop-floor information can be used and exploited by higher level systems (e.g. ERP systems). New challenges that need to be addressed have arisen from this work, as: i) new unpredicted events that cause deviations from the original schedule can be studied, ii) new simulations to analyze to which extent is better to leave the MES manage the execution by itself can be done, iii) coordination and negotiation mechanisms can be developed to figure out which system would be responsible for an updating activity, iv) the on-line SS-MES interaction, as well as comparisons on efficiency and stability performance between autonomously MES executions and SS-MES rescheduling can be tackled. ACKNOWLEDGMENTS The authors wish to acknowledge the financial support received from CONICET (Overseas Short-stays Program for Postdoctoral Fellows-Res.DNº 2622) and from the Erasmus Mundus ECW EADIC Program (ID 62886 / 72882). REFERENCES ANSI/ISA±95.00.01±2000: Enterprise-Control System Integration Part 1: Models and Terminology. Aytug, H., Lawley, M., McKay, K., Mohan, S., and Uzsoy, R., (2005). Executing production schedules in the face of uncertainties: A review and some future directions. Europ. J. Oper. Res., 161, 86-110. Baptiste, P., Le Pape, C., and Nuijten, W. (2005). Constrained-based scheduling: Applying constraint programming to scheduling problems. New York: Springer. El Khayat, G., Langevin, A., and Riopel, D. (2006). Integrated production and material handling scheduling using mathematical programming and constraint programming. Europ. J. Oper. Res., 175, 1818±1832. Framinan, J.M. and Ruiz, R. (2010). Architecture of manufacturing scheduling systems: Literature review and an integrated proposal. Europ. J. Oper. Res, 205, 237246.

Hadeli, Valckenaers P., Verstraete P., Saint Germain B., and Van Brussel H. (2006). A study of system nervousness in multi-agent manufacturing control system, S.A. Brueckner et al. (Eds.): ESOA 2005, LNAI 3910, 232± 243, Springer. Harjunkoski, I., Nyström, R., and Horch, A. (2008). Integration of scheduling and control ± Theory or practice? Comput. Chem. Eng., 33, 1909-1918. Henning, G. (2009). Production scheduling in the process industries: Current trends, emerging challenges and opportunities, Rita de Brito Alves et al.(Eds.). Comp. Aided Chem. Eng., 27 Part A, 23-28. Elsevier Science. ILOG: IBM ILOG OPL Studio 6.3, 2010. ILOG: ILOG OPL Studio 3.7.1, 2005. Kopanos, G. M., Capón-García, E., Espuña, A., and Puigjaner, L. (2008). Costs for rescheduling actions: a critical issue for reducing the gap between scheduling theory and practice. Ind. Eng. Chem. Res., 47, 87858795. Leitão, P. and Restivo, F. (2006). ADACOR: A holonic architecture for agile and adaptive manufacturing control. Comput. Ind., 57, 121-130. Leitão, P. and Restivo, F. (2008). A holonic approach to dynamic manufacturing scheduling. Rob. Comput. Integr. Manuf., 24, 625-634. Novas, J.M. and Henning, P.G. (2010). Reactive scheduling framework based on domain knowledge and constraint programming. Comput. Chem. Eng., 34, 2129-2148. Novas, J.M. and Henning, P.G. (2012). A comprehensive constraint programming approach for the rolling horizonbased scheduling of automated wet-etch stations, Juan M. Novas, Gabriela P. Henning., Comput. Chem. Eng., In Press, DOI: 10.1016/j.compchemeng.2012.01.005. Rangsaritratsamee, R., Ferrell, Jr. W.G., and Kurz, M.B. (2004). Dynamic rescheduling that simultaneously considers efficiency and stability. Comput. Ind. Eng., 46, 1±15. Valckenaers, P., Hadeli, K., Saint Germain, B., Verstraete, P., Van Brussel, H. (2006). Emergent short-term forecasting through ant colony engineering in coordination and control systems. Adv. Eng. Inf., 20 (3), 261-278. Valckenaers, P., Sauter, J., Sierra, C., and Rodriguez, J. (2007a). Applications and environments for multi-agent systems. Auton. Ag. M-Ag. Syst., 14, 61±85. Valckenaers, P., Van Brussel, H., Verstraete, P., Saint Germain, B., and Hadeli (2007b). Schedule execution in autonomic manufacturing execution systems. J. Manuf. Syst., 26, 75-84. Van Brussel, H., Wyns J., Valckenaers P., Verstraete P., Valckenaers P., Bongaerts L., and Peeters P. (1998). Reference architecture for holonic manufacturing systems: PROSA. Comput. Ind., 37, 255. Verstraete, P., Saint Germain, B., Valckenaers, P., Van Brussel, H., Van Belle, J., and Hadeli. (2007). Engineering manufacturing control systems using PROSA and a delegate MAS. Int. J. Agent-Oriented Soft. Eng., 2, 62-89. Zeballos, L.J., Novas, J.M., and Henning, P.G. (2011). A CP formulation for scheduling multiproduct multistage batch plants. Comput. Chem. Eng., 35, 2973-2989.

733