Research Article | Open Access

# Modeling and Verification of Reconfigurable Printing System Based on Process Algebra

**Academic Editor:**Jean Jacques Loiseau

#### Abstract

With the print production process as the research object in this paper, the intelligent-context-reconfigurable printing system model is analyzed using process algebra (PA). First, combined with the printing production process, the overall framework of the system model, based on the agent-resource-worker (ARW) component model, is proposed. Abstract and formal verification of the system model are then carried out, and the verification process of the complex calibration process is discussed. Finally, the security and progress attributes of the model are validated by mCRL2. The results show that the system model has good reliability.

#### 1. Introduction

As customer demand becomes increasingly varied, demand for product customization and pressure for the rapid introduction of new products are increasing [1]. Traditional manufacturing systems, such as dedicated and flexible systems, cannot provide an adequate response at a reasonable cost and have significant shortcomings in meeting these requirements [2]. Flexible manufacturing systems can convert between different production variants, but they introduce issues of limited flexibility, low productivity, and low return on investment (ROI) [3, 4]. Koren, a professor who proposed the concept of reconfigurable manufacturing systems for the first time in 1999, thought that reconfigurable manufacturing could accurately provide the required functionality [5]. In particular, the modular structure of reconfigurable manufacturing systems enables them to shorten the time to design, build, and redesign a system [6]. Therefore, it is widely thought that reconfigurable manufacturing systems (RMSs) will be very common in the future [7].

Reconfigurability is an engineering technology that can help realize rapid, cost-effective responses to market and product changes [8]. Systematic and continuous design and acceleration are the cornerstones of the RMS concept and will appear often throughout its life cycle [6]. Much research has been done on problems related to RMSs [9–16]. The reconfigurability of a printing system is mainly reflected in its ability to change production paths based on product requirements and related environmental changes. Here, “environment” mainly refers to the status of the printing press, material reserves, changes in material interaction and temperature, and humidity in the workshop. This article discusses the design of a contextualized intelligent printing system that can intelligently, dynamically, and quickly configure and organize all kinds of manufacturing systems based on different printed product features.

Process algebra (PA) is a formal modeling tool for describing complex systems, and its purpose is to provide a method for studying concurrency and interaction [17]. Process algebra describes the model in algebraic form and defines a complete set of syntax and semantics for the modeled system [18]. The algebraic method based on calculus is now used more in the field of software reusability with fewer applications in RMS [19]. Wei Yaya et al. first attempted to use process algebra to describe a workflow, which provided feasibility verification for manufacturing systems [20]. In addition to using the semantics defined in process algebra and computing rules to verify the viability of a system, the software can be used to validate the reliability of a system [21].

The second section of this article introduces operators related to process algebra. The third section discusses the printing system and explains its modeling ideas and workflow. Section 4 makes use of process algebra for more complex parts of a system for reasoning and verification, and it is further verified by mCRL2. Section 5 summarizes this article.

#### 2. The Introduction of Process Algebra

Process algebra is a high-level algebraic description language that supports the combined description of concurrency, distributed systems and their formal proof of form [17]. It describes the models algebraically, combining subsystems with operators to hide system-unconscious activities of hidden operators, as internal activities and defining a complete set of syntax and semantics for the modeled system. A complete description of process algebra can be found in several references [17, 18, 21–26]. Process Algebra is defined as follows:

① Assume a finite, nonempty set A of (atomic) actions, representing indivisible behavior (such as reading or sending a datum). Each atomic action is a constant that can execute itself, after which it terminates successfully:

② “+” is called alternative composition. The closed term represents the process that executes either or .

③ “” is called sequential composition. The closed term represents the process that executes first and then .

④ “” is called a merge. This binary operator executes the two process terms in its arguments in parallel. That is, can choose to execute an initial transition of s, an initial transition of t, or communication between s and t.

⑤ “” is called a communication merge. The operation executes as initial transition a communication between initial transitions of the process terms s and t and then behaves as the standard merge operator .

⑥ “” is called a left merge. The left merge* s ╙ t *takes its initial transition from the process term

*s*and then behaves as the merge .

⑦ “” is called deadlock, and it displays no behavior. The communication function *γ* is extended by allowing the communication of two atomic actions and results in *δ*, that is, . This extension of *γ* enables us to express that two actions do not communicate by defining .

⑧ “” is the unary encapsulation operator. The can execute all transitions of t whose labels are not in H.

⑨ “” is a unary abstraction operator, which enables us to abstract away from the internal computation steps of an implementation. For example, expresses that in , all of the labels of transitions of t that are in I are renamed into .

#### 3. Reconfigurable Printing System Model

Reconfigurable manufacturing systems were first designed to quickly change hardware and software component structures to allow quick adjustment of the production capacity and function of a family of parts due to sudden changes in production requirements [9].

The basic process of a printing system is as follows.

Prepress stage: process the graphic original to obtain production data that controls the printing and postpress stages.

Printing stage: select the appropriate printing process according to production data generated by prepress to transfer the ink, varnish, and other materials to the substrate material surface (such as paper, fabric, or leather) after physical processing and getting the sheet.

Postpress stage: apply finishing processes (such as light, hot stamping, die-cutting, and indentation) to the sheet to produce the desired product. After assembly-adaptive processing (such as cutting and folding) the final product is assembled after parts processing (such as stickers, plastic backing, and binding).

In the modeling process, the agent-resource-worker (ARW) component is taken as the basic model, and the functions, attributes, and behavior features of the component are abstracted to build agent, resource, and worker models. An agent model describes the type of agent, structure, and realization of the function. A resource model is a collection of various job definition format (JDF) resources. The worker model is an integrated model of the agent and resource models, embodying the final behavior of the ARW component model, as shown in Figure 1.

Worker models will form a new worker model in different composite ways, with the main composition shown in Figure 2, where is sequential compounding,* b* is feedback compounding,* c* is collaborative compounding,* d* is compounding selection, and through are three-component compounds, which can be abstracted as one component and one bicomponent mechanism compound. This can be extended to multiple-component compound mechanisms. In modeling, agents are categorized as executive agents and decision agents. The difference between them is mainly that a decision agent has a context-aware function, which can make decisions according to changes in the environment. An executive-class agent can independently perform its own set of functions. That is, when the agent receives data, it can process it accordingly and then send the processed data to the next agent.

As shown in Figure 3, each execution-class agent is named by its function. For example, page making means that the agent is making a page. The workflow simulated by this model is as follows. In the prepress, the first processing of the original is carried out according to the needs of the customer, and the processed file is proofed. It is one step in the printing process. The next step is proofreading. The proofreading is mainly to verify whether the sample is qualified. If the sample is qualified, then the plate is made. Otherwise, the proofing is done again, and the maximum number of samples is In the printing stage, according to the relevant data obtained in the prepress stage, the decision agent chooses the appropriate printing press and judges whether the materials and workshop environment are suitable for printing and drying. (In the model, is used to represent the key parts of the intelligent printing system in the context of the different printing presses, which is not described extensively in this article.) In the postpress phase, the decision agent selects the appropriate postprinting procedure according to the preprinted data, and the corresponding agent is executed until the finished product is obtained.

#### 4. Reasoning and Verification

In the reconfigurable printing system model of Figure 3, the real line box is mainly aimed at the characteristics of the bounded retransmission communication protocol for the large-data-volume transmission to meet the needs of repeated proofing in the printing process, control the number of samples, and reduce the cost. Due to space limitations, this paper focuses on the verification of the implementation. The rest of the process is executed sequentially, which can be verified according to the algebraic operations in the second chapter.

##### 4.1. Model Abstraction

The model is abstracted as shown in Figure 4, where A_{1}, K, and A_{2} are the execution agents, C_{1} and C_{2} are counters, and the number of proofs is controlled. The algebraic expression uses the following data parameters and functions: ranges over a finite data set , and ranges over , while ranges over , where* max* is used to limit the number of transmissions. If , the maximum number of transmissions is three. Finally,* ack* denotes an acknowledgement message, denotes count-out, and is a data-error message.

In this model, A_{1}, K, and A_{2} are three agents in the system. The algebraic expression of A_{1} isThe algebraic expression of K isThe algebraic expression of A_{2} is

In state , A_{1} reads data from channel 1, after which it proceeds to the state:

In state , data is processed by A_{1}, with bits and attached to the data. Then the message is sent by channel 2:

In state , A_{1} waits for either an acknowledgement or a data-error message via channel 5. Suppose A_{1} receives an acknowledgement from A_{2}. Then, A_{1} will proceed to state . If A_{1} receives a data-error message from channel 5 and the number is less than the maximum, it proceeds to state . If, then A_{1} receives a count-out message from channel 6, and sends a count-out by channel 7. Then, the system issues a warning and implements a manual intervention, which is the* STOP* in the algebraic expression:

In state , K receives data from channel 2, then it judges the received data and determines whether it is qualified. Then K turns to state :

In state , if the data are qualified, K sends a data message via channel 3; otherwise, it sends data-error information through channel 3 if . If , it sends by channel 6 and turns to state *:*

In the state , A_{2} waits for the If it receives such a message, then it proceeds to state , in which case it will send the data via channel 4, send an acknowledgement message via channel 5, and turn to state . If it receives a data-error message from channel 3, it will proceed to state to send this message by channel 5 and directly enter the state. It may also receive information from channel 7. And then it will enter the state and wait for retransmission:

##### 4.2. Verification Process

Suppose the communication between all agents is successfully implemented in this model. The following equations can be derived from , commutativity of the merge, and . The proof is as follows.

*Step 1. *Define the communication:

*Step 2. *Define encapsulation and abstraction operators:The expression for the entire system isA_{1} receives the information and reads the data to carry on proofing, in which Proofing is one of the steps in the printing process. And the state of the whole system isA_{1} then sends data by channel 2 to K, and K receives it:K is for proofreading. Proofreading means checking whether the samples are qualified.

① If sample is qualified, then K will send to A_{2} and A_{2} will receive it.After A_{2} receives, it will be sent by channel 4, while A_{1} will send a confirmation message.② If the sample is not qualified and the number of times is less than* max*, then K sends to A_{2}, and A_{2} sends feedback information to A_{1}. A_{1} receives it and reprocesses the original information and .A sends the reprocessed data to K. The data is checked by K.If the max sample is passed, thenIf the proof fails, the system will stop runningThe state transition of is the same as that of . According to the above verification process, the process chart of the model can be drawn as follows, where 1-5 is the state transition when , nd 5-1 is the state transition when

After application of the abstraction operator , communication actions over the internal channels 2, 3, 5, 6, and 7 are renamed into , after which most of these actions can be removed using axiom .

##### 4.3. Verification with mCRL2

The tools used for process algebra testing mainly include FDR2, the Caesar-Aldebaran toolset (CADP), mCRL2, and LTSA. The mCRL2 has strong interactivity and can intuitively display the migration of each state in the system. Therefore, mCRL2 is used to validate the model in Section 4.1. The mCRL2 is a formal specification language with an associated toolset [26] that supports linearization, simulation, state-space exploration, and generation and has tools to optimize and analyze specifications. Moreover, state spaces can be manipulated, visualized, and analyzed. With this language, users can specify the behavior of a distributed system and analyze it using automated techniques [27].

The process of verification with mCRL2 is as follows.

*Step 3. *Write the system process using the mCRL2 language.

*Step 4. *Convert mCRL2 to linear process specification (LPS). Various operating tools can be used to modify or simplify LPS.

*Step 5. *Convert LPS to a label transition system (LTS) or state space. This error can then be analyzed using the LTS.

Following the above steps, the mcrl2graph tool is used to analyze the generated lts file. The resulting label-migration diagram is shown in Figure 6. And the mCRL2 specification of the process is shown in Appendix B. This tool is used to step through the state-transition process and generate a state-transition diagram, as shown below. Throughout the simulation, and represent the additional bits, an , which means that the maximum number of transmissions is two. The state-transition diagram obtained by simulation using mCRL2 is consistent with the system state-migration process of inference in Section 4.2. Among them, the green state point indicates the initial state of the system. At the same time, the repeated transmission part (between state 2 and 3 and state 6 and 7) in Figure 5 is expanded in detail and represented by state point without any color.

#### 5. Conclusions

Based on process algebra, this paper constructs a reconfigurable printing system model using an ARW component model. By abstracting and verifying the system model using process algebra, the inference results show that the system can fulfill the expected functions. Using mCRL2’s security and schedule attributes on the system model, its execution is in line with the actual printing process and has good reliability.

#### Appendix

#### A.

*(**1) Axioms for BPA* *A*1: ; * A*2: ; * A*3: ; * A*4: ; * A*5:

*(**2) Axioms for PAP* *M1*: * ╙*;

*LM2*: ;

*LM3*: ;

*LM4*: ;

*CM*5: ;

*CM*6: ;

*CM*7: ;

*CM*8: ;

*CM*9: ;

*CM*10: .

*(**3) Axioms for ACP* *A*6: ; *A*7: ; *D*1: ; *D*2: ; *D*3: ; *D*4: ; *D*5: ; *LM*11: _{╙}; *CM*12: ; *CM*13: .

*(**4) Recursive Definition and Specification Principles* *RDP* ; *RSP* .

*(**5) Axioms for Projection Operators* *PR*1: ; *PR*2: ; *PR*3: ; *PR*4: ; *PR*5: .

*(**6) Approximation Induction Principle* .

*(**7) Axioms for the Silent Step* *B*1: ; *B*2: .

*(**8) Axioms for ACP* *TI*1: ; *TI*2: ; *TI*3: ; *TI*4: ; *TI*5: .

*(**9) Cluster Fair Abstraction Rule* *CFAR If ** is in a cluster for ** with exits* .

*(**10) Standard Concurrency and Handshaking* *SC*1: _{╙}_{╙}_{╙}; *SC*2: _{╙}; *SC*3: ; *SC*4: ; *SC*5 _{╙}_{╙}; *Handshaking*

#### B.

; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; =; =; ; ; ; ; ; ; , , ;

#### Data Availability

The data used to support the findings of this study are included within the article.

#### Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

#### Acknowledgments

The project is supported by Natural Science Foundation of the Science and Technology Department of Shaanxi Province (Grant no. 2016JM5068), Natural Science Foundation of the Key Laboratory of Shaanxi Provincial Department of Education (Grant no. 15JS075), and Natural Science Basic Research Plan in Shaanxi Province of China (Grant no. 2017JM1028). The project is also supported by Shaanxi Collaborative Innovation Center of Green Intelligent Printing and Packaging.

#### References

- A. Andersen, M. Bejlegaard, T. D. Brunoe, and K. Nielsen, “Investigating the Impact of Product Volume and Variety on Production Ramp-Up,” in
*Managing Complexity*, Springer Proceedings in Business and Economics, pp. 421–434, Springer International Publishing, 2017. View at: Publisher Site | Google Scholar - Y. Koren, “General RMS Characteristics. Comparison with Dedicated and Flexible Systems,”
*Reconfigurable Manufacturing Systems and Transformable Factories*, pp. 27–45, 2006. View at: Google Scholar - G. Zhang, R. Liu, L. Gong, and Q. Huang, “An analytical comparison on cost and performance among DMS, AMS, FMS and RMS,” in
*Reconfigurable manufacturing systems and transformable factories*, A. I. Dashcenko, Ed., pp. 659–673, Springer, 2006. View at: Google Scholar - M. G. Mehrabi, A. G. Ulsoy, Y. Koren, and P. Heytler, “Trends and perspectives in flexible and reconfigurable manufacturing systems,”
*Journal of Intelligent Manufacturing*, vol. 13, no. 2, pp. 135–146, 2002. View at: Publisher Site | Google Scholar - Y. Koren, U. Heisel, F. Jovane, and etal., “Reconfigurable Manufacturing Systems,”
*Journal of Manufacturing Systems*, vol. 29, no. 4, pp. 130–141, 1999. View at: Google Scholar - A. Andersen, K. Nielsen, and T. D. Brunoe, “Prerequisites and Barriers for the Development of Reconfigurable Manufacturing Systems for High Speed Ramp-up,”
*Procedia CIRP*, vol. 51, pp. 7–12, 2016. View at: Publisher Site | Google Scholar - Z. M. Bi, S. Y. T. Lang, W. Shen, and L. Wang, “Reconfigurable manufacturing systems: the state of the art,”
*International Journal of Production Research*, vol. 46, no. 4, pp. 967–992, 2008. View at: Publisher Site | Google Scholar - Y. Koren and M. Shpitalni, “Design of reconfigurable manufacturing systems,”
*Journal of Manufacturing Systems*, vol. 29, no. 4, pp. 130–141, 2010. View at: Publisher Site | Google Scholar - P. Chang, Y. Lin, and J. C. Chen, “System reliability for a multi-state manufacturing network with joint buffer stations,”
*Journal of Manufacturing Systems*, vol. 42, pp. 170–178, 2017. View at: Publisher Site | Google Scholar - D. Prasad and C. Jayswal S, “Design of Reconfigurable Manufacturing System,”
*National Conference on Futuristics in Mechanical Engineering*, 2017. View at: Google Scholar - I. Batchkova, G. Popov, and G. Stambolov, “Modeling of communications in holonic reconfigurable manufacturing system using UML,” in
*International Conference Amtech 2005 "advanced Manufacturing Technologies"*, vol. 44, pp. 459–465, University of Russe, Bulgaria, 2017. View at: Google Scholar - S. Borgo, A. Cesta, and A. Orlandini, “A Planning-based Architecture for a Reconfigurable Manufacturing System,”
*International Conference on Automated Planning and Scheduling*, 2016. View at: Google Scholar - L. Liu, J. Wenyou, and X. Dezhang, “Improved reconfigurable conveyor line based on profile joint,” in
*Mechanical Design and Research*, vol. 30, pp. 94–96, 103 edition, 2014. View at: Google Scholar - A. M. Youssef and H. A. ElMaraghy, “Optimal configuration selection for reconfigurable manufacturing systems,”
*International Journal of Flexible Manufacturing Systems*, vol. 19, no. 2, pp. 67–106, 2007. View at: Publisher Site | Google Scholar - A. M. A. Youssef and H. A. Elmaraghy, “Modelling and optimization of multiple-aspect RMS configurations,”
*International Journal of Production Research*, vol. 44, no. 22, pp. 4929–4958, 2006. View at: Publisher Site | Google Scholar - A. Gola and A. Świć, “Simulation Based Analysis of Reconfigurable Manufacturing System Configurations,”
*Applied Mechanics & Materials*, vol. 844, pp. 50–59, 2016. View at: Google Scholar - P. Ryan and S. Schneider, “Process algebra and non-interference,”
*Journal of Computer Security*, vol. 9, no. 1-2, pp. 75–103, 2001. View at: Publisher Site | Google Scholar - W. Fokkink, “Basic Process Algebra,” in
*Introduction to Process Algebra*, Texts in Theoretical Computer Science. An EATCS Series, pp. 7–16, Springer Berlin Heidelberg, Berlin, Heidelberg, 2000. View at: Publisher Site | Google Scholar - W. Wang, Q. Zheng, and Y. Cao, “Context-Awareness Model Based on Process-Algebra,”
*Journal of Xian Jiao*, pp. 39–10, 2005. View at: Google Scholar - R. Milner,
*A Calculus of Communicating Systems*, Springer, Berlin, 1980. - Y. Wei, C. Lin, and Q. Tian L, “Represent and Analyze with Adaptive Workflow by Process Algebra,”
*Acta Electronica Sinica*, vol. 30, no. 11, pp. 1624–1628, 2002. View at: Google Scholar - J. F. Groote and E. P. de Vink, “Problem Solving Using Process Algebra Considered Insightful,” in
*ModelEd, TestEd, TrustEd*, vol. 10500 of*Lecture Notes in Computer Science*, pp. 48–63, Springer International Publishing, 2017. View at: Publisher Site | Google Scholar - E. Brinksma, “A Stochastic Causality-Based Process Algebra,”
*The Computer Journal*, vol. 38, no. 7, pp. 552–565, 1995. View at: Publisher Site | Google Scholar - J. Bergstra A and W. Klop J, “Process algebra for synchronous communication,”
*Information &Control*, vol. 60, no. 1, pp. 109–137, 1984. View at: Google Scholar - E. Scott, J. Nicol, J. Coulter, A. Hoyle, and C. Shankland, “Process Algebra with Layers: Multi-scale Integration Modelling Applied to Cancer Therapy,” in
*Computational Intelligence Methods for Bioinformatics and Biostatistics*, vol. 10477 of*Lecture Notes in Computer Science*, pp. 118–133, Springer International Publishing, 2016. View at: Publisher Site | Google Scholar - J. Groote F, A. Mathijssen, and M. Reniers, “The Formal Specification Language mCRL2,” in
*Proceedings of the Dagstuhl Seminar*, 15 pages, 2007. View at: Google Scholar - http://www.mcrl2.org.

#### Copyright

Copyright © 2018 Rubai Luo et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.