Next Article in Journal
Robust Mixed H2/H State Feedback Controller Development for Uncertain Automobile Suspensions with Input Delay
Next Article in Special Issue
Improved Q-Learning Method for Linear Discrete-Time Systems
Previous Article in Journal
Power Plant Optimisation—Effective Use of the Nelder-Mead Approach
Previous Article in Special Issue
Industrial Internet of Things and Fog Computing to Reduce Energy Consumption in Drinking Water Facilities
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Intelligent Colored Token Petri Nets for Modeling, Control, and Validation of Dynamic Changes in Reconfigurable Manufacturing Systems

1
Industrial Engineering Department, College of Engineering, King Saud University, Riyadh 11421, Saudi Arabia
2
Institute of Systems Engineering, Macau University of Science and Technology, Taipa, Macau 999078, China
3
School of Electro-Mechanical Engineering, Xidian University, Xi’an 710071, China
4
Faculty of Science and Technology, University of Stavanger, 4036 Stavanger, Norway
*
Authors to whom correspondence should be addressed.
Processes 2020, 8(3), 358; https://doi.org/10.3390/pr8030358
Submission received: 19 February 2020 / Revised: 12 March 2020 / Accepted: 12 March 2020 / Published: 20 March 2020

Abstract

:
The invention of reconfigurable manufacturing systems (RMSs) has created a challenging problem: how to quickly and effectively modify an RMS to address dynamic changes in a manufacturing system, such as processing failures and rework, machine breakdowns, addition of new machines, addition of new products, removal of old machines, and changes in processing routes induced by the competitive global market. This paper proposes a new model, the intelligent colored token Petri net (ICTPN), to simulate dynamic changes or reconfigurations of a system. The main idea is that intelligent colored tokens denote part types that represent real-time knowledge about changes and status of a system. Thus, dynamic configurations of a system can be effectively modeled. The developed ICTPN can model dynamic changes of a system in a modular manner, resulting in the development of a very compact model. In addition, when configurations appear, only the changed colored token of the part type from the current model has to be modified. Based on the resultant ICTPN model, deadlock-free, conservative, and reversible behavioral properties, among others, are guaranteed. The developed ICTPN model was tested and validated using the GPenSIM tool and compared with existing methods from the literature.

1. Introduction

A manufacturing system (MS) is a conglomeration of robots, machine tools, fixtures, and buffers. Several types of products enter the MS at separate points in time. The system can process these parts based on a specified sequence of operations and resource sharing. In the competitive global market, MSs must handle unpredictable and rapid market changes. To cope with these dynamic changes, MSs need to execute quick changes in their software and hardware. Nevertheless, traditional manufacturing systems cannot successfully meet this requirement because they need large capital investments. To tackle these drawbacks in traditional manufacturing systems, reconfigurable manufacturing systems (RMSs) were developed [1,2,3]. RMSs are a new class of manufacturing systems and are subject to dynamic and random configurations in real time. These changes include processing failures and rework, machine breakdowns, addition of new machines, addition of new products, removal of old machines, and changes in processing routes.
To address the dynamic change problem in manufacturing systems, several approaches with Petri nets have been proposed. The study of Reference [4] presented a new higher-level deadlock control technique for the serial and parallel configuration of RMSs. RMSs have been used to replace traditional, large volume manufacturing systems, including dedicated production systems, providing more convertibility and flexibility. A rule-based matrix approach was developed and implemented in serial and parallel configurations. Higher-level deadlocks that are not prohibited by the existing approach were found through this type of application in the example RMS.
The study of Reference [5] introduced an improved net rewriting system (INRS)-based approach to automatically reconfigure an RMS supervisory controller based on Petri nets. Modifications to an RMS configuration were established into rules for rewriting that were then implemented in the original Petri net controller. First, the INRS was developed as the basis for reconfiguration. This can dynamically modify the structure of a Petri net model. Second, the study provided a triple representation of an RMS configuration and proposed an INRS-based approach to design a Petri net controller for an RMS. Finally, the article focused on providing an INRS-based approach for quick and automatic reconfiguration of this type of Petri net controller. In this approach, there is no verification or validation of the behavioral properties, i.e., reversibility, boundedness, and liveness for a reconfigured system.
A new Petri net model, called an intelligent token Petri net (ITPN), was presented by Reference [6]. In this model, tokens representing job types carry real-time knowledge about system changes and status, the same as intelligent cards in practice. An ITPN can model dynamic changes (adding new machines and products) in modular form, resulting in the development of a very compact model. If changes occur, only the changed part of the current model needs to be modified. To make an ITPN deadlock-free and reversible, a deadlock-free control policy was presented based on the ITPN model. In addition, when an ITPN is modified according to the system changes, the policy is still applicable to the modified model. Therefore, when an ITPN model is modified, the control policy need not be changed. However, the reconfiguration mechanism in ITPN needs to be further studied. Some of dynamic changes do not clearly define the modularity that may bring confusion to engineers in understanding and future redeveloping an RMS. Correctness of the system such as coherence of states before and after reconfiguration of the system is not considered. In addition, there is no mention of temporal constraints, which are of great significance in real-time systems.
The work of Reference [7] presented the reconfigurable finite-capacity Petri net (RFCPN) for the dynamic configuration of a flexible MS. An RFCPN is a Petri net extension that can be used for modeling, simulating, and validating simultaneous systems, which are subject to changes. Kahloul et al. [8] used reconfigurable object nets (RONs) to model, simulate, and analyze RMSs. The study proposed a formal approach to meet a new requirement (production of bricks used in slabs). A new extrusion machine (EMS) and a new cutting machine (CMS) were included in the configuration. The reconfiguration was defined as graph transformations, a simulation was performed using the RON tool, and software tools such as TINA-tool [9] and PIPE-tool [10] were used in the analysis.
The work of Reference [11] explored the principles of various methods and took the best practices from each one. Reconfiguration mechanisms were developed using Holonic and multiagent system approaches to enable the systematic detection of faults for a reconfigurable distributed production control system. The principle of service-oriented architecture was used to describe communication interfaces. Using Petri net models, hybrid top-down and bottom-up approaches were presented.
From the perspective of multiagent systems, a reconfigurable MS formal model (RMSFM) was developed in Reference [12], where two complementary formalisms (object-oriented Petri nets (ORPNs) and π-calculus) were used as formalisms. The ORPN was used to model both the initial structure and system behaviors of RMSs, while π-calculus was used to characterize the reconfiguration of RMSs. Petri Nets and π-calculus supporting tools were used to evaluate, check, and validate the RMSFM. π-calculus can analyze the reconfigurability mechanism and consistency of RMSs.
In the literature, several approaches with Petri nets were proposed to enhance dynamic change problems in MSs. However, most of them did not provide a reconfiguration mechanism or algorithm, could not ensure the PN’s behavioral properties (i.e., boundedness, liveliness, and reversibility), or could not guarantee the correctness, accuracy, or validity of the reconfiguration results. The aim of this paper is to propose an intelligent colored token Petri net (ICTPN) based on a knowledge base for a rapid and valid reconfiguration-based Petri net for RMS. The main idea is to use colored tokens denoting part types that represent real-time knowledge about the changes and status of a system. The knowledge is introduced in the transitions, and the transitions know where the colored tokens should be located based on their colors and knowledge. The proposed ICTPN will cope with dynamic changes such as processing failures and rework, machine breakdowns, addition of new machines, addition of new products, removal of old machines, and change processing routes. The proposed ICTPN will ensure that the PN’s behavioral properties, i.e., boundedness, liveliness, and reversibility, indicate that the modeled MS has finite states, is deadlock-free, and operates cyclically, respectively.
The proposed ICTPN can be implemented to Mass Customization Manufacturing (MCM) to solve its challenges, such as attempting to make the products available to customers in a timely manner, keeping high-quality production of a high variety of products, and achieving costs low to match those of standardized products. It can be introduced to the Lean Production (LP) concept, so that a company can apply an RMS to optimize the use of the part of resources for particular product families, and it can also decrease the waste induced by the part of an RMS’s idle resources. It can be applied for Agile Manufacturing (AM) to increase rapid changeover between products, rapid introduction to new products and unattended operation. It can be implemented to Flexible Manufacturing System (FMS) to increase the speed of responsiveness to a variety of markets and customers. In addition, increasing the scalability to the required products volume and convertibility to the existing systems, machines, robots, and controls to match new production specifications.
The rest of the paper is organized as follows. Section 2 describes the ICTPN and synthesis. Section 3 explains how to model dynamic configurations by ICTPN. Section 4 describes the qualitative and quantitative properties of ICTPNs. Finally, Section 5 presents the conclusions and future research.

2. Preliminary

2.1. Definition of Intelligent Colored Token Petri Nets

Traditional Petri nets are popularly used to model, simulate, control, and analyze automated manufacturing systems (AMSs). Existing traditional Petri net studies assumed one or more of the following: (1) the system configuration is recognized and does not change throughout the operation, (2) there is no addition of new machines and no removal of old machines, and machine failures are not addressed, (3) rework is not required, and (4) products to be manufactured are identified, their process routes are specified, and the addition of new products is not applicable [13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32]. This means that traditional Petri net models do not undergo dynamic configurations, such as processing failures and rework, machine breakdowns, addition of new machines, addition of new products, removal of old machines, or change processing routes induced by the competitive global market. Therefore, an ICTPN based on a knowledge base for a rapid and valid reconfiguration-based Petri net for an RMS is proposed to deal with such dynamic changes. The main idea is that colored tokens denote part types that represent real-time knowledge about the changes and status of a system. Transitions know where the colored tokens should be located based on their colors and knowledge.
Definition 1.
Let N = (PA{po}{pr}, T, F, W, Mo, K) be a finite-capacity Petri net, where po is a common load/unload place that represents a part type to be processed in the system, pr is a common transportation resource that represents transportation resources in the system, and PA = {p1, p2, p2,…, pm} is a set of operation resources and PA{pr} = ∅. T is a finite non-empty set of transitions. F(P × T) ∪ (T × P) is said to be a set of directed arcs of N that join the places to transitions or transitions to places, where P = PA ∪ {po} ∪ {pr}. W: (P × T) ∪ (T × P) → IN is a mapping that assigns an arc’s weight, where IN = {0, 1, 2, …}. Mo: P → IN is an initial marking of N. K: P → IN is a capacity function where K(p) represents the maximal number of tokens that place p can hold at a time.
Definition 2.
Let (N, Mo) be a finite-capacity Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K) and node a ∈ PA ∪ {po} ∪ {pr} ∪ T. Then, •a = {b ∈ PA ∪ {po} ∪ {pr} ∪ T | (b, a) ∈ F} is named the pre-set of node a, and a• = {b ∈ PA ∪ {po} ∪ {pr} ∪ T | (a, b) ∈ F} is named the post-set of node a.
Definition 3.
Let (N, Mo) be a colored finite-capacity Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, SC, Cf, Nf, Af, Gf, If), where PA, po, pr, T, F, W, Mo, and K are defined in Definition 1. SC is a color set that contains colors ci and the operations on the colors. Cf is the color function that maps pi ∈ PC into colors ci ∈SC. Nf is the node function that maps F into (P × T) ∪ (T × P). Af is the arc function that maps each flow (arc) f ∈F into the term e. Gf is the guard function that maps each transition ti ∈ T to a guard expression g that has a Boolean value. If is the initialization function that maps each place pi ∈ PC into an initialization expression.
Definition 4.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)), where
1. Given p ∈ PA, M(p) is a marking of part type token with color as represented by M(p) = {cpi\cpi ∈ TC}, where TC represent the set of tokens with colors representing set of part types.
2. Given p = pr, M(p) is a marking of transportation resource token with color as represented by M(p) = {cti\cti ∈ RC}, where RC represent the set of colors of transportation resources types.
3. Given p ∈ PA ∪ {pr}, cpi ∈ TC, and cti ∈ RC, Ψ(p, cpi, cti, d) is a knowledge function mapping tokens types cpi and cti in place p at time d to a transition t, in which cpi and cti can be used to enable t, as represented by Ψ(p, cpi, cti, d)= {t\t ∈ T}.
Definition 5.
Let N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)) be an ICTPN. An ICTPN with a marking is said to be acceptably marked if the following conditions are satisfied: (1) Mo(po) ≥ 1, (2) Mo(pr) ≥ 1, and (3) Mo(p) = 0, ∀p ∈ PA.
Definition 6.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). A transition t ∈ T is enabled at marking M if the following conditions are satisfied: ∀p ∈ t ∩ (PA ∪ {pr}), cpi ∈ M(t ∩ PA), cti ∈ M(t ∩ {pr}), t ∈ Ψ(p, cpi, cti, d), M(t ∩ PA) − {cpi} < K(t ∩ PA), and M(t ∩ {pr}) − {cpi} < K(t ∩ {pr}).
Definition 7.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). N has a self-loop if for all a, b ∈ PA ∪ {po} ∪ {pr} ∪ T, W(a, b) > 0 implies W(b, a) > 0.
Definition 8.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). N is self-loop free if for all a, b ∈ PA ∪ {po} ∪ {pr} ∪ T, W(a, b) > 0 implies W(b, a) = 0.
Definition 9.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, Mo, K, Ψ(p, cpi, cti, d)). A transition t ∈ T that is enabled at marking M by cpi and cti may fire. The marking of the ICTPN can be changed from M to M′ as follows:
M ( p ) = [ M ( p ) { c p i } if   p t P A M ( p ) + { c p i } if   p t P A M ( p ) { c t i } if   p t { p r } M ( p ) { c t i } if   p t { p r } M ( p ) Otherwise ]
Definition 10.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). N is known as an ordinary net if ∀(p, t) ∈ F, W(p, t) = 1, where N = (P, T, F). N is named a weighted net if there is an arc between x and y such that W(x, y) >1.
Definition 11.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). The set of markings that are reachable from M in N is named the set of reachability of the Petri net model (N, M), denoted by R (N, M). A transition t ∈ T is live if for all M ∈ R(N, M), there exists a reachable marking M′ ∈ R(N, M) such that M′[ t holds. A net system (N, M0) is dead at Mo if there does not exist t ∈ T such that Mo[ t holds.
Definition 12.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). A marking Mo is a reversible if, for each marking M′ ∈ R(N, Mo), Mo is reachable from M′.
Definition 13.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). A marking M′ is a coverable if there exists a marking M″ ∈ R(N, Mo) such that M″(p) ≥ M′(p) for each p in the N.
Definition 14.
Let ICTPN be an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). [N] is said to be the incidence matrix of net N, where [N] is an integer matrix that consists of |T| columns and |P| rows with [N](p, t) = W(t, p) −W(p, t).
Definition 15.
Let ICTPN be an intelligent colored token Petri nets with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). A marking M′ is said to be reachable from M if there exist a finite transition sequence δ = t1 t2 t3 … tn that can be fired, and markings M1, M2, M3, …, and Mn−1 such that M[ t 1 M1[ t 2 M 2[ t 3 M 2 … Mn−1[ t n M′, denoted as M[ δ M′, satisfies the state equation M′ = M + [N] δ , where δ : T → IN maps t in T to the number of appearances of t in δ and is called a Parikh vector or a firing count vector.

2.2. Design of Intelligent Colored Token Petri Nets

In AMS, let OR = {OR1, OR2, OR3, …, ORn} be all possible routes and should be manufactured in a system for all types of parts PT, where ORi is Ro → Ri1 → Ri2 → ……→ RiFi → Ro, n, Fi are large integer numbers, Ro denotes a load/unload station of the system with infinite capacity, and Ri(i ≠ 0) may be a buffer or machine, which is named an operation resource. An operation route starts from Ro and ends at Ro. For each part, if there exists more than one operation route such that Ri → Rj(i ≠ j), it is said that there is a path from Ri to Rj. When a part transfers from Ri to Rj, namely it is transported by a material handling device, such as an AGV or robot that is named a transportation resource.
In Definition 4, Ψ(p, cpi, cti, d) knows where colored tokens cpi and cti should go based on their colors and knowledge and knows the system configuration and the state of the tokens themselves. Because of this, cpi and cti are named intelligent colored tokens. An approach can be used to synthesize the ICTPN irrespective of how complicated the system operation routes are.
According to part routing information and transportation requirements, the modeling of operation and transportation resources is stated as follows:
Algorithm 1:Modeling operation and transportation resources
Initialization:Build a common load/unload place po and common transportation resource place pr, π = {Ro}, c = 0, j=0, and h = 0.
for (1, n, i++), choose ORiOR, do
  while j < Fi, do
   j = j + 1
       if Rijπ, then
            Build the place that corresponds to Ri(j-1), which is pa
            Build the place that corresponds to Rij, which is pb
            Build a transition tabhi and knowledge function Ψ(pa, cpi, dabhi)
          Build an arc from pa to tabhi and an arc from tabhi to pb
           if tabhi needs common place pr to transport part i from pa to pb, then
                 Update a knowledge function to Ψ(pa, pr, cpi, cti, dabhi)
             Insert an arc from pr to tabhi and an arc from tabhi to pr.
            end if
       else
            π = π ∪ {Rij}
            c = c + 1
            Build a place and name it pc
            Identify the place that corresponds to Ri(j-1), which is pa
            Build a transition tachi and knowledge function Ψ(pa, cpi, dachi)
            Build an arc from pa to tachi and an arc from tachi to pc
              if tachi needs common place pr to transport part i from pa to pc, then
               Update a knowledge function to Ψ(pa, pr, cpi, cti, dachi)
               Insert an arc from pr to tachi and an arc from tachi to pr.
             end if
       end if
     end while
            Identify the place that corresponds to RiFi, which is pa
            Build a transition ta0hi and knowledge function Ψ(pa, cpi, da0hi)
            Build an arc from pa to ta0hi and an arc from ta0hi to po
              if ta0hi needs common place pr to transport part i from pa to po, then
                 Update a knowledge function to Ψ(pa, pr, cpi, cti, da0hi)
                 Insert an arc from pr to ta0hi and an arc from ta0hi to pr.
              end if
end for
/ * Define the initial marking of the system */
  • Place tokens with colors into common load/unload place po such that Mo(po) = {cp1, cp2, cp3, … cpn} ⊂ TC, where cpi ∈ TC, i∈ PT, which denotes that a part type i to be processed in the system.
  • Place tokens with colors into common transportation resource place pr such that Mo(pr) = {ct1, ct2, ct3, … ctk} ⊂ RC, where cti ∈ RC, which denotes a transportation resource in the system.
  • Mo(p) = 0, for all p ∈ PA.
Output: The ICTPN model
To demonstrate the synthesis of an ICTPN, consider an AMS example, shown in Figure 1a. The AMS Petri net model is given in Chen et al. [33], Piroddi et al. [34], Chen and Li [35], Chen et al. [36], and Kaid et al. [37]. The system is composed of four machines (M1, M2, M3 and M4; each machine can process one part at a time) and two robots (Ro1 and Ro2; each robot can hold a part at a time). There is a loading/unloading buffer. Two part-types, A and B, are considered to be processed in the system. The operations sequences of these two part-types are shown in Figure 1b. The operation and transportation resources model is shown in Figure 2, for operation resources, p1, p2, p3, and p4 model M1, M2, M3, and M4, respectively. The process route of Part A is constructed by po → t011A → p1 → t130A → p3 → t300A → p0, or po → t022A → p2 → t230A → p3 → t300A → p0. The process route of Part B is constructed by po → t040B → p4 → t420B → p2 → t200B → p0, for transportation resources, common place pr models Ro1 and Ro2.
To model the transportation operations of part types, transition t011A denotes loading part A to p1 and transition t022A denotes loading part A to p2, where Ro1 is needed. Transition t300A denotes unloading part A from p3, where Ro2 is needed. Transitions t040B denotes loading part B to p4, where Ro2 is needed, and transition t200B denotes unloading part B from p2, where Ro1 is needed. These operations can be done by developed common place pr. Thus, common place pr and arcs (pr, t011A), (t011A, pr), (pr, t022A), (t022A, pr), (pr, t300A), (t300A, pr), (pr, t040B), (t040B, pr), (pr, t200B), and (t200B, pr) are inserted into the model. Transporting part A between p1 and p3 (Ro1 is needed) or p2 and p3 (Ro1 is needed) is represented by transitions t130A or t230A, respectively. Transporting part B between p4 and p2 (Ro1 is needed) is represented by transitions t420B. Thus, common place pr and arcs (pr, t130A), (t130A, pr), (pr, t230A), (t230A, pr), (pr, t420B), and (t420B, pr) are inserted into the model.
Note that in ICTPN, transition t has one input place from p ∈ PA, one input place from pr, one output place to p ∈ PA, and one output place to pr. Next, to define the initial marking of the system, place tokens with colors into place po such that Mo(po) = {cp1, cp2}, where cp1 and cp2 denote a part type A and part type B, respectively. Place tokens with colors into place pr such that Mo(pr) = {ct1, ct2}, where ct1 and ct2 denote transportation resources in the system Ro1 and Ro2, respectively.
Consider the ICTPN model shown in Figure 2. If the condition given in Definition 6 is satisfied, then we can say that t is enabled by cpi and cti. By Definition 9, the marking of the ICTPN can be changed as follows. When transition t011A (Ψ(po, pr, cp1, ct1, d011A)) fires for duration d011A, it selects only one token with color cp1 from input place po and one token with color ct1 from input place pr. If t011A fires, then it transfers only one token with color cp1 to output place p1 and one token with color ct1 to output place pr. When transition t022A (Ψ(po, pr, cp1, ct1, d022A)) fires for duration d022A, then it selects only one token with color cp1 from input place po and one token with color ct1 from input place pr. If t022A fires, it transfers only one token with color cp1 to output place p2 and one token with color ct1 to output place pr. When transition t040B (Ψ(po, pr, cp2, ct2, d040B)) fires for duration d040B, then it selects only one token with color cp2 from input place po and one token with color ct2 from input place pr. If t040B fires, it transfers only one token with color cp2 to output place p4 and one token with color ct2 to output place pr. In addition, if transition t130A (Ψ(p1, pr, cp1, ct1, d130A)) fires for duration d130A, it selects only one token with color cp1 from input place p1 and one token with color ct1 from input place pr. If t130A fires, it transfers only one token with color cp1 to output place p3 and one token with color ct1 to output place pr. Moreover, when transition t230A (Ψ(p2, pr, cp1, ct1, d230A)) fires for duration d230A, it selects only one token with color cp1 from input place p2 and one token with color ct1 from input place pr. If t230A fired, it transfers only one token with color cp1 to output place p3 and one token with color ct1 to output place pr. If transition t420B (Ψ(p4, pr, cp2, ct1, d420B)) fires for duration d420B, it selects only one token with color cp2 from input place p4 and one token with color ct1 from input place pr. If t420B fires, it transfers only one token with color cp2 to output place p2 and one token with color ct1 to output place pr. Then, when transition t200B (Ψ(p2, pr, cp2, ct1, d200B)) fires for duration d200B, it selects only one token with color cp2 from input place p2 and one token with color ct1 from input place pr. If t200B fires, it transfers only one token with color cp2 to output place po and one token with color ct1 to output place pr. Finally, if transition t300A (Ψ(p3, pr, cp1, ct2, d300A)) fires for duration d300A, it selects only one token with color cp1 from input place p3 and one token with color ct2 from input place pr. If t300A fires, it transfers only one token with color cp1 to output place po and one token with color ct2 to output place pr.

3. RMS Configuration Changes Modeling Based on ICTPN

3.1. Machine Breakdowns

In an automated manufacturing system, the breakdown of its machines is usually caused by quality out-of-control signals, missing or defective part programs or tools, damaged tools, or the failure of sensing and actuating systems. For example, if a machine breakdown is detected, the operations that use the broken machine need to be performed by another machine. In this case, some processing routes are changed, which implies a modification to the structure of its Petri net model. Reconsider the ICTPN model shown in Figure 2. There are four machine tools, denoted by p1, p2, p3, and p4. Assume that p1 is down and p4 will perform the operations that were previously performed by itself and performed by p1. Therefore, the structure of the ICTPN model is changed and will be re-designed such that the system with the removal of resource p1 can operate continuously without stoppage. Hence, to model the reconfigured system, consider the following procedures:
  • Step 1: Disable the transitions connected to the place corresponding to the breakdown machine and remove or disable this place p1.
  • Step 2: Change the names of transitions based on new machine p4
  • Step 3: Change the operation route from po → t011A → p1 → t130A → p3 → t300A → p0 to po → t041A → p4 → t430A → p3 → t300A → p0.
  • Step 4: Connect the transitions to the new machine p4.
  • Step 5: Change the names of the knowledge function of transitions based on new machine p4.
t041A = Ψ(po, pr, cp1, ct1, d041A)
t430A = Ψ(p4, pr, cp1, ct1, d430A )
An ICTPN for the reconfigured system by machine breakdowns is shown in Figure 3.

3.2. Addition of New Product

The second automated manufacturing system reconfiguration involves the addition of a new product. When a new product is added to a system, it means that a new route is added, which implies a modification to the structure of its Petri net model. To model the newly added route by using the ICTPN synthesis procedure, reconsider the ICTPN model shown in Figure 2. Assume that a new product part C is added. It processing route is constructed by load/unload station → M4 → M3 load/unload station. To transport part C between the load/unload station and M4, Ro2 is needed, and to transport part C between M4 and M3, Ro1 is needed. Hence, to model the reconfigured system, consider the following procedures:
  • Step 1: Add a new operation route from po → t040C → p4→ t430C → p3 → t300C → p0.
  • Step 2: Add the transportation operation of part C. Transition t040C denotes loading part C to p4, and Ro2 is needed; t430C denotes transporting part C to p3 and Ro1 is needed. Transition t300C denotes unloading part C from p3 and Ro2 is needed. These operations can be done by common place pr.
  • Step 3: Add the knowledge function of transitions based on a new operation route.
t040C = Ψ(po, pr, cp3, ct2, d040C)
t430C = Ψ(p4, pr, cp3, ct1, d430C)
t300C = Ψ(p3, pr, cp3, ct2, d300C).
  • Step 4: Place the token with color cp3 into place po, which denotes a part C that will be processed in the system.
An ICTPN for the reconfigured system by the addition of a new product is shown in Figure 4.

3.3. Addition of New Machine

The third system reconfiguration includes the addition of a new machine. In this case, a new machine is added to the system. Operations for new or used parts are conducted by the newly added machine. Moreover, new job processing routes can be generated, which implies the modification of the structure of the Petri net model. To model the newly added machine by using the ICTPN synthesis procedure, new places and transitions can be added based on the original ICTPN.
Consider the ICTPN model shown in Figure 2. Assume that a new machine M5 is added to process part B. The processing route of part B is constructed by load/unload station → M4 or M5 → M2 load/unload station. To transport part B between the load/unload station and M4 or M5, Ro2 is needed, and to transport part B between M4 or M5 and M2, Ro1 is needed. Hence, to model the reconfigured system, consider the following procedures:
  • Step 1: Add process routes of part B as route 1: po → t041B → p4 → t420B → p2 → t200B → p0, or route 2: po → t052B → p5 → t520B → p2 → t200B → p0
  • Step 2: Add the transportation operation of part B. Transitions t041B and t052B denote loading part B to p4 and p5, respectively, where Ro2 is needed; t420B and t520B denote transporting part B to p2, where Ro1 is needed; these operations can be done by common place pr.
  • Step 3: Add the knowledge function of transitions based on a new machine
t041B = Ψ(po, pr, cp2, ct2, d041B )
t052B = Ψ(po, pr, cp2, ct2, d052B )
t520B = Ψ(p4, pr, cp3, ct1, d520B )
An ICTPN for the reconfigured system with the addition of a new machine is shown in Figure 5.

3.4. Removal of Old Machine

The fourth system reconfiguration includes the removal of an old machine. This indicates that the operations that use the removed machine need to be performed by another machine. Thus, some processing routes are changed, which implies a modification to the structure of its Petri net model. Reconsider the ICTPN model shown in Figure 2. Assume that machine 1 p1 is removed from the system, and p2 will perform the operations that are previously performed by itself and performed by p1. Therefore, the structure of the ICTPN model is changed and will be re-designed, such that the system with the removal of machine p1 can operate continuously without stoppage. Hence, to model the reconfigured system, consider the following procedures:
  • Step 1: Delete all the transitions connected to the place corresponding to the removed machine p1 and remove this place p1.
  • Step 2: One operation route will be considered, which is po → t020A → p2 → t230A → p3 → t300A → p0.
  • Step 3: Delete the old knowledge function of transitions based on removed machine p1.
t011A = Ψ(po, pr, cp1, ct1, d011A )
t130A = Ψ(p4, pr, cp1, ct1, d130A )
An ICTPN for the reconfigured system by removal of an old machine is shown in Figure 6.

3.5. Change Processing Routes

The fifth system reconfiguration includes the change of processing routes. In this case, processing routes of parts are changed in the system, which implies a modification of the structure of its Petri net model. Reconsidering the ICTPN model shown in Figure 2, assume that the processing route of part A changes from po → p1→ p3 → p0, or po → p2 → p3 → p0 to po → p4→ p3 → p0, or po → p2 → p3 → p0, and the processing route of part B changes from po→ p4 → p2 → p0 to po→ p1 → p2 → p0. Therefore, the structure of the ICTPN model is changed and redesigned, such that the system works with changed processing routes. Hence, to model the reconfigured system, consider the following procedures:
  • Step 1: Change the names of transitions based on processing routes.
  • Step 2: Change the operation route of part A from po → t011A → p1 → t130A → p3 → t300A → p0 to po → t041A → p4 → t430A → p3 → t300A → p0.
  • Step 3: Change the operation route of part A from po → t040B → p4 → t420B → p2 → t200B → p0 to po → t010B → p1 → t120B → p2 → t200B → p0.
  • Step 4: Update the knowledge function of transitions based on removed machine p1.
t041A = Ψ(po, pr, cp1, ct1, d041A )
t430A = Ψ(p4, pr, cp1, ct1, d430A )
t010B = Ψ(po, pr, cp1, ct2, d010B )
t120B = Ψ(p1, pr, cp2, ct1, d120B )
An ICTPN for the reconfigured system by the removal of an old machine is shown in Figure 7.

3.6. Rework

The sixth system reconfiguration includes rework. In this case, a part may be inspected when some of its operations are finished. If the reconfiguration is performed properly, then the system will continue based on an original route. Otherwise, rework is required. By using an ICTPN, the manufacturing operations of the reworked part can be easily and exactly modeled by considering rework operations as alternative routes. Reconsider the ICTPN model shown in Figure 2. Assume that M3 is an inspection machine and that part A is processed in M1 or M2. Then, part A is transported to an inspection machine M3 by Robot 1 to determine if there are defects in part A. If part A performs properly, then it will depart the system by Robot 2. Otherwise, if part A has defects, rework is required, and part A is removed and transported to M1 by Robot 2. Thus, part A has four possible routes:
  • Load–unload station → M1 inspection machine M3 load–unload station,
  • Load–unload station → M2 inspection machine M3 load–unload station,
  • Load–unload station → M1 inspection machine M3 → M1 inspection machine M3 load–unload station, or
  • Load–unload station → M2 inspection machine M3 → M1 inspection machine M3 load–unload station.
Therefore, to model two routes by using the ICTPN synthesis procedure, a new transition can be added based on the original ICTPN. Hence, to model the reconfigured system, consider the following procedures:
  • Step 1: Add the process routes of part B as route 1: po → t011A → p1 → t130A → p3 → t300A → p0, route 2: po → t022A → p2 → t230A → p3 → t300A → p0, route 3: po → t011A → p1 → t130A → p3 → t310A → p1 → t130A → p3 → t300A → p0, or route 4: po → t022A → p1 → t230A → p3 → t310A → p1 → t130A → p3 → t300A → p0.
  • Step 2: Add the knowledge function of transition based on rework:
T310A = Ψ(p3, pr, cp1, ct2, d310B )
An ICTPN for the reconfigured system by rework is shown in Figure 8.

4. Qualitative and Quantitative Study of ICTPN

4.1. Deadlock

A deadlock is a situation in which each process in a set of processes enters a waiting state because a requested resource is being held by another waiting process, which in turn is waiting for another resource. Thus, deadlocks should be avoided or prevented.
Theorem 1.
The ICTPN is an intelligent colored token Petri net with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, and Ψ(p, cpi, cti, d)), and is deadlock-free (live).
Proof. 
There is a need to prove that all transitions T in the ICTPN are live. It does not matter how the system changes. For all tT, if ∀pit and MC(pi) > 0, then t can fire in any case because it is uncontrollable. □
To demonstrate the liveness of an ICTPN, consider the ICTPN model shown in Figure 2. Figure 9 shows the reachability graph of the ICTPN, and the system is live.

4.2. Conservativeness

Conservativeness is one of the main characteristics of ICTPN, where a transition, t, has one input place and one output place in pr, i.e., |t ∩ {pr}| = |t ∩ {pr}|=1, and one input place and one output place in PA, i.e., |tPA | = |tPA | = 1. Therefore, in the incidence matrix D for an ICTPN, there is one –1 and one 1 in each row. Thus, if y = (1, 1, …, 1)T, Dy = 0 must hold. For instance, reconsider the ICTPN model shown in Figure 2. We have P = (po, p1, p2, p3, p4, pr) and T= (t011A, t022A, t040B, t130A, t230A, t420B, t200B, t300A). The incidence matrix D of ICTPN model shown in Figure 2 is stated as follows:
D =−101000
−100100
−100001
00−1010
000−110
00010−1
100−100
1000−10
Thus, Dy = 0 is satisfied with y = (1, 1, 1, 1, 1, 1)T
−101000
−100100 1 0
−100001 1 0
00−1010 1 0
000−110×1=0
00010−1 1 0
100−100 1 0
1000−10

4.3. Reversibility

An ICTPN is reversible if its initial marking can be reached from any other reachable marking.
Theorem 2.
Assume that: (1) in an I CTPN, any part type has at least a route Ro → R1 → R2 → R3 ……→ Rn → Ro to complete it, and (2) after any reconfiguration, assumption 1 is still met. Then, the ICTPN that builds the configurations of the system is reversible.
Proof. 
The dynamic changes in an AMS can be effectively constructed by an ICTPN, and the system can be controlled to be reversible if the suppositions given in Theorem 2 are met. Suppositions 1 and 2 ensure that for any cpi, there is at least a route Ro → R1 → R2 → R3 ……→ Rn → Ro that starts from po, moves through some operation places other than po, and ends at po. It does not matter how the system is modified. Hence, the operation places can always be unmarked or are reversible. □
To demonstrate the reachability of an ICTPN, consider the ICTPN model shown in Figure 2. Figure 9 shows the reachability graph of the ICTPN, and the system is reversible.

4.4. Structural Complexity

The structural complexity depends on the fact that Algorithm 1 can model an ICTPN N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, and Ψ(p, cpi, cti, d)) with fewer places, transitions, and arcs, which leads to a decrease in software and hardware costs. First, we compare the results of the ICTPN model of Figure 2 with the traditional PN methods in the studies of Chen et al. [33], Piroddi et al. [34], Chen and Li [35], Chen et al. [36], and Kaid et al. [37]. Table 1 lists the results for the numbers of idle process places, operation places, resource places, transportation places, transitions, monitors, arcs, as well as liveness, and reachable markings. We observe that the proposed ICTPN model is minimal compared with other techniques used by Chen et al. [33], Piroddi et al. [34], Chen and Li [35], Chen et al. [36], and Kaid et al. [37].

4.5. Validation and Behavioral Permissiveness of ICTPN Model

To test and validate the developed ICTPN model, we coded an ICTPN model using the GPenSIM tool [37,38], and the code is validated and compared with Chen et al. [33], Piroddi et al. [34], Chen and Li [35], Chen et al. [36], and Kaid et al. [37]. We created three files: (1) the Petri net definition file (PDF), which defines the static ICTPN model by declaring the sets of places, transitions, and arcs, (2) the common processor file (COMMON_PRE file), which defines the conditions for the enabled transitions to start firing based on the intelligent colored tokens, and (3) the main simulation file (MSF) to compute the simulation results. The GPenSIM code was also built in MATLAB.
Behavioral permissiveness leads to the better time performance in an ICTPN, such as utilization of the robots and machines, total throughput, work-in-process (WIP), and total time in system (throughput time). The simulation was undertaken for 480 min. After running and simulating the ICTPN model in MATLAB, we obtained the results summarized in Table 2. Table 2 illustrates the results in terms of the aforementioned time performance criteria. In terms of the resource utilization, overall, the proposed model can obtain better utilization than the other techniques, as illustrated in Figure 10. Moreover, from the viewpoint the throughput, the proposed model can provide greater throughput than the other techniques, as illustrated in Figure 11. With respect to the throughput time per part, the proposed model can obtain less throughput time than other techniques, as illustrated in Figure 12. Finally, in terms of WIP, the proposed model leads to better WIP than the other techniques, as illustrated in Figure 13.

4.6. Computational Complexity

Algorithm 1 models an ICTPN with N = (PA ∪ {po} ∪ {pr}, T, F, W, Mo, K, Ψ(p, cpi, cti, d)). Algorithm 1 is used to model the operation and transportation resources and initial marking of the ICTPN. Obviously, all possible routes OR = {OR1, OR2, OR3, , ORn} in a system for all types of parts are modeled. Based on the fact that each route OR in a system has Ro → Ri1 → Ri2 → ……→ RiFi → Ro. Each sub-route R requires place pa that corresponds to Ri(j-1), place pa that corresponds to Rij, and transition t, an arc from pa to t, an arc from t to pb, an arc from common place pr to t, and an arc from t to common place pr. Note that one common transportation resource pr is added and represents all transportation resources in the system. Therefore, let x be the number of possible routes, OR, i.e., |OR| = x. The number of each sub-route Fi is expressed by y, i.e., |Fi| = y. The number of corresponding places, transitions, and arcs to each sub-route is expressed by I, i.e., |I| = z. The number of transportation resources pr is 1, i.e., |pr| = 1. The “FOR loop” is executed (xyz) times to model an ICTPN. Thus, the computational complexity is O(xyz). In the proposed algorithm by Wu and Zhou [6], all transportation resources are required to be added; thus, the number of transportation resources pri is expressed as k, i.e., |pri| = k. Therefore, the computational complexity of the proposed algorithm in the study of Wu and Zhou [6] is O(xyz + k). Thus, Algorithm 1 has minimal computational complexity compared with that of Wu and Zhou [6] and can be implemented in a large-scale system. In fact, Algorithm 1 has polynomial time complexity.

5. Conclusions

This paper presented a new model named an intelligent colored token Petri net for automatic reconfiguration of RMS to face the dynamical changes in the manufacturing system. The main idea is that intelligent colored tokens denote product types that represent real-time knowledge about changes and status of a system. Thus, dynamical configurations of a system can be effectively modelled. The developed ICTPN can model dynamical changes of a system in a modular manner, resulting in an easily compact model. In addition, when configurations appear, only the changed colored token from the current model has to be modified. The developed ICTPN model was tested and validated using the GPenSIM tool and compared with the existing methods from the literature.
The main advantages of the proposed method are: (1) The proposed ICTPN model is more powerful, has a simpler structure, does not need to calculate reachability graphs, and has low-overhead computation compared with Chen et al. [33], Piroddi et al. [34], Chen and Li [35], Chen et al. [36], and Kaid et al. [37]. (2) It can easily handle any dynamical changes in RMS compared with Lee and Tilbury [4], Li et al. [5], and Wu and Zhou [6]. (3) It can obtain one common transportation resource place to transport all part types compared with Wu and Zhou [6]. (4) GPenSIM code is developed for simulation, validation, and performance comparison compared with Li et al. [5], and Wu and Zhou [6]. (5) The proposed ICTPN model can dynamically change the structure of a PN without damaging its behavioral properties, i.e., liveness, conservativeness, boundedness, and reversibility. (6) We provided a representation of a RMS configuration and presented an ICTPN model for designing a modular. (7) The proposed ICTPN model can be applicable to other types of complex AMSs such as semiconductor fabrication system and liquid-crystal display factory, including automated storage and retrieval systems, automated guided vehicle, and machines. (8) The proposed ICTPN model can consider systems with sequential and complex resource requirements.
The main limitation of the proposed method is that the the ICTPN model lacks an efficient conversion method from the ICTPN model into industrial control languages for application. Therefore, our future research will investigate the proposed model to have an automatic way to test the applicability of the ICTPN model for real world systems. It is crucial to come up with a means to convert the ICTPN model into ladder diagrams (LDs) for implementation on programmable logic controllers (PLCs) [24], using adaptive control techniques [39], or using surveillance systems [40]. We will also consider to model and schedule automated manufacturing systems [41] and social networks [42] using the proposed model methodology.

Author Contributions

Conceptualization, H.K. and A.A.-A.; software, H.K. and R.D.; resources, H.K., A.A.-A. and R.D.; formal analysis, H.K. and A.A.-A.; investigation, H.K., A.A.-A. and Z.L.; validation, H.K., A.A.-A., Z.L. and R.D.; writing—original draft preparation, H.K., A.A.-A. and Z.L.; writing—review and editing, H.K., A.A.-A., Z.L. and R.D.; visualization, H.K., A.A.-A. and Z.L.; supervision, A.A.-A., and Z.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by King Saud University, grant number (RSP-2019/62), and the APC was funded by King Saud University.

Acknowledgments

The authors would like to thank King Saud University for funding and supporting this research through Researchers Supporting Project Number (RSP-2019/62).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Mehrabi, M.G.; Ulsoy, A.G.; Koren, Y. Reconfigurable manufacturing systems: Key to future manufacturing. J. Intell. Manuf. 2000, 11, 403–419. [Google Scholar] [CrossRef]
  2. Katz, R. Design principles of reconfigurable machines. Int. J. Adv. Manuf. Technol. 2007, 34, 430–439. [Google Scholar] [CrossRef]
  3. Patel, R.; Gojiya, A.; Deb, D. Failure reconfiguration of pumps in two reservoirs connected to overhead tank. In Innovations in Infrastructure; Springer: Berlin/Heidelberg, Germany, 2019; pp. 81–92. [Google Scholar]
  4. Lee, S.; Tilbury, D.M. Deadlock-free resource allocation control for a reconfigurable manufacturing system with serial and parallel configuration. IEEE Trans. Syst. Man Cybern. Part C (Appl. Rev.) 2007, 37, 1373–1381. [Google Scholar] [CrossRef]
  5. Li, J.; Dai, X.; Meng, Z. Automatic reconfiguration of petri net controllers for reconfigurable manufacturing systems with an improved net rewriting system-based approach. IEEE Trans. Autom. Sci. Eng. 2009, 6, 156–167. [Google Scholar] [CrossRef]
  6. Wu, N.; Zhou, M. Intelligent token petri nets for modelling and control of reconfigurable automated manufacturing systems with dynamical changes. Trans. Inst. Meas. Control 2011, 33, 9–29. [Google Scholar]
  7. Târnaucă, B.; Puiu, D.; Comnac, V.; Suciu, C. Modelling a flexible manufacturing system using reconfigurable finite capacity petri nets. In Proceedings of the 2012 13th International Conference on. Optimization of Electrical and Electronic Equipment (OPTIM), Brasov, Romania, 24–26 May 2012; pp. 1079–1084. [Google Scholar]
  8. Kahloul, L.; Bourekkache, S.; Djouani, K.; Chaoui, A.; Kazar, O. Using high level petri nets in the modelling, simulation and verification of reconfigurable manufacturing systems. Int. J. Softw. Eng. Knowl. Eng. 2014, 24, 419–443. [Google Scholar] [CrossRef]
  9. Berthomieu, B.; Ribet, P.-O.; Vernadat, F. The tool tina–construction of abstract state spaces for petri nets and time petri nets. Int. J. Prod. Res. 2004, 42, 2741–2756. [Google Scholar] [CrossRef]
  10. Bonet, P.; Catalina, M.L.; Puigjaner, R. A petri net tool for performance modeling. In Proceedings of the 23rd Latin American Conference on Informatics, San Jose, Costa Rica, 10–11 October 2007. [Google Scholar]
  11. Da Silva, R.M.; Benítez-Pina, I.F.; Blos, M.F.; Santos Filho, D.J.; Miyagi, P.E. Modeling of reconfigurable distributed manufacturing control systems. IFAC Pap. 2015, 48, 1284–1289. [Google Scholar] [CrossRef]
  12. Yu, Z.; Guo, F.; Ouyang, J.; Zhou, L. Object-oriented petri nets and π-calculus-based modeling and analysis of reconfigurable manufacturing systems. Adv. Mech. Eng. 2016, 8, 1687814016677698. [Google Scholar] [CrossRef] [Green Version]
  13. Chao, D.Y. Fewer monitors and more efficient controllability for deadlock control in s3pgr2 (systems of simple sequential processes with general resource requirements). Comput. J. 2010, 53, 1783–1798. [Google Scholar] [CrossRef]
  14. Chao, D.Y. Improvement of suboptimal siphon-and fbm-based control model of a well-known s3pr. IEEE Trans. Autom. Sci. Eng. 2011, 8, 404–411. [Google Scholar] [CrossRef]
  15. Li, Z.; Zhou, M. Elementary siphons of petri nets and their application to deadlock prevention in flexible manufacturing systems. Syst. Man Cybern. Part A Syst. Hum. IEEE Trans. 2004, 34, 38–51. [Google Scholar] [CrossRef]
  16. Uzam, M. An optimal deadlock prevention policy for flexible manufacturing systems using petri net models with resources and the theory of regions. Int. J. Adv. Manuf. Technol. 2002, 19, 192–208. [Google Scholar] [CrossRef]
  17. Uzam, M.; Zhou, M. Iterative synthesis of petri net based deadlock prevention policy for flexible manufacturing systems. In Proceedings of the 2004 IEEE International Conference on Systems, Man and Cybernetics, The Hague, The Netherlands, 10–13 October 2004; pp. 4260–4265. [Google Scholar]
  18. Pan, Y.-L.; Tseng, C.-Y.; Row, T.-C. Design of improved optimal and suboptimal deadlock prevention for flexible manufacturing systems based on place invariant and reachability graph analysis methods. J. Algorithms Comput. Technol. 2017, 11, 261–270. [Google Scholar] [CrossRef] [Green Version]
  19. Zhao, M.; Uzam, M. A suboptimal deadlock control policy for designing non-blocking supervisors in flexible manufacturing systems. Inf. Sci. 2017, 388, 135–153. [Google Scholar] [CrossRef]
  20. Cong, X.; Gu, C.; Uzam, M.; Chen, Y.; Al-Ahmari, A.M.; Wu, N.; Zhou, M.; Li, Z. Design of optimal petri net supervisors for flexible manufacturing systems via weighted inhibitor arcs. Asian J. Control 2018, 20, 511–530. [Google Scholar] [CrossRef]
  21. Abdulaziz, M.; Nasr, E.A.; Al-Ahmari, A.; Kaid, H.; Li, Z. Evaluation of deadlock control designs in automated manufacturing systems. In Proceedings of the 2015 International Conference on Industrial Engineering and Operations Management, Dubai, UAE, 3–5 March 2015. [Google Scholar]
  22. Wang, S.; You, D.; Zhou, M. A necessary and sufficient condition for a resource subset to generate a strict minimal siphon in S 4PR. IEEE Trans. Autom. Control 2017, 62, 4173–4179. [Google Scholar] [CrossRef]
  23. Zhuang, Q.; Dai, W.; Wang, S.; Du, J.; Tian, Q. An mip-based deadlock prevention policy for siphon control. IEEE Access 2019, 7, 153782–153790. [Google Scholar] [CrossRef]
  24. Kaid, H.; Al-Ahmari, A.; El-Tamimi, A.M.; Abouel Nasr, E.; Li, Z. Design and implementation of deadlock control for automated manufacturing systems. S. Afr. J. Ind. Eng. 2019, 30, 1–23. [Google Scholar] [CrossRef] [Green Version]
  25. Nasr, E.A.; El-Tamimi, A.M.; Al-Ahmari, A.; Kaid, H. Comparison and evaluation of deadlock prevention methods for different size automated manufacturing systems. Math. Probl. Eng. 2015, 501, 1–19. [Google Scholar] [CrossRef] [Green Version]
  26. Sun, D.; Chen, Y.; El-Meligy, M.A.; Sharaf, M.A.F.; Wu, N.; Li, Z. On algebraic identification of critical states for deadlock control in automated manufacturing systems modeled with petri nets. IEEE Access 2019, 7, 121332–121349. [Google Scholar] [CrossRef]
  27. Al-Ahmari, A.; Kaid, H.; Li, Z.; Davidrajuh, R. Strict minimal siphon-based colored petri net supervisor synthesis for automated manufacturing systems with unreliable resources. IEEE Access 2020, 8, 22411–22424. [Google Scholar] [CrossRef]
  28. Li, L.; Basile, F.; Li, Z. An approach to improve permissiveness of supervisors for gmecs in time petri net systems. IEEE Trans. Autom. Control 2019, 65, 237–251. [Google Scholar] [CrossRef]
  29. Liu, Y.; Cai, K.; Li, Z. On scalable supervisory control of multi-agent discrete-event systems. Automatica 2019, 108, 108460. [Google Scholar] [CrossRef] [Green Version]
  30. Chen, Q.; Yin, L.; Wu, N.; El-Meligy, M.A.; Sharaf, M.A.F.; Li, Z. Diagnosability of vector discrete-event systems using predicates. IEEE Access 2019, 7, 147143–147155. [Google Scholar] [CrossRef]
  31. Wang, D.; Wang, X.; Li, Z. Nonblocking supervisory control of state-tree structures with conditional-preemption matrices. IEEE Trans. Ind. Inform. 2019, 16, 3744–3756. [Google Scholar] [CrossRef]
  32. Hu, Y.; Ma, Z.; Li, Z. Design of supervisors for active diagnosis in discrete event systems. IEEE Trans. Autom. Control 2020. [Google Scholar] [CrossRef]
  33. Chen, Y.; Li, Z.; Khalgui, M.; Mosbahi, O. Design of a maximally permissive liveness-enforcing petri net supervisor for flexible manufacturing systems. Autom. Sci. Eng. IEEE Trans. 2011, 8, 374–393. [Google Scholar] [CrossRef]
  34. Piroddi, L.; Cordone, R.; Fumagalli, I. Selective siphon control for deadlock prevention in petri nets. Syst. Man Cybern. Part A Syst. Hum. IEEE Trans. 2008, 38, 1337–1348. [Google Scholar] [CrossRef]
  35. Chen, Y.; Li, Z. Design of a maximally permissive liveness-enforcing supervisor with a compressed supervisory structure for flexible manufacturing systems. Automatica 2011, 47, 1028–1034. [Google Scholar] [CrossRef]
  36. Chen, Y.; Li, Z.; Zhou, M. Behaviorally optimal and structurally simple liveness-enforcing supervisors of flexible manufacturing systems. Syst. Man Cybern. Part A Syst. Hum. IEEE Trans. 2012, 42, 615–629. [Google Scholar] [CrossRef]
  37. Kaid, H.; Al-Ahmari, A.; Li, Z.; Davidrajuh, R. Single controller-based colored petri nets for deadlock control in automated manufacturing systems. Processes 2020, 8, 21. [Google Scholar] [CrossRef] [Green Version]
  38. Davidrajuh, R. Modeling Discrete-Event Systems with Gpensim: An Introduction; Springer: Berlin/Heidelberg, Germany, 2018. [Google Scholar]
  39. Tao, G. Adaptive Control Design and Analysis; John Wiley & Sons: Hoboken, NJ, USA, 2003; Volume 37. [Google Scholar]
  40. Upadhyay, J.; Deb, D.; Rawat, A. Design of smart door closer system with image classification over WLAN. Wirel. Pers. Commun. 2019, 111, 1941–1953. [Google Scholar] [CrossRef]
  41. Zan, X.; Wu, Z.; Guo, C.; Yu, Z. A pareto-based genetic algorithm for multi-objective scheduling of automated manufacturing systems. Adv. Mech. Eng. 2020, 12, 1–15. [Google Scholar] [CrossRef]
  42. Yang, L.; Li, Z.; Giua, A. Containment of rumor spread in complex social networks. Inf. Sci. 2020, 506, 113–130. [Google Scholar] [CrossRef]
Figure 1. (a) An AMS example, (b) Production sequence.
Figure 1. (a) An AMS example, (b) Production sequence.
Processes 08 00358 g001
Figure 2. Intelligent colored token Petri net (ICTPN) of an AMS example, as shown in Figure 1a.
Figure 2. Intelligent colored token Petri net (ICTPN) of an AMS example, as shown in Figure 1a.
Processes 08 00358 g002
Figure 3. An ICTPN for the reconfigured system by machine breakdowns.
Figure 3. An ICTPN for the reconfigured system by machine breakdowns.
Processes 08 00358 g003
Figure 4. An ICTPN for the reconfigured system by addition of a new product.
Figure 4. An ICTPN for the reconfigured system by addition of a new product.
Processes 08 00358 g004
Figure 5. An ICTPN for the reconfigured system by addition of a new machine.
Figure 5. An ICTPN for the reconfigured system by addition of a new machine.
Processes 08 00358 g005
Figure 6. An ICTPN for the reconfigured system by removal of an old machine.
Figure 6. An ICTPN for the reconfigured system by removal of an old machine.
Processes 08 00358 g006
Figure 7. An ICTPN for the reconfigured system by removal of an old machine.
Figure 7. An ICTPN for the reconfigured system by removal of an old machine.
Processes 08 00358 g007
Figure 8. An ICTPN for the reconfigured system by rework.
Figure 8. An ICTPN for the reconfigured system by rework.
Processes 08 00358 g008
Figure 9. Reachable marking of an ICTPN example, as shown in Figure 2.
Figure 9. Reachable marking of an ICTPN example, as shown in Figure 2.
Processes 08 00358 g009
Figure 10. Comparison of utilization for the Petri net model in Figure 2.
Figure 10. Comparison of utilization for the Petri net model in Figure 2.
Processes 08 00358 g010
Figure 11. Comparison of throughput for the Petri net model in Figure 2.
Figure 11. Comparison of throughput for the Petri net model in Figure 2.
Processes 08 00358 g011
Figure 12. Comparison of the throughput time per part for the Petri net model in Figure 2.
Figure 12. Comparison of the throughput time per part for the Petri net model in Figure 2.
Processes 08 00358 g012
Figure 13. Comparison of WIP for the Petri net model in Figure 2.
Figure 13. Comparison of WIP for the Petri net model in Figure 2.
Processes 08 00358 g013
Table 1. Structural complexity comparison with the existing policies.
Table 1. Structural complexity comparison with the existing policies.
ParametersChen et al. [33]Piroddi et al. [34]Chen and Li [35]Chen et al. [36]Kaid et al. [37]Proposed ICTPN Model
No. idle process places222221
No. operation places12121212124
No. resource places444440
No. transportation places222221
No. transitions14141414148
Monitors852210
Arcs3723121290
LivenessLiveLiveLiveLiveLiveLive
Reachable marking2052052052052056
Table 2. Time performance comparison with the existing policies.
Table 2. Time performance comparison with the existing policies.
ParameterChen et al. [33]Piroddi et al. [34]Chen and Li [35]Chen et al. [36]Kaid et al. [37]Proposed ICTPN Model
M 1 utilization%18.7517.708317.708317.708317.708330.625
M 2 utilization%3533.333333.333333.333333.958336.4583
M 3 utilization%12.513.7514.37514.37512.551.25
M 4 utilization%22.521.666720.833320.833322.515
R 1 utilization%39.58334040.416740.416739.583344.583
R 2 utilization%29.3753030303061.25
Total throughput of Parts464646464749
Work-In-Process3.92713.933313.84803.96673.38543.31222
Throughput time per part (min)10.332110.232510.555410.663510.21279.7959

Share and Cite

MDPI and ACS Style

Kaid, H.; Al-Ahmari, A.; Li, Z.; Davidrajuh, R. Intelligent Colored Token Petri Nets for Modeling, Control, and Validation of Dynamic Changes in Reconfigurable Manufacturing Systems. Processes 2020, 8, 358. https://doi.org/10.3390/pr8030358

AMA Style

Kaid H, Al-Ahmari A, Li Z, Davidrajuh R. Intelligent Colored Token Petri Nets for Modeling, Control, and Validation of Dynamic Changes in Reconfigurable Manufacturing Systems. Processes. 2020; 8(3):358. https://doi.org/10.3390/pr8030358

Chicago/Turabian Style

Kaid, Husam, Abdulrahman Al-Ahmari, Zhiwu Li, and Reggie Davidrajuh. 2020. "Intelligent Colored Token Petri Nets for Modeling, Control, and Validation of Dynamic Changes in Reconfigurable Manufacturing Systems" Processes 8, no. 3: 358. https://doi.org/10.3390/pr8030358

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop