An Agent-Based Factory Simulation Tool to Assess Energy Consumption in Decentralized Manufacturing Systems: Agent Types and their Tasks

Rising energy costs and volatile energy prices are motivation to integrate energy consumption with planning processes in manufacturing. Since centralized approaches for Manufacturing Control (MC) tend to ignore local energy related information, it is necessary to examine the potential of decentralized MC approaches. For this purpose, a factory simulation tool has been implemented. This paper presents the underlying assumptions behind the simulation tool and how the MC algorithms it uses are implemented using an agent-based simulation approach.


Introduction
The unsustainable environmental pollution caused by manufacturing companies is an ongoing subject of discussion. Along with increasingly more stringent environmental legislation that proves challenging for companies, the rising prices of energy and material resources provide incentives to increase resource and energy efficiency in manufacturing. Rising energy costs motivate enterprises to look for potential ways to reduce energy consumption. Moreover, prices become more volatile by the use of renewable energy sources. The short-term nature of these energy price fluctuations is particularly challenging for manufacturing companies [1].
So, not only the energy consumption itself but also the timing when energy is consumed becomes an issue to consider when scheduling the production program. Thus, it becomes progressively more interesting to integrate energy consumption with the process of production planning and control [2]. In particular, manufacturing control (MC) significantly influences the energy consumption of the production system. Manufacturing control -and therein, the subtask of machine selection -determines which products are produced on which machines at which time. It decides if a machine with high or low consumption is used, and if the process runs in times when energy prices are low or high. Therefore, manufacturing control and machine selection are the focus of the research project underlying this paper.
The most common approach of MC is the hierarchical centralized one. In the centralized approach, planning and control is done by a superordinated planning entity. Therefore, the centralized approach needs a complete data framework and assumes that the orders and capacity availability are predictable. Based on the data framework and the available capacity, the superordinated entity drafts the production plans and predetermines the production orders for the subordinated entities, which follow the plan and execute the orders. One advantage of the described procedure is that the MC system has a global view and considers the interdependencies between the production processes and, as a result, can develop a more comprehensive control over the production processes [3].
But this advantage is limited by the complexity of the system since the quality of the generated solutions is impaired if the systems are too complex [3]. Furthermore, if any changes occur, such as machine breakdowns, the centralized planning leads to high deviations. The information from the subordinated entities has to pass several hierarchical levels and hence is outdated as a result. The accuracy of the replanning is impaired by this information not being accurate and up-to-date [4]. Now, the integration of energy consumption vastly increases the complexity of the planning and control processes because of plentiful new interdependencies between the objectives [2]. Moreover, frequent replannings are required -even without machine breakdown -in order to benefit volatile energy prices.
To cope with the mentioned challenges, new planning methods are needed that include energy consumption of the different production processes. As existing approaches that include energy related information in the manufacturing control are based on centralized MC systems [5], they tend to ignore local energy related knowledge of single machines and processes (e.g., electricity consumption in different operating modes (operating, idle, start up) or detailed process parameters concerning energy consumption).
To examine the potential of decentralized MC approaches regarding energy consumption, a simulation tool has been implemented that is able to compare different MC approaches. This paper presents the underlying assumptions and considered MC algorithms of the simulation tool and how they are implemented using an agent-based simulation approach.

Basis of the Simulation Tool: Agent Types and their Tasks
Manufacturing control consists of several tasks that are shown in Fig. 1. The different tasks covered in the simulation tool are: order generation on the planning side and order release, capacity control, machine selection, and sequencing for process control. Concerning energy consumption and energy costs, the task of machine selection and the order scheduling (sequencing) is most interesting [2]. All these tasks influence both energy related objectives as well as the traditional performance indicators of a manufacturing system like work in process (WIP), throughput time, utilization, and schedule reliability.
The allocation of the mentioned tasks to the different types of agents implemented in the simulation tool is shown in Fig. 1. As can be seen, there are three types of agents representing the products, orders, and machines in the manufacturing system. They are described in detail below. To fulfil their tasks the agents need to communicate with other agents. This communication is also illustrated in Fig. 1 and described in the following.
Beyond the three mapped agent types, there is a central control agent (CCA) implemented. It is not shown in the figure, because it is acting alternatively to the other agents and can execute all named tasks according to traditional centralized algorithms.
1. Product-Agent (PA) For each product existing in the portfolio of the simulated enterprise, one Product-Agent is installed. This Product-Agent knows all the features of its product and is able to derive the necessary process steps for its production. Within manufacturing control the product agent is responsible for the order generation. Therefore it takes orders from external customers, fulfilling it with products from stock or generating production orders accordingly. Furthermore, it generates production orders in dependence of the level in stock according to an order point system. That is, as soon as the order point in stock is reached, an order is generated. Order point and lot size are given exogenously. The planned due date is determined by the Product-Agent. The generation of a production order is equal to the generation of an Order-Agent. After order generation, the Product-Agent waits for the Order-Agent to inform him of the completion of the order.

Order-Agent (OA)
The Order-Agent is equipped by the Product-Agent with all necessary information about the ordered product. It is responsible for a timely order execution. By backward scheduling, it calculates the start times for all process steps and consequently for the whole order. The first task to execute is the order release based on the calculated due date. Order release can be ahead of schedule in certain cases, e.g., if workload of the machines is low or energy is very cheap. Therefore, the Machine-Agents have to inform the Order-Agents about their workload. After order release the Order-Agent starts negotiations with the Machine-Agents about which machine will complete the next process step. For machine selection, several selection criteria are possible, for example production time and energy consumption can be used. The best machine is assigned for the next process step. For details about the negotiation procedure as well as discussion about different selection criteria, see [6]. Relying on the production progress, the Order-Agent constantly updates its production schedule and restarts negotiation if necessary.
3. Machine-Agent (MA) Each Machine-Agent represents one machine in the manufacturing system. Its tasks in manufacturing control are order sequencing and capacity control. The order sequencing is done after negotiating with the Order-Agents for the orders that have been assigned to the machine. In a simple case, sequencing is done using the FIFO-Rule, but other sequencing rules are also implemented. If time variable energy prices are considered, changing the sequence of orders according to an energy related sequencing rule might be powerful tool to reduce energy costs. Therefore a priority indicator in accordance with [7] is defined that considers energy

176
Physical Modeling for Virtual Manufacturing Systems and Processes consumption as well as energy prices for the regarded production process. The priority indicators have to be communicated between Order-Agents and Machine-Agents. For capacity control, the Machine-Agents can observe their individual level of utilization or the overall level of utilization by communication with other Machine-Agents. If the machine is not used frequently it can simply shut down until it is awakened by another machine that has a high level of utilization. So, energy consumption in idle time is reduced. Moreover, the Machine-Agents are able to offer overtime hours in cases of high utilization.
4. Central Control-Agent (CCA) Supplementary to the mentioned agent types, a Central-Control-Agent is implemented. This agent is able to take over all mentioned tasks in manufacturing control. Therefore it needs constant update from all active agents -Product-, Order-, and Machine-Agents -in the system. The CCA enables a comparison between centralized and decentralized control approaches.

Implementation of the Simulation Tool: Base Scenario
To demonstrate the advantages of decentralized approaches for manufacturing control the simulation tool is based on a multi-agent approach that is integrated in a discrete event simulation (DES) environment. While the agent based approach is able to simulate communication and interaction processes within the manufacturing control procedure, the DES environment is needed to simulate physical production processes, especially the manufacturing times. For the DES the simulation software PlantSimulation from Siemens was used. This software is domain specific for manufacturing and therefore has several useful tools predefined, e.g., to simulate probabilities for machine failure. The implemented manufacturing system shows a job shop system consisting of ten machines representing five different types of machines tools. The machines are able to do three different types of operation classified by their maximal material removal rate (slow, medium, fast); each type of machine tool is able to do another combination of operations. For each machine energy consumption during production and idle state is known (for details see [6]). Within the manufacturing system, three different types of products are produced. The work plans of the products vary between three and five operation steps taking up to 260 minutes for processing. Each operation is associated with a given average material removal rate corresponding with the maximal removal rate of the operations. Furthermore, a timetable of customer request is given as an exogenous input for the simulation runs.
In the base scenario, the product agent directly passes the requests from customers to the manufacturing system by creating an order agent. Customer requests are spawned in an imbalanced manner with varying quantity per day. The product agent also takes the due date requested from the customer. Thus, an unforeseeable production plan that renders the production more complex is generated.
The order agent immediately starts negotiation with the machine agents about the first operation in its work plan. It therefore requests in a call for proposal the possible finishing time as well as the energy consumption for this operation from all machines. The machines propose accordingly the requested data if they are able to do the operation. Within the finishing time they incorporate the production time of the operation but also waiting time because of other orders already booked on the machine and set-up times. Sleeping machines also respond to the call for proposal; they include further time for restart.
The order agents prioritizes the proposals according to the predefined selection criteria. In the base scenario a weighted index from finishing time and energy consumption is used. Therefore, the data from the machines have to be normalized. Once the order is booked on a machine, it is transported to the in buffer of the machine. Transportation time is not yet considered. The machine is able to work the booked operations in order of their arrival (first in -first out) or to prefer the order with smallest residual slack time.
To reduce the energy consumption due to stand by energy in idle times the machine agents are able to change from idle state to sleeping state with no energy consumption at all. This is done in times of little utilization; i.e. if no operation is currently produced and no upcoming operation is booked on the machine. The waking up of the machine takes several minutes and is triggered by an order agent trying to book its operation on the machine. Therefore, the machine continues responding to the calls of the order agents. If all working machines have longer waiting times than the wake up time, the sleeping machine will win the call for proposal and wake up. On the left, the number and type of orders processed on each machine are presented. On the right, the utilization of the machines during the simulation run is shown. It can be seen that machines from one type have very similar processing pattern if they are highly utilized (see M51 -M54). In contrast the machines of type 1 (M11 -M13) show different behaviors due to the implemented sleeping state. They are less utilized and therefore shut down and wake up in an uncoordinated manner leading to unbalanced utilization within one machine type.

Conclusion
The presented definition of agents and their tasks shows that well-known algorithms for manufacturing control can be used for decentralized manufacturing control. Simple algorithms can be used as is (e.g. order generation with order point system, sequencing with FIFO-rule) because only little information is needed. However, the expected difference between centralized and decentralized process control is fairly small. More advanced algorithms (e.g., conwip -order release) need to be adjusted in order to be employed in decentralized control because the necessary data is not available to the agents. The agents only know their individual conditions (e.g., urgency of order release) and thus have to request further information if needed. Therefore, communication protocols for data exchange between agents and decision rules for the agents have to be implemented. The Central-Control-Agent, in contrast, has information on all agents and thus can compare all orders and all machines as needed in centralized MC algorithms.
Implementing energy related decision criteria necessitates increasingly more complex data from the agents. If two or more criteria are combined for whatever decision to be taken, they have to be made comparable e.g., by normalization. Normalization is based on data either from all agents or from history. So, agents have to be equipped with memory and the quality of a control algorithm becomes time dependent.
In order to place the agents in a realistic environment, the agent based control algorithms were integrated into a discrete event simulation environment that enables the simulation of e.g., processing times. The results of the base scenario show the functionality of the system and have to be analyzed quantitatively.

178
Physical Modeling for Virtual Manufacturing Systems and Processes