Towards Cloud Factory Simulation 第 十 八 屆 決 策 分 析 研 討 會 Toly Chen Department of Industrial Engineering and Systems Management, Feng Chia University *tolychen@ms37.hinet.net Abstract An important and practical application of cloud manufacturing is factory simulation as a cloud simulation (FSaaCS). In this paper, several issues related to the implementation of FSaaCS are discussed. Among them, load balancing is considered as a critical issue. To address this issue, the estimation of a simulation workload is a crucial step. After summarizing factors that are critical to the estimation of a simulation workload, several methods are applied to estimate a simulation load, in terms of the required simulation time, from these factors. An experiment using real data is carried out to compare the performances of these methods. Keywords: cloud manufacturing, cloud computing; simulation, workload, estimation, fuzzy, collaborative 1 Introduction Cloud manufacturing (CMfg) is a new-generation service-oriented networked manufacturing model that provides distributed users centralized managed manufacturing resources, ability, and services (Li et al., 2010; Xu, 2012). Manufacturing resources include suppliers, subcontractors, raw materials, machines, production lines, factories, operators, supervisors, tools, information systems, and the logistics network. Manufacturing capability includes capacity (especially for high-volume manufacturing), efficiency, productivity, scalability, interoperability, product quality, process capability, low-cost manufacturing, competitiveness, and sustainability. Manufacturing services include product design, research, and development, capacity planning, facility layout, production planning, processing and rework, machine repair, periodic maintenance, process control, quality control, costing, and simulation. Although CMfg is an extension of cloud computing in the manufacturing sector, their concepts are different in many ways. For example, compared with information services, manufacturing services usually have longer life cycles, and are more 1
dependent on the interaction between users and services. In addition, manufacturing services are also real-time, collaborative, data-intensive, complicated, highly-specialized, and expertise-based in nature (Fan et al., 2004; Chen, 2014). These features differentiate manufacturing services from information services. In addition, not all of the aforementioned manufacturing resources, ability, or services can be placed in a pool and shared easily. It is therefore questionable whether the concepts and techniques of cloud computing can be directly applied to CMfg. Resource service composition is an important technique to cloud computing. However, integration of manufacturing services is a very complex and challenging task (Yang et al., 2005). Among manufacturing services, software applications such as customer relationship management (CRM) and enterprise resource planning (ERP) are more common cloud services, i.e. software application as a cloud service (SAaaCS). Remote equipment diagnosis and repair as a cloud service (ED&RaaCS) has also been adopted in some industries, such as the machine tools industry (Chen, 2014). Recently, some CMfg applications based on smartphones have been developed, such as accessing the data on a dispatching system using a smart phone to keep track of the progress of an order. However, to manufacturers, timely, accurate, and consistent information of distributed manufacturing resources are still lacking (Zhang et al., 2014). Nevertheless, CMfg is expected to provide more added value to customer. For SMEs, the cooperation with big manufacturers can be more efficient by cloud computing. Many management resources in line with international norms, such as Restriction of Hazardous Substances Directive (RoHS), carbon footprint, energy consumption standard, and zero-day maintenance, can thus be shared with big manufacturers (DIGITIMES, 2011). This study is focused on an important application of CMfg factory simulation as a cloud service (FSaaCS). In some factories, such as a wafer fabrication factory, there are hundreds of machines and each job goes through hundreds of steps. Simulating such a factory is a laborious and time-consuming task. Nevertheless, to get a better problem-solving and system analysis capability, establishing an efficient and effective factory simulation system is still necessary (Zott, 2003). Factory simulation comprises the following steps: collecting factory and job data, model building, model validation and verification, running and replication, performance reporting, and scenario comparison (optimization). Most of them can be placed on clouds, and the factory is only responsible for collecting factory and job data, and planning scenarios that will be compared. To a factory, the benefits include shortened simulation time and reduced investment in purchasing and maintaining simulation software and hardware. However, FSaaCS has rarely been discussed in past studies. Chen (2014) proposed a four-layer pyramid that describes the different levels of FSaaCS applications as: 2
(1) Replicating the same simulation on several clouds. (2) Considering different possible values for uncertain/stochastic parameters (3) Evaluating the performances of different scheduling methods. (4) Partitioning the factory simulation model, so that different parts are simulated on different simulation clouds simultaneously. In this paper, first a literature review is performed. Then, several issues related to the implementation of FSaaCS are discussed. Among them, estimating the workload of a simulation model is a crucial issue and is investigated in detail. To this end, we summarize some decision factors that are critical to the estimation of a simulation workload and can be easily extracted from a simulation model. 2 Literature Review According to Li et al. (2012), the basic technologies of FSaaCS include cloud computing, distributed simulation, Internet of things, high-performance computing, service-oriented, and intelligent science. Parallel or distributed scheduling of a manufacturing system laid the theoretical foundation of FSaaCS. Dekel and Sahni (1983) proposed a parallel scheduling algorithm based on the single instruction stream and multiple data stream (SIMD) model for the parallel machine scheduling problem with preemption to minimize the minimum completion time. With parallel processing, the complexity decreases from O(log n) to O(1). Duffie and Prabhu (1994) scheduled the jobs of a heterarchical manufacturing system, in which all processing units use the same simulation software, and read in the same real-time data of the manufacturing system. However, parallel or distributed scheduling of a manufacturing system is different from scheduling a parallel or distributed manufacturing system that has been extensively investigated (e.g. Ramamritham et al., 1989; Jie et al., 2003). The service-oriented architecture (SOA) is one of the most common architectures for building software applications that uses services available in a network (Yang et al., 2005). A parallel or distributed scheduling system can be built based on SOA with Web services. Li et al. (2009) discussed the background, connotation, features, and infrastructure of a FAaaCS platform. The experimental results showed that a cloud simulation platform can improve the capability of simulation grid in sharing, collaborating, fault-tolerating, and migrating multi-granularity resources. Li et al. (2012) built a cloud simulation system that enables the cooperation of multiple users. However, if simulation clouds are equipped with different existing simulation systems, the conversion of a factory model between these simulation systems will be an extremely complicated task that was not discussed in their study. 3
3 Issues Related to FSaaCS Implementation 3.1 Issue 1: Model conversion among various simulation systems The simulation systems used by different clouds may not be the same. As a result, a factory simulation model needs to be converted between different formats to be compatible with these simulation systems in the follow ways: (1) If a user uploads a factory model in a specific format, the model can be first converted into a neutral format (such as.xml) by the central coordinator, then be passed to simulation clouds. In this case, simulation clouds need to convert the neutralized model into the formats of their simulation systems by themselves. (2) The central coordinator converts the uploaded model into the required formats for simulation clouds. (3) A user can upload a neutral model onto the central coordinator directly, or input the model through the interface provided by the central coordinator. However, converting the format of a simulation model is not an easy task because of the following reasons: (1) The terminologies used by different simulation systems are not the same. (2) The logics used by different simulation systems to build simulation models are not the same. In simulation systems like Plant Simulation, the features of objected-orient analysis (OOA) are obvious. In such OOA simulation systems, the release plan, processing, and simulation setting are all defined by adding the related objects. It is also straightforward to insert a pre-defined object/sub-system into a system. In addition, editing an object/sub-system automatically propagates the changes to all of its instances. In other simulation systems like ProModel, the processing of a job is inputted as a sequence, characteristic of a structured analysis. (3) This problem is even more difficult to resolve if the simulation model contains program codes written by a user. Programming is not equally emphasized in various simulation systems. Most simulation systems (such as Arena and ProModel) attempt to avoid the use of program codes, while some (such as Plant Simulation) rely on programming to achieve a sophisticated control. In addition, the programming language used is usually specific to the simulation system. (4) Visualization is an important part to most existing simulation systems for model building and communication purposes. However, it is not a necessary task for a simulation cloud, since it will not face the user directly. For this reason, the facility layout of a simulation model will be removed before the model is passed to each 4
simulation cloud. For these reasons, the conversion between two model formats is not just a mapping between different entities/objects, attributes, or settings. In many cases the simulation logic should be re-analyzed. 3.2 Issue 2: Load balancing for simulation clouds Chen (2014) mentioned there are four levels in applying CMfg: replicating the same simulation on several clouds, considering different possible values for uncertain/stochastic parameters, evaluating the performances of different production control methods, and partitioning the factory simulation model. If the same simulation is to be replicated on several clouds, load balancing becomes an important task, for which the following policies can be adopted to determine the number of replications that will be run on each simulation cloud: (1) The equally division policy: The required replications are equally divided, so that each simulation cloud runs approximately the same number of replications. (2) The proportional-to-efficiency policy: More replications are run on a simulation cloud with higher efficiency. To this end, the central coordinator needs to estimate the speed (i.e. the average time for completing a single simulation run) of each simulation cloud. The number of replications run on a simulation cloud is proportional to the speed of the simulation cloud. (3) The simultaneous stopping policy: All simulation clouds keep replicating the simulation until receiving a stopping signal. During this process, the central coordinator keeps recording the number of replications that have been run on each simulation cloud, and sends a stopping signal to all simulation clouds if the required number of replications have been completed. As a parallel processing system, the efficiency of an FSaaCS system is determined by the simulation cloud with the lowest efficiency (i.e. the longest simulation time). After simulation, the simulation results and output reports are transmitted from each simulation cloud to the central coordinator to be aggregated. A perquisite to load balancing is to estimate the workload of a simulation model, usually in terms of the required simulation time. 3.3 Issue 3: Estimating the workload of a simulation model To estimate the workload of a simulation model, we need data that are not generated after running the simulation, but already exist in the simulation model. In 5
addition, such data should be easy to retrieve without further processing. Some decision factors satisfying these requirements are listed below: (1) The file size (FS): The most efficient way is to consider the file size of a simulation model. A large simulation model has a large file size, and usually takes a lot of time to run. It should be noted that most of the existing simulation software do not actually embed the pictures of equipment that are usually very large files into the simulation model. Therefore, considering the file size is still a viable way and will not be distorted by the sizes of the pictures used. (2) The number of job types (njt): Jobs in a factory include raw materials, subassemblies, and finished goods. More job types mean more jobs and subsequently more operations that require lengthier time. (3) The frequency, usually in terms of the inter-arrival time (IA), of releasing jobs into a factory: A higher frequency of releasing jobs into a factory results in more operations on each machine along the processing route, and therefore, a longer simulation time. The release plan is a basic part to most of the existing simulation systems, so such data are handy. However, some operations are performed on sub-assemblies, rather on raw materials, that do not appear in the release plan but are formed during the manufacturing process. For this reason, the conversion rates between different job types are important. (4) The conversion rates from a job type to another job type ([cij]), according to the bill-of-materials (BOM): For example, if two raw materials A are combined to form a sub-assembly B, then the conversion rate from A to B is 0.5. Assuming the inter-arrival time of raw material A is 0.3 hours, then sub-assembly B can be considered as being virtually released into the factory one every 0.5 * 0.3 = 0.15 hours. The conversion rate from job type i to job type j is indicated with cij, i, j = 1 ~ njt; cii = 1. (5) The number of operations on a job type ([noi]). (6) The total number of operations (tno), i.e. the number of operations on all job types. Therefore, tno no. all i i (7) The planning horizon (PH): The planning horizon is the most decisive factor to the simulation time. However, it should be compared with the frequency of job releases. The first several periods of the planning horizon is usually reserved as the warmup period during which the collected data are not involved in calculating the statistics. The number of replications (NR).A perquisite to load balancing is to estimate the workload of a simulation model, usually in terms of the required simulation time. 6
4 Conclusions and Future Research Directions Cloud manufacturing has been considered as highly potential to further enhancing the sustainable development of a manufacturer. First, the operating and managing costs can be lowered down because it is no longer necessary to buy and maintain some equipment, software, or systems that can be rented or used instead on a pay-per-use basis. In addition, through the mediation of cloud service providers, a factory can gain advanced planning and analysis capability from various service clouds. An important and practical application of CMfg is FSaaCS. In this paper, several issues related to the implementation of FSaaCS are discussed. Among them, load balancing is considered as a critical issue. To address this issue, the estimation of a simulation workload is a crucial step and is investigated in detail. We first summarize some decision factors that are critical to the estimation of a simulation workload and can be easily extracted from a simulation model. Then, several methods are applied to estimate a simulation load, in terms of the required simulation time, from these decision factors. An experiment using real data is carried out to compare the performances of these methods. Acknowledgements This work was supported by Ministry of Science and Technology, Taiwan, under Grant MOST 103-2221-E-035-073-MY3. References T. Chen (2009) A fuzzy-neural knowledge-based system for job completion time prediction and internal due date assignment in a wafer fabrication plant. International Journal of Systems Science, 40(8), 889-902. T. Chen (2014) Strengthening the competitiveness and sustainability of a semiconductor manufacturer with cloud manufacturing. Sustainability, 6, 251-268. E. Dekel, and S. Sahni (1983) Parallel scheduling algorithms. Operations Research, 31(1), 24-49. DIGITIMES (2011) http://www.digitimes.com.tw/tw/dt/n/shwnws.asp?cnlid=13&cat=150&id=00002 48971_P2GLC9ME6Z348T21ATY94&ct=1 N. A. Duffie, and V. V. Prabhu (1994) Real-time distributed scheduling of heterarchical 7
manufacturing systems. Journal of Manufacturing Systems, 13(2), 94-107. Y. Fan, D. Zhao, L. Zhang, S. Huang, and B. Liu (2004) Manufacturing grid: Needs, concept and architecture. Lecture Notes in Computer Sciences, 3032, 653-656. H. Z. Jie, A. Y. C. Nee, Y. H. Fuh, and Y. F. Zhang (2003) A modified genetic algorithm for distributed scheduling problems. Journal of Intelligent Manufacturing, 14, 351-362. B. Li, X. Chai, B. Hou, T. Li, Y. B. Zhang, H. Y. Yu, J. Han, Y. Di, J. Huang, C. Song, Z. Tang, P. Wang, G. Shi, and X. Wang (2009) Networked modeling & simulation platform based on concept of cloud computing-cloud simulation platform. Journal of System Simulation, 21(17), 5292-5299. B. H. Li, X. Chai, L. Zhang, B. Hou, T. Y. Lin, C. Yang, Y. Xiao, C. Xing, Z. Zhang, and T. Li (2012) New advances of the research on cloud simulation. Advanced Methods, Techniques, and Applications in Modeling and Simulation, 144-163. K. Ramamritham, J. A. Stankovic, and W. Zhao (1989) Distributed Scheduling of Tasks with Deadlines and Resource Requirements. IEEE Transactions on Computers, 38(8), 1110-1123. X. Xu (2012) From cloud computing to cloud manufacturing. Robotics and Computer-Integrated Manufacturing, 28, 75-86. Z. Yang, R. Gay, C. Miao, and J.-B. Zhang (2005) Automating integration of manufacturing systems and services: a semantic Web services approach. 31st Annual Conference of IEEE Industrial Electronics Society, pp. 2255-2260. Y. Zhang, W. Wang, S. Liu, and G. Xie (2014) Real-time shop-floor production performance analysis method for the Internet of manufacturing things. Advances in Mechanical Engineering, 2014, article ID 270749, 1-10. C. Zott (2003) Dynamic capabilities and the emergence of intraindustry differential firm performance: insights from a simulation study. Strategic Management Journal, 24(2), 97-125. 作 者 簡 介 : 陳 亭 志, 國 立 清 華 大 學 工 業 工 程 與 管 理 博 士, 逢 甲 大 學 工 業 工 程 與 系 統 管 理 學 系 教 授 暨 逢 甲 大 學 特 聘 教 授, 研 究 領 域 包 括 情 境 智 能 競 爭 力 分 析 雲 端 製 造 軟 式 運 算 應 用 8