Next Article in Journal
Read Reference Calibration and Tracking for Non-Volatile Flash Memories
Next Article in Special Issue
Edge Container for Speech Recognition
Previous Article in Journal
Bioinspired Auditory Model for Vowel Recognition
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Review

Challenges in Application of Petri Nets in Manufacturing Systems

by
Iwona Grobelna
1,* and
Andrei Karatkevich
2
1
Institute of Automatic Control, Electronics and Electrical Engineering, University of Zielona Góra, 65-516 Zielona Góra, Poland
2
Department of Applied Computer Science, AGH University of Science and Technology, 30-059 Kraków, Poland
*
Author to whom correspondence should be addressed.
Electronics 2021, 10(18), 2305; https://doi.org/10.3390/electronics10182305
Submission received: 23 August 2021 / Revised: 16 September 2021 / Accepted: 17 September 2021 / Published: 19 September 2021

Abstract

:
Petri nets are a useful mathematical formalism for specification of manufacturing systems, supported by various analysis and verification methods. The progress made in automating control systems and the widespread use of Industry 4.0 pose a number of challenges to their application, starting from the education at university level and ending with modelling of real case studies. The paper aims to present and analyse the most relevant challenges and opportunities related to the use of Petri nets as a modelling technique of manufacturing systems. The review of the literature is primarily based on the years 2019–2020 to reflect the current state of the art. The newest approaches to deadlock prevention and recovering, but also other important analysis problems and difficulties in modelling real industrial processes are discussed. Trends for the future are also identified.

1. Introduction

Petri nets are a well-established mathematical representation of a discrete event system inspired by a PhD thesis of Carl Adam Petri from 1962 [1]. They are considered in the theory domain at the intersection of computer science, automatic control, and operations research [2]. Petri nets (PNs) allow for a simple representation of the discrete event systems [3], and hence they are widely used in control [4] and manufacturing systems [5]. The conference paper [6] from 2019 offers a good introduction to the topic and shows how Petri nets have been efficiently used as a tool for modelling, simulation, analysis, and control of automated manufacturing systems. Various aspects of behaviour, such as choice, concurrency, synchronisation, or shared resources, can be modelled in an easy way. The systems can be modelled both using the top-down and bottom-up methodologies. To address the specific application domains, several extensions of PNs have been proposed, including interpreted models and timed models.
The main benefit of using Petri nets is that they are a formal model, which means that various mathematical analytic methods [7,8,9] and verification techniques, including model checking [10,11,12,13], can be directly applied to them. There are also multiple tools that support system modelling [14], such as Yasper [15], CPN Tools [16], PIPE2 [17], GPenSIM [18], or IOPT-tools [19], to name just a few. Certain models and modelling languages used for manufacturing systems and posing similar challenges have been known for a long time but are still actual and present in the recent literature, including Grafcet [20], Business Process Model and Notation (BMPN) [21], Unified Modelling Language (UML) [22], Systems Modelling Language (SysML) [23], max-plus algebra [24], or Markov models [25]. Petri nets, as a general-purpose mathematical tool used in discrete event systems of different kinds, cover a well-established knowledge base arising from various application areas. Their simplicity of use and formal notation allow their application to various formal analysis or verification methods, as well as their automatic translation into models that are very close to the implementation. Important from the point of view of the user is the intuitiveness of graphical representation.
The motivation to write this review paper was to provide both the researchers and the practitioners the latest state of the art of using Petri nets in manufacturing systems. To address this, the literature from the last couple of years has been analysed in order to reveal the current challenges. The obtained results may help indicate future works and research areas that still need to be investigated.
The article aims to present the most relevant recent approaches to the application of Petri net theory in manufacturing systems. Petri nets can be successfully applied as a tool for modelling the manufacturing systems themselves, the control systems, and the fault detection mechanisms [26]. The economic and industrial growth, together with the development of new modern and future oriented technologies evolving within Industry 4.0, requires continuous changes in the methodologies used thus far. Industry 4.0 can be described as a digital transformation of manufacturing processes that are nowadays supported by information and communication technology. There is still a growing trend towards automation in order to automate repetitive and dangerous activities, as well as decision making [27]. Despite the extensive support in theoretical scientific literature, there are still many challenges in the employment of Petri nets in the area. The analysis of the latest research papers also reveals some trends for the future and points out potential research directions. The challenges, revealed in the most recent literature on the application of PNs in manufacturing systems, have been divided into main four groups: education in respect of application of PN models, deadlock prevention and recovery, other analysis problems, and difficulties in modelling of real industrial processes. Here, additionally, the research papers that try to address these challenges are discussed, in order to provide the reader with the latest achievements in these fields.
The main contributions of this paper are as follows:
(1)
showing the recent works using Petri nets in the domain of manufacturing systems;
(2)
identifying the current challenges;
(3)
indicating the future trends in research.
The goal was to focus most of all on the latest approaches shown in the literature in the years 2019 and 2020.
The article is structured as follows: Section 2 provides a brief overview of Petri net theory. Section 3 describes the review methodology and reports the recent application of PNs in the literature, focusing mostly on journal papers. Section 4 identifies and discusses the current challenges regarding education, Section 5—regarding deadlock prevention and recovering, and Section 6—regarding other analysis problems. Section 7 focuses on difficulties in modelling real industrial processes. Finally, Section 8 summarises and concludes the paper, indicating trends for the future.

2. A Brief Theory Background

A Petri net (PN) is a bipartite directed graph with places and transitions [2,3]. It is basically represented as a triple PN = (P, T, F), where P is a non-empty finite set of places, T is a non-empty finite set of transitions, P ∩ T = ∅, and F is a non-empty finite set of arcs describing the connections between places and transitions as F ⊆ (P × T) ∪ (T × P). It should be noted that it is not allowed to connect two places with each other, nor is it allowed for two transitions. A sample PN model of a manufacturing system, for sorting and packaging of two types of components, is shown in Figure 1. Here, the interpreted PN concept is used to include input and output signals communication with the environment (input signals are associated with transitions, while output signals with places). Initially, the boxes for ready components are empty. After the start button is pressed, the production line with components starts moving. The robot sorts the components and puts them into one of the boxes. If a box is full, the appropriate assembly line moves that box and prepares an empty box again (of type A or type B, each time one).
The initial state of the system is reflected by the initial marking, represented by tokens in appropriate places (in the example: in place p1). The choice of initial marking is crucial for the basic properties of the net. For example, the reachability of places depends on initially marked places.
A distribution of tokens in a Petri net is called a marking. A marking of the net evolves when the transitions fire. A transition is said to be enabled (it may be fired) if each of its input places contain a token (in the example: transition after place p1 is enabled). Then, a token is removed from each of its input places (consumed) and added to each of its output places (produced). Additionally (in the high level or interpreted PNs), a transition may be guarded, which means that some conditions are assigned to it, and they have to be fulfilled in order to fire it (in the example: signals associated with transitions). A marking is said to be reachable if there is a firing sequence that results in such a marking. A PN is live if it is possible to fire any transition starting from any reachable marking. A deadlock occurs when a marking can be reached, such that no transition is enabled. A PN is bounded if each of its places can contain a limited number of tokens. Finally, a PN is reversible if it is possible to return to the initial marking from any reachable marking.
Petri nets have evolved to meet the needs of complex systems, and various types of them have been created for particular domains and application scenarios. Thus, nowadays different types of them appear in the worldwide literature and they are used in various research studies, including timed, coloured, interpreted, stochastic, or even fuzzy models.

3. Recent Research in Petri Nets

3.1. Review Methodology

To reflect the latest state of the art regarding application of Petri nets in manufacturing systems, we performed the research through a search for recent papers, independently by both authors of the manuscript, including the following databases: Elsevier, IEEE Xplore Library, MDPI, and Springer. The search was conducted between 1 January and 30 June 2021 with the keywords “Petri nets” combined with particular topic (“manufacturing”, “deadlock prevention”, “deadlock recovery”, “analysis”, “education”, “teaching”, “industrial”, “industry 4.0”) and then restricted only to the years 2019 and 2020. The matching papers were judged on the basis of the full text content. If a paper was not applicable for manufacturing systems at all, it was excluded from consideration, unless it provided other useful information. Then, the time period was extended to the years 2017–2020 to cover also other, quite recent, essential publications that influence the current state-of-the-art knowledge. Finally, considering especially the queries related to education and teaching, the time period was unlimited, due to the limited number of articles contributing to this topic.
The main research questions were defined:
RQ1: In which areas of manufacturing systems are Petri nets applied currently?
RQ2: Are there any new contributions to education on the Petri nets topics?
RQ3: What has been recently done in deadlock prevention and recovering topics?
RQ4: What are other important Petri net analysis problems nowadays?
RQ5: What are the difficulties in modelling real industrial processes?
RQ6: What are further possible research areas related to applications of Petri nets?
The review methodology is schematically illustrated in Figure 2. Additionally, some details of the obtained literature are provided.
In order to select only relevant papers that could help to answer the research questions, we defined some inclusion and exclusion criteria. The inclusion criteria were specified as follows:
IC1: The paper contributes to the theory of Petri nets.
IC2: The paper is strictly related to the area of manufacturing systems.
IC3: The paper was published either in 2019 or in 2020.
IC4: The paper is written in English.
After the initial literature review, the inclusion criterion IC3 was extended to the time period 2017–2020, and for education and teaching, without any restriction.
The exclusion criteria were specified as follows:
EC1: Approach not applicable in practice.
EC2: The paper does not introduce a new concept.
EC3: The paper is not written in English.
The analysis of selected papers was intended to answer the research questions. Recent application of Petri nets (RQ1) is highlighted in the following subsection. Section 4, Section 5, Section 6 and Section 7 refer to research questions RQ2–RQ5. The last research question (RQ6) is addressed in Section 8. In the article, the most significant and recent works contributing to the topic have been included.
The extensive search through popular databases also revealed that the interest of the scientific world in Petri net theory has remained at a similar level for many years, as shown in Figure 3. The substantial decrease can only be observed in IEEE conference papers; however, the trend should be investigated further, as a possible reason might be that not all conference papers from the year 2020 have already been indexed in the second quarter of year 2021.

3.2. Recent Applications of Petri Nets

Petri nets have been used in various research projects in recent years, not only in manufacturing systems, but even supporting the fight against the COVID-19 pandemic. Timed coloured PNs applied as models used to manage healthcare systems turned out to be valuable in these especially challenging times [28]. Simulation techniques can prepare hospitals for a virus outbreak, as the hitherto workflow was not optimal for COVID-19 patients (according to a study conducted in Iran). A discrete-event simulation led to a significant reduction in patient waiting time.
Classical manufacturing systems used in the industry for decades are being increasingly replaced by smart manufacturing systems [29,30]. Cyber-physical systems (CPS) [31], integrating physical and software components, play an important role in the smart manufacturing systems and are the core of Industry 4.0 [32]. The common problem addressed in the literature is the construction of a PN model and enormous size of its state space in real-life applications, resulting in great computational complexity of analysis. There are therefore many works aiming at reduction of the reachability graph and the analysis time. Development of modern complex production processes for Industry 4.0 can be supported by code generation for Arduino [33]. Petri nets can also enhance the human-machine safety interaction and improve production efficiency [34].
Flexible manufacturing systems that adapt to facts and situations in order to remain competitive in the market [35] are also widely supported by PN formalism. Even large Petri nets can be efficiently used when they are decomposed into smaller subnets [36]. Practical implementation of a set of PN controllers based on PLCs within a reasonable time is shown in [37]. To make the analysis of big PNs more effective, additional tools may be used, e.g., GPenSIM [18] (General Purpose Petri Net Simulator) that enriches the MATLAB platform with PN language. The flexibility of production can be also simulated with PNs, as shown in reference [38]. Process dynamics in a microcontroller-based radiation monitoring system are studied in [39]. Modular PNs are especially suitable for large real-life systems [40], as the size of the models is reduced to simplify the analysis performance. Smaller modules after decomposition allow us to exhaustively analyse the whole state space. Production processes are also modelled using a PN concept with two types of transitions (independent or controlled) [41]. PNs, combined with graph convolutional network and deep reinforcement learning, can also be applied to solve the dynamic scheduling problems [42], e.g., involving shared resources or route flexibility. The problem of modelling, control, and validation of dynamic changes is also addressed in reference [43].
Design and verification aspects of CPSs are discussed in [44], wherein the control part is specified with a safe and live Petri net. Methods for analysis of concurrency and sequentiality relations are provided in [45]. Going somewhat beyond CPSs into the domain of power engineering, PNs can also be used for specification of control algorithm of matrix converters [46], formally verified with symbolic model checking and rule-based logical model [12] and implemented in an FPGA device. Other approaches combine PNs with synchronous dataflow (SDF) [47] to reduce and predict the total amount of initial data SDF channels. Coloured PNs can be applied in design of multi resident smart home data generator [48] or for maintainability evaluation [49]. The concepts of the so-called process PNs and traceability PNs have been introduced for dynamic manufacturing processes in CPSs [50], proved to be successful in a real-life quality control system for bee products in China.
Some authors have also focused on fuzzy models, which can deal with imprecise, vague, or fuzzy information [51]. Thus, fuzzy interpreted PNs (FIPN) for control of a discrete event system are used in [52], with the advantage of quick creation of PLC program code. Fuzzy reasoning PNs (FRPS) are integrated in a reliability-based and cost-oriented product optimisation method, together with particle swarm optimisation in [53]. Dynamic adaptive fuzzy reasoning PNs (DAFRPN) for modelling of energy saving operations in manufacturing systems are in turn proposed in [54]. Another approach uses fuzzy PNs in modelling and simulation of the algorithms for self-navigating robots [55], benefiting from mathematical representation. It is worth mentioning here that fuzzy logic controllers for autonomous mobile robot navigation are gaining popularity in the recent years and now play an important role in shaping academic research [56]. A DAFRPN concept is also used [57] to evaluate reliability of a manufacturing system with multiple production lines.
Many researchers have also devoted their attention to timed models that integrate time variables into PNs [58]. In [59], timed coloured PNs are applied in flexible manufacturing systems. Timed PNs are also used in [60] to solve some scheduling problems. Generalised Stochastic Timed PNs for performance evaluation of real-time systems in the manufacturing domain are proposed in [61]. Flexible manufacturing in uncertain environments, where uncontrollable events may occur, can also be modelled with timed PNs [62]. For each solution, the risk of firing of uncontrollable transitions is evaluated. Anomaly detection in discrete manufacturing systems, supported by PNs, in shown in [63]. Although the article focuses on two algorithms with pattern relation tables, their effectiveness is tested by artificial data sets generated by timed PNs. General multi-objective scheduling problems are modelled with PNs in [64].
There are also various research papers close to the pure manufacturing domain, focusing on smart, autonomous, and transportation systems. A comprehensive survey on PN models for transportation systems and freight logistics is provided in [65], focusing on various types of transport. Extended object-oriented PNs (EOOPN) are used in [66] for a vulnerability model and an evaluation procedure of a communication-based train control system. The PN models are used to analyse effectively the distributed multi-level structures. Input-Output Place-Transition (IOPT) PNs with web-based IOPT-Tools [19] were applied in the NOVA-MAS project [67] to support data acquisition, analysis, and infrastructure control along public roads. Batch PNs for modelling of road traffic flow in intelligent transportation systems are proposed in [68]. Generalised nondeterministic batch Petri net (GNBPN) models are combined with a dynamic estimation of intersection turning movement counts for predicting the road traffic flow in [69]. A message-driven PN framework with hierarchical interpreted binary PNs for implementing autonomous driving behaviours is introduced in [70]. The decision-making process in the context of energy and environmental management is represented as a PN model in [71]. Formal verification of robotic systems, without modelling them with a specific formalism, is proposed in [72]. PNs for simulation of multi-constraint analysis for the process of integrated modular avionic dynamic reconfiguration are used in [73]. A PN conceptual model can also be mapped into FlexSim (simulation tool) format to simplify the verification of simulation models [74]. The chance of introducing errors is minimised and the time needed to start the verification is reduced. This approach is one of the few from the literature that uses professional commercial software.
To summarise the above overview on the most recent applications of Petri nets in manufacturing systems, various research projects are conducted worldwide, focusing on diverse aspects and applying miscellaneous types of Petri nets. The modern technology within Industry 4.0 strongly influences the research objects, and the researchers try to improve and simplify the design process by ensuring at the same time the proper, safe, and reliable functionality of systems.

4. Challenges Regarding Education in Respect of Application of Petri Net Models

Petri nets, as a mathematical formalism, have been since the beginning of their development mostly used in research laboratories and academic institutions [75], and rarely in the everyday practice of industrial engineers. However, as in other domains of science, some of the approaches can be practically applied, as already shown in the previous section. In the learning and development of engineers, PN theory appears during various academic courses. There are not many recent publications regarding Petri nets in education, and hence the rest of the section is based on some older articles, while the current state of the art in education is updated and described to the best of the authors’ knowledge. The considered aspects related to education can be divided into the main thematic groups as shown in Table 1.
The trends in industrial electronic education for the last 10 years have been identified in [76]. The big challenge, despite the limited time for courses that have to combine the classical theory with the newest content, is the interdisciplinary and multidisciplinary approach. Indeed, the application of PNs in modern manufacturing systems necessitates the knowledge becoming much broader than pure computer science. Recommended principles for teaching formal methods for software engineering [77] include, among others, making various tools available to the students and teaching by using examples from a domain familiar to the target group.
Already in the year 2010, the authors of [76] predicted that an increasing number of students would not attend lectures or labs personally, and that the educational tools should nonetheless be available to them. A short while earlier, namely, at the beginning of the 21st century, a PN software tool called P3 was proposed, which was developed especially for learning purposes [78,79]. It has been evaluated through the subjective experience of students (fourth year undergraduate studies of computer engineering at the Military Academy in Belgrade) and teachers. All students were consistent in agreeing that the P3 tool was useful for understanding PN concepts; moreover, the average student score was higher with P3 than without it (by a slight amount). Thus, P3 has been claimed as a convenient tool for realising the need of PN model analysis, especially suitable in the first phase of learning. Another tool intended to teach the beginners is shown in [80]. It is relatively simple to use yet sufficiently detailed to aid in understanding the important concepts of Petri nets. An extensible PN editor and analyser for education and research, called PetriDotNet, is proposed in [81]. It has been successfully used at the Budapest University of Technology and Economics. Although initially dedicated to students, it has been proven to be able to serve both academic and industrial needs [82]. Proposed in [83] is a more recent tool, called GreatTeach, for teaching PNs (in particular, stochastic PNs), resulting from teaching master students at the University of Torino. It has some enhanced features for graphical visualisation and a streamlined interface, such that basic learning objectives require just an easy interaction with the tool. A software tool, called PN2ARDUINO, for modelling and control of discrete-event and hybrid systems using timed interpreted PNs has been recently introduced in [84,85] to improve education and practice in cyber-physical systems. It offers a graphical environment, making it especially suitable for beginners. CPN Tools [16], which allows for editing, simulating, and analysis of classical, timed, interpreted, and coloured Petri nets, are used successfully at the AGH University of Science and Technology (Poland) in the Formal Methods course.
From the perspective of time, remote laboratories—first dedicated to student autonomous learning activities and to support life-long learning [86]—have become a necessity. The role of remote laboratories, which provide continuous access to specialised software and hardware platforms, has been significantly increasing recently. Programming and testing of physical devices can now be performed in a remote way [87], as well as building and testing of real analogue electronic circuits [88], even supported by speech recognition technology [89]. Remote laboratories for controlled education that offer flexible time access to best utilise the available laboratory equipment have been evaluated at a university in Chile [90] as being especially effective. The global situation has changed to a large extent, especially due to the COVID-19 pandemic that has temporarily closed most of the universities in highly developed countries. Students have been isolated at their homes and have had to get used to the new remote education, with remote lectures, laboratories, and practical exercises. Universities worldwide had to move towards online learning, where the self-motivation of students plays an important role [91].
To the best of the authors’ knowledge, only a few papers focus on teaching Petri nets in detail. An interactive approach to teaching coloured PNs is proposed in [92]. It involves an interactive model building with active audience participation and is suitable for short, intensive courses. However, it is said that more time is needed for the audience to better understand the formalism used. An implementation of project-based learning to a graduate course focusing on the event-driven simulation with coloured PNs is described and evaluated in [93]. Project-based learning is a student-centred pedagogy and is nowadays gaining more attention in engineering education [94]. The teaching of Petri nets for software development is discussed in [95]. Practical experiments on students have been carried out, with an introductory phase followed by an intensification phase. Explicated process models have been used to restructure and augment worksheets. The resulting improved learning materials allow the students to work more independently with less confusion and frustration.
From the cited works, it can be concluded that Petri net education may be realised in various forms, provided that enough time is reserved to get to know the theory and perform some practical exercises. Hence, the current challenges regarding education are mainly twofold: (1) remote education and (2) how to fit interdisciplinary aspects into the limited duration of a course.
Generally, teaching Petri nets has changed a large amount since the beginning of the PN theory, but the changes took place gradually, mainly due to the technological progress, hardware possibilities, and available software. What differs greatly over the last two years is the suddenly forced remote education, which has affected all areas of education. Its influence on the future engineers will be known soon.

5. Challenges Regarding Deadlock Prevention and Recovering

An important topic related to the application of Petri nets in modelling the manufacturing systems is dealing with deadlocks. PNs are a convenient formalism to deal with deadlock problems and are widely used in this area. The theory of deadlocks is extensively developed.
Deadlocks are considered as undesirable states in a manufacturing system and block its functioning. For this reason, either a system should be constructed in such a way that the deadlocks cannot happen, or it should be able to recover from the deadlocks. These two options correspond to the two main approaches to the deadlock problem: their prevention or recovery (in some cases classifying a method as belonging to one of the mentioned groups is not unequivocal). The importance of the problem is confirmed by a great number of recent publications on this topic.
Automated manufacturing systems in the context of deadlock prevention are usually modelled by means of special classes of PNs, representing the simple sequential processes and the resources they share (presented by the places) or more complicated models of a similar kind. The classical paper of this area is [96]. There are two main approaches to solving the problem of deadlock prevention: one is by adding the control places (monitors; composition of such control places is called a supervisor) ensuring that no siphon can become empty, which guarantees deadlock freeness; another is a deadlock avoiding policy forbidding firing of certain transitions in certain states that lead to the deadlocks [97]. Clearly, the first approach requires structural analysis of the PNs, and the second one requires state space exploration. The developers of the deadlock prevention methods try to provide a maximum permissive behaviour of the system, which means that the optimal deadlock prevention forbids only “bad” markings, leaving all the “good” markings reachable. A “bad” marking is a deadlock or such a marking that, after reaching it, the system cannot avoid deadlocking after a finite number of transition firings.
A large number of recent papers have developed deadlock prevention methods. In [98], the classical method from [96] is combined with a method of transformation of a PN model into a ladder diagram for an automated manufacturing system. Several challenges are listed in this paper, including development of deadlock control methods for the models involving fault tolerance and reconfiguration and for different kinds of non-pure PNs. In [99], a method of deadlock avoidance in the resource allocation systems within the agent-based flexible manufacturing systems is presented. The resource allocation systems are modelled with PNs, and the minimal siphons of such nets are computed using the linear algebraic approach (it is stressed that the computational complexity of such calculation is polynomial for the considered systems). Then, the control places are added to the elementary siphons. This enforces deadlock-freeness, liveness, and reversibility. However, in some cases, the transformed nets still may have partial deadlocks, and the trial-and-error method has to be used to find the initial markings of the monitors to guarantee deadlock-freeness. The focus of the paper is an efficient application of a PN-based deadlock avoidance policy to the agent-based manufacturing systems. A method in which a control place and a control transition are added to a siphon of an ordinary PN is described in [100]. It is claimed that the resulting controlled PN is live and has the same number of reachable markings as the original net, and hence this number is higher than a maximally permissive deadlock avoidance policy can provide. Another algorithm for construction of the supervisors for deadlock avoidance in the PNs is proposed in [101], which, according to the experimental results, is competitive in time consumption compared to other methods and provides a maximally permissive policy.
In [102], the siphon-based approach is also used; however, it is combined with the state space exploration. The proper connections of the control places with the rest of the net to ensure the forbidding of the illegal markings can be obtained via solving the integer linear programming (ILP) problems. This method is time-consuming, not only because of the need of the reachability analysis, but also because the number of ILP problems that have to be solved may be large. The authors propose several ideas to reduce the computations. First, they introduce an alternative coloured PN model of the automated manufacturing systems, called a resource-oriented PN (ROPN), instead of the better-known process-oriented PN models, and argue that in such nets, the number of the illegal markings is much lower. Then, the markings not belonging to the set of first-met illegal markings are excluded from the consideration, in so far as they are forbidden, and all other illegal markings are made unreachable (this idea is used in several earlier publications; the notion of the first-met bad markings was defined in [103]). Further simplification is obtained by taking advantage of the ROPN structure. The linear programming problems to be solved in forbidding a marking are also simplified. The proposed method provides maximally permissive deadlock prevention. Minimisation of the number of control places (which may be redundant) and further reduction of computational complexity are mentioned as open problems.
The deadlock control problem in automated manufacturing systems is addressed in [104], with a discussion of often used solutions based on structural analysis (e.g., siphons) and a proposal of improved multi-step look-ahead control policies. They are claimed to be fully applicable to more complex systems, including a model with an one-unit resource shared by two or more perfect resource-transition circuits not containing each other. A two-step robust deadlock control policy for systems of the simple sequential process with resources based on elementary siphons is proposed in [105], and the developed controller does not need to compute reachability graphs.
Simplification of the monitor part of the nets is the topic of some other recent publications, where special kinds of partitions are used for such simplification. Another point of view is presented in [106], where the coloured capacity concept is proposed in coloured resource-oriented PN. A new execution rule for transitions is introduced and the coloured capacity function of each place can be obtained, which makes the structure of the net simpler than in case of the net with control places. A two-step robust deadlock control approach is described in [107]. Firstly, a controlled PN model is developed on the basis of strict minimal siphons. Then, all added control places are merged into one control place, which may contain the tokens of different colours and serves as a monitor for all minimal siphons. The experiments described in the paper show that the obtained net is simpler than the nets obtained with the known methods, and less computation is needed. In the paper GPenSIM Tool is also presented, which has been designed (by one of the authors—R. Davidrajuh) to model, control, simulate, and analyse discrete event systems, including PNs. According to the authors, the most challenging research topic in this area is developing deadlock control policy methods for the reconfigurable systems.
Indeed, in most of the publications in this area, the structure of the modelled system is considered to be stable, and no part of it can be changed or fail. Of course, sometimes possibilities of changes such as resource failures have to be taken into account. In [108], deadlock avoidance in manufacturing systems with multiple resource failures is considered. The proposed method is siphon-based, and the control places are added in a different way to the siphons with reliable and unreliable resources. A resource is considered as a machine, and the proposed control policy is oriented toward continuing of production of what can be produced without the failed resource. The authors claim that their method provides a better permissive behaviour and higher robust control level than other similar methods. Similar problems are dealt with in [109], where a new PN model—a simple sequential process with resources and part-re-entry—is proposed, and which can model a limited reconfigurability, i.e., the systems in which a failure of production and re-entry of a failed part is considered. The proposed siphon-based policy prevents deadlocks and guarantees boundedness and reversibility. Generalisation of the results to wider PN classes and increasing of the computational efforts by means of avoiding a complete siphon enumeration are mentioned as future work. An automatic supervisory controller for deadlock control in reconfigurable manufacturing systems with dynamic changes is modelled with PNs in [110]. The architecture of a system may be modified during its operation, which requires a quick and accurate reconfiguration of the model.
The novel approach to verify the nonblockingness of a PN is introduced in [111]. Nonblockingness means that at least one of the selected final markings is reachable from every reachable marking of the net. To verify it, a basis reachability graph (containing only a subset of the reachable markings) is constructed, and a set of integer linear programming problems is solved. Duplicated transition labels are proposed in [112] to avoid deadlocks in PN models. Algorithms with polynomial-time complexity are proposed to correct every inconsistent substructure (substructure that yields deadlocks) by adding a new transition associated to an event symbol already assigned to a transition in the inconsistent substructure. Deadlock-freeness in timed PN systems with uncontrollable transitions is addressed in [113], with the enforcement of generalised mutual exclusion constraints. A control function is designed in order to restrict the firing intervals of transitions, and thus the system can avoid entering the forbidden states. Computation of the state graph is performed online, on the basis of the concept of Reduced Modified State Class Graph.
The main contributions in recent publications regarding deadlock, involving deadlock prevention and deadlock recovery, are summarised in Table 2 and Table 3. It can be concluded that deadlock detection and prevention is much more often investigated than deadlock recovery, mainly because of the problem of complexity.
In contrast to deadlock prevention approaches, there are less publications on deadlock recovery. One of the newest is [114], where the idea is to detect all legal markings and all deadlock markings via state space exploration and to consider adding the transitions leading from a deadlock marking to a legal marking. The proposed algorithm adds the transitions in such a way that their number is minimised. The method is computationally complex because it requires the construction of a full reachability graph and consideration of all pairs with deadlock marking—legal marking, but the resulting net in many cases is simpler than the nets obtained by other known methods. A less straightforward, iterative method of solving the same problem is presented in [115]. The method applies a vector intersection approach, which has lower computational complexity, but does not guarantee the minimal number of recovery transitions. However, in the paper, the same known examples of the nets are considered, as in [114], with the same or similar results. Another deadlock recovery method based on adding the special transitions to recover from the deadlock markings of the original net is presented in [116]. The method is iterative and, according to the authors, leads to the obtaining of a live net in which all the markings of the original net are reachable. However, the method requires full state space exploration. One more method of deadlock recovery for manufacturing systems is presented in [117]. The bad markings only are detected, instead of executing a full state space exploration, by means of solving an integer linear programming problem to detect possible markings with empty syphons, and then the set of markings in the dead-zone is calculated to find all first-met bad markings. The main advantage of the approach is that only a part of the reachability graph has to be searched. However, the method may lead to the detection of the unreachable markings among the bad ones; moreover, it does not guarantee that after the introduction of the monitors all the legal markings will remain reachable.
In the classical Petri net theory, the deadlock detection methods are deeply investigated, while the approaches dealing with deadlock avoidance and recovery are relatively newer. Comparing the recent research on deadlock avoidance with the older approaches, some of the novel methods can be noticed, that (a) take into account more general models, including the ones with changeable structure or involving time; (b) are less computationally complex than the previously known; (c) introduce less and simpler changes to the systems to avoid deadlocks; (d) provide more permissive policy. Certainly, none of the methods covers all the mentioned items.
Deadlock recovery is rather a new topic, at least in respect of Petri nets. There are publications on deadlock recovering in other models; however, according to our knowledge, deadlock recovery methods for Petri nets started to be developed during the last 10 years. The recent publications mainly present the research efforts in two different directions, namely, minimisation of number of recovery transitions and decreasing the computational complexity of the methods.
In sum, the following main challenges in the area of deadlock avoidance and recovery have been identified: (1) more permissive policy for the systems with unreliable resources and the systems with possible failures, (2) deadlock avoidance and/or deadlock recovery for the reconfigurable systems, (3) simplification of the structure of the monitor part of the systems and decreasing of computational complexity of the methods, and (4) developing of deadlock control and recovery methods for extended models such as PN with inhibitor arcs and enabling arcs.

6. Challenges Regarding Other Analysis Problems

Although Petri nets in their classical form have only a few kinds of elements (places, transitions, arcs, tokens), they can be easily combined in a way that creates a system with complex behaviour. Some additions that may be practically important in modelling of manufacturing systems, such as transition guards, complicate the analysis of their behaviour even more. Review of the latest research results presented in the literature (please refer also to Section 3) has revealed some challenges that are still actual. The most desirable properties, in general, are liveness and deadlock-freeness. In some applications, other properties may also be essential, such as boundedness, reversibility, or determinism. Certainly, analysis of the specific properties that can be specified by means of the temporal logics formulae and verified, e.g., with the model checking approach is also very important. Many analyses and verification methods are based on state space exploration. The state space analysis and state explosion problem (exponential growth of the state space with growth of the system) continues to be an important challenge for several decades [5,40,50,117,118]. In complex systems the state space can be huge or even infinite, which makes their analysis difficult. Petri net analysis methods suffer therefore from combinatorial and complexity problems, especially when the embedded systems have to be analysed [73], and it is sometimes not an easy task to use them for the analysis of models of complex systems with a significant number of states.
One of the recent publications in this area is [119], where an algorithm to solve the reachability problem is proposed. The reachability problem is fundamental for PNs and, generally, for the analysis of parallel systems, because many other problems of analysis can be reduced to reachability. The authors propose a method based on the net reduction and state compression technique, which allows for the generation and storage of state spaces in an efficient way; however, it is still time-consuming (exponential in the worst case). Moreover, [119] includes an interesting overview of the existing methods of handling the state explosion problem
New analysis tools for PNs and their extensions have been developed. One of them is a new model checker for PNs (AdamMC) presented in [120]. It is able to check LTL formulae for safe PNs. Moreover, it deals with the extension of PNs, the so-called PNs with transits, which allow, with safe PNs as their underlying structure, the modelling of data flows. It can be seen as an alternative approach compared to coloured PNs. The authors also develop a temporal logic called Flow-LTL, being an extension of LTL. Flow-LTL allows for the specification of the flow of data and the use of both places and transitions of PNs as the atomic propositions, specifying the fairness assumptions in an easy way. AdamMC is the first model checker that makes it possible to check whether a PN with transits satisfies a Flow-LTL formula (it reduces this problem to checking an LTL formula for a safe PN). The parallel approach implemented in the model checker leads, according to the experiments, to essential performance gains.
In sum, the main innovations in the considered area are connected with development of methods limiting the state explosion during analysis and with development of new analysis software tools, including model checkers.
The main challenge in the analysis of Petri net models, including the models applied to manufacturing systems, is dealing with the already mentioned state explosion problem. This challenge is in a sense permanent, in so far as some such problems are NP-complete or belong to other classes of problems which are difficult to solve [121]. It is important (and is going to remain so) to detect the subclasses of the models which can be analysed in polynomial time and to develop the methods decreasing the computational complexity of analysis in other cases. In some practical cases, the development of approximation algorithms can be justified (in this context it may be, e.g., an algorithm which detects a fault in a model, not in 100% of cases, but with high probability).
Other challenges, such as efficient composition and decomposition of big systems and analysis of specific models and behavioural properties, are mentioned in recent publications. Moreover, development of the analytical approaches to the extended PN models used in modelling of real-life systems is important. Developing efficient software tools for analysis is also ongoing, in so far as they are necessary for the practical application of the analytic methods.

7. Difficulties in Modelling of Real Industrial Processes

In real industrial processes, some aspects become more important than in theoretical considerations. One of these is the concept of time. To precisely reflect the time points in the models, Petri nets have to be equipped with a clock structure [50]. Such models are then especially valuable for time series analysis and dynamic optimal control. Another aspect related to time is determinism. Although this refers to the net structure, it is also a challenge in practical applications.
Determinism, as a property of a model, guarantees a predictable behaviour of the system. Initially, PNs were fully non-deterministic [2], but soon there appeared various approaches that allowed the modelling of determinism. Some types of PNs use additional time variables to ensure the deterministic behaviour. For example, deterministic timed PNs (DTPNs) [122] introduced deterministic time delays into the net structure, while in discrete deterministic and stochastic PNs (DDSPNs) [123], transitions can fire either in zero time or according to arbitrary firing times (represented as time to absorption in a finite absorbing discrete-time Markov chain). The deterministic behaviour can also be achieved with the net structure by assigning some guards to transitions in an appropriate way, e.g., for transitions in conflict, they should contradict. An alternative way of solving the conflicts is by introducing priorities. Then, whenever two or more conflicting transitions are simultaneously enabled, the transition with higher priority fires first [3]. These classical approaches in the literature are also supported by some recent research. Determinism is now especially important in cyber-physical systems [31], where the determinism in software does not always result in the determinism of hardware. A determinism-oriented modelling technique with interpreted PNs for the control part of a CPS is proposed in [124]. The determinism can be handled in concurrent control systems in two ways—either weakly or strongly. The strong approach relates more to a local determinism, where the occurrence of particular input signals directly controls all reactions in the system (i.e., even in the concurrent parts the processes are fully determined). In turn, the weak approach can be treated as more global and the occurrence of the particular input signals controls only some reactions in the system (i.e., in the concurrent parts the processes remain independent). Hence, a PN consisting of weakly deterministic parts is also weakly deterministic. However, a PN consisting of strongly deterministic parts may also be weakly deterministic—and such a situation is typical for concurrent control systems (necessary to benefit from the real concurrency).
To model determinism correctly, two different notions of time can be used [125,126]—a logical one and a physical one. Logical time is usually distinct from physical time. It corresponds more to the model than to the implementation (in contrast to physical time), and this may result in the fact that some logically simultaneous actions are indeed realised in a nondeterministic order. The relationship between the state of the software (usually concurrent and distributed) and the state of the physical system can be complex, because of the nature of the physical components. Thus, in real applications, it is often not known in which order the two actions will be performed, which may sometimes be dangerous (e.g., in a train, locking the door and starting to move can be logically simultaneous, but physically not, and thus it may happen that the train starts to move before the door is closed [127]). An approach to overcome this problem, presented in the example of the train [127], is based on the construction of transition system models for the software components of a CPS at different levels of abstraction and with various graininess. A possible solution, known for years from the theory of concurrency and distributed algorithms [128], can also be to ensure that the determinism is already built in at the specification level—so that the logical time refers by some means to the expected physical time—by the use of acknowledgements to guarantee the safety. In systems specified with PNs, it can be done by checking whether the appropriate command has already been executed (i.e., for the above-mentioned example by checking if the door has really been closed before starting to move).
Petri net models of real-time systems can become enormous [40,41]. Their construction is not a trivial task and requires a great deal of experience [75]. Additionally, their simulation and analysis may become slow and ineffective. The analysis of a large PN for its structural and behavioural properties is a time-consuming task. Despite huge state spaces, there are also other pitfalls in modelling and simulation of CPSs [129], including inaccurate or incomplete requirements, precision and complexity, or interpretation of results, where aspects related to CPS structure, behaviour, and environmental conditions have to be taken into account.
Other important issues related to real manufacturing systems are fault-resistance, fault-diagnosis, and fault-recovery, each one gaining a large amount of attention in the literature, and also in the case of PNs [130,131,132,133,134]. Faults may cause undesired reactions and shut-down of a controlled plant, resulting in potential damages to the plant, to personnel, or to the environment [135]. Hence, in order to increase safety and availability, system architecture must be adjusted (e.g., by employing redundant components), and appropriate mechanisms have to be implemented [136].
The correlation between large state spaces and their efficient analysis, together with the nature of continuous processes in various real industrial systems, also appears in the research related to formal verification of such systems. The model checking technique [137] is especially valuable in proving that some requirements are satisfied (or not) in the model. However, the technique also suffers from the state explosion problem [138]. To handle it, model abstractions can be used that reduce the generated state space. The overviews of various approaches to the state explosion problem over many years are presented in [118,138]. Statistical model checking [139,140], which combines simulation and statistical methods for the analysis of stochastic systems, can be used as an alternative to symbolic model checking with the exhaustive exploration of the whole state space. Both formal verification methods are currently being applied to a wide variety of systems, including manufacturing systems [141,142,143,144] or even in the nuclear industry [145]. Formal verification can also be applied for specifications based on Petri nets [12,13,44,120] Formal verification can also be applied for specifications based on Petri nets, as for example that shown in [12,13,44].
One more difficulty in modelling of the modern manufacturing systems is the necessity of taking into account their reconfigurability. The standard PN models do not allow for efficient representation and analysis of large sets of variants in systems. In [146], a notion of PN product line (a variable PN model, which can be used, e.g., for modelling flexible assembly lines) is presented. A prototype tool is described that allows the analysis of certain structural properties of this kind of model.
Certain structural problems represent also actual phenomena, such as the issues of compositionality. In [147], a concept of composition and decomposition of big systems from/to the components with interfaces is proposed. The concept is demonstrated using PNs and can be applied, among others, to workflow models. Identification of the components and their interfaces (perhaps using the theory of regions) is mentioned among the challenges for PN-based modelling of big systems.
As can be seen from the above, the main novelties of the research on modelling the industrial processes and systems are related to better understanding of determinism and time topics, development of the methods of fault diagnostics, recovery and repair using the formal models, and applying of the formal analysis and verification methods to a wide range of manufacturing and industrial systems.
To summarise the above discussions, the current challenges regarding modelling of real industrial processes with the application of Petri nets are mainly threefold: (1) how to properly construct large fault-tolerant models, (2) how to deal with large state spaces, and (3) how to correctly incorporate time into models.

8. Conclusions and Trends for the Future

Petri nets, although introduced in the 1960s of the 20th century, are still an important research object in many research centres around the world. The characteristics of the designed and developed systems has changed a lot since then, and the continuous technological progress constantly forces further changes. Researchers try to adapt and extend the existing concepts or methodologies, in some cases introducing some completely new approaches, in order to meet the new realities. Just as operators within Industry 4.0 should be equipped with digital skills to manage complex modern technologies [148], so should engineers working with Petri nets take into account the variety of systems, components, their characteristics, and their interactions.
In the article, the recently published research results (mostly over the past two years), have been presented and analysed in order to identify the most relevant challenges and opportunities related to the use of PNs for modelling of manufacturing systems. In university-level education, the multidisciplinary and interdisciplinary aspects need to fit into a limited duration of a course, which is especially difficult in distance learning settings. Application of PNs for modelling of modern and flexible manufacturing systems, despite the well-established knowledge in PN theory, still faces various problems related to the structure of the models and their analysis. Regardless of the branch of industry, the models are supposed to be live and not become stuck in any deadlock state. The construction and analysis of the reachability graph is sometimes very difficult, due to the large size of real systems. Finally, coming closer to practice, time needs to be correctly incorporated into models so that the future implementation reflects exactly the modelled system. PN-based modelling of real industrial fault-tolerant manufacturing systems is still a nontrivial task. The current challenges are summarised in Table 4.
Moreover, the paper has provided comprehensive answers to the research questions (defined in Section 3.1). To summarise the most important aspects, current application areas of PNs in manufacturing systems (RQ1, addressed in Section 3.2) are cyber-physical systems, flexible manufacturing systems, complex production processes for Industry 4.0, human–machine safety, solving scheduling problems, maintainability, reliability, and performance evaluation. Recent contributions to PN education (RQ2, addressed in Section 4) mainly involve new software tools, interactive courses, and project-based learning. The relevant contributions in regard to deadlock prevention and recovering are shortly pointed out in Table 2 and Table 3 (RQ3, addressed in Section 5). Other important analysis problems include, among others, analysis of specific properties (e.g., boundedness, reversibility, determinism), dealing with the state explosion problem and efficient composition/decomposition of big systems (RQ4, addressed in Section 6). Modelling of real industrial processes still encounters difficulties in respect to determinism, reconfigurability, incorporating time into models, fault-resistance, fault-diagnosis, and fault-recovery, but also ineffective analysis (RQ5, addressed in Section 7). Finally, from the recent literature overview, some further research directions can be established (RQ6).
The following trends for the future (RQ6) have been identified regarding the application of PNs in manufacturing systems:
(1)
Development and application of extended and high-level models and of methods for their analysis;
(2)
Developing models able to represent reconfigurability, unreliable resources and fault occurrences, and methods of analysis for such models;
(3)
Reducing the reachability graph or even eliminating it in the process of design analysis and verification;
(4)
Incorporating time into general models;
(5)
Simulations based on PN models;
(6)
Putting PNs into practice to enable everyday use of the thus-far developed approaches.
Some implications for the researchers should be especially emphasised. Classical methods of Petri net analysis, similar as most of the new ones, are intended for analysis of the systems with a stable structure. On the other hand, necessity of taking into account faults, reconfiguration, and other changes which can happen to a structure of the modelled system leads to the need for development of new analysis and verification methods for the models with a changing structure. An example may be a Petri net-based model in which, under certain limitations and according to the defined rules, number of places and transitions and/or connections between them can be changed dynamically. Some of the publications describing the research in this direction are mentioned in this paper, but it is definitely not enough, and more effort in this area is going to be practically important.
Another essential topic is related to the computational complexity of the analysis methods or methods related to, for example, deadlock prevention. Their complexity is often too high to make the methods acceptable for large models, especially when they involve time. Of course, the high computational complexity may be not a critical problem if the analysis is performed only at the stage of system design and not during its functioning. Sometimes, however, if a system structure can be modified when the system works, an on-the-fly analysis may be needed. This means that it makes sense to develop the methods which are not exact, but have low computational complexity. On the other hand, e.g., a deadlock prevention or avoidance method should not be inexact in the sense that it can miss some of possible deadlocks, which would be dangerous for practical applications. Rather, it may be not fully permissive. Another prospective approach—often applied, but it seems that still much more can be done in this direction—is reducing the complexity of the tasks to be solved by means of system decomposition.
Engineers rarely use formal models, such as PNs, for design and verification of manufacturing systems, tending to underestimate them. It is right that many important details and aspects of functioning of such systems cannot be easily captured by formal models. However, some verification tasks, such as deadlock prevention, most probably cannot be solved fully enough without formal models and formal algorithms of their analysis. The multitude of existing methods developed in this area provides a broad range of possibilities which can be applied in practice. Generally, formal verification of various properties, e.g., performed using model checking (developed also for the PN based models), can be extremely important practically, preventing crashes and other accidents.
Certainly, some of existing formal methods may have limited practical applicability because they are “too formal”. For example, methods of deadlock avoidance may forbid some necessary system behaviours, and in such cases the problem can be solved not by just applying a deadlock avoidance policy, even if it is maximally permissive, but by correction of the system. Moreover, a deadlock recovery method generally provides “evacuation” from the initially deadlock marking to one of the legal markings without additional limitations, which may be practically impossible or unacceptable in the modelled systems. For such reasons, a dialogue between practitioners and researchers in order to formulate the tasks to make the formal methods and algorithms more practically useful can be fruitful.
The main limitation of the study is that only publications written in English have been taken into account. Some preliminary results, contributing also to the research topic but published in other languages (e.g., presented at local conferences), may have been omitted.
The significant number of articles focusing on the application of Petri nets in manufacturing systems, published in the last two years, confirms that it is still a valid research topic. The recognised challenges will definitely be addressed in the near future.

Author Contributions

Conceptualisation, I.G.; methodology, I.G.; research, I.G., A.K.; writing—original draft preparation, I.G., A.K.; writing—review and editing, I.G., A.K.; visualisation, I.G.; funding acquisition, I.G., A.K. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Petri, C.A. Kommunikation mit Automaten. Ph.D. Thesis, Universität Bonn, Bonn, Germany, 1962. [Google Scholar]
  2. Silva, M. Half a century after Carl Adam Petri’s Ph.D. thesis: A perspective on the field. Annu. Rev. Control 2013, 37, 191–219. [Google Scholar] [CrossRef]
  3. David, R.; Alla, H. Discrete, Continuous, and Hybrid Petri Nets; Springer: Berlin/Heidelberg, Germany, 2010. [Google Scholar]
  4. Reisig, W.; Rozenberg, G. Carl Adam Petri: Ideas, Personality, Impact; Springer Nature Switzerland AG: Cham, Switzerland, 2019. [Google Scholar]
  5. Giua, A.; Silva, M. Petri nets and Automatic Control: A historical perspective. Annu. Rev. Control 2018, 45, 223–239. [Google Scholar] [CrossRef]
  6. Seatzu, C. Modeling, analysis, and control of automated manufacturing systems using Petri nets. In Proceedings of the IEEE 2019 24th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA), Zaragoza, Spain, 10–13 September 2019; pp. 27–30. [Google Scholar]
  7. Karatkevich, A. Dynamic Analysis of Petri Net-Based Discrete Systems; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2007. [Google Scholar]
  8. Giua, A.; Silva, M. Modeling, analysis and control of Discrete Event Systems: A Petri net perspective. IFAC-PapersOnLine 2017, 50, 1772–1783. [Google Scholar] [CrossRef]
  9. Zhong, C.; He, W.; Li, Z.; Wu, M.; Qu, T. Deadlock analysis and control using Petri net decomposition techniques. Inf. Sci. 2019, 482, 440–456. [Google Scholar] [CrossRef]
  10. Wolf, K. Petri net model checking with LoLA 2. In Proceedings of the International Conference on Application and Theory of Petri Nets and Concurrency 2018, Bratislava, Slovakia, 24–29 June 2018; Springer: Cham, Switzerland, 2018; pp. 351–362. [Google Scholar]
  11. Wolf, K. How Petri Net Theory Serves Petri Net Model Checking: A Survey. In Transactions on Petri Nets and Other Models of Concurrency XIV; LNCS 2019; Koutny, M., Pomello, L., Kristensen, L., Eds.; Springer: Berlin/Heidelberg, Germany, 2019; Volume 11790. [Google Scholar]
  12. Grobelna, I.; Wiśniewski, R.; Grobelny, M.; Wiśniewska, M. Design and Verification of Real-Life Processes With Application of Petri Nets. IEEE Trans. SMC Syst. 2017, 47, 2856–2869. [Google Scholar] [CrossRef]
  13. Grobelna, I. Model checking of reconfigurable FPGA modules specified by Petri nets. J. Syst. Archit. 2018, 89, 1–9. [Google Scholar] [CrossRef]
  14. Thong, W.J.; Ameedeen, M.A. A survey of Petri net tools. In Advanced Computer and Communication Engineering Technology; Springer: Cham, Switzerland, 2015; pp. 537–551. [Google Scholar]
  15. van Hee, K.; Oanea, O.; Post, R.; Somers, L.; van der Werf, J.M. Yasper: A tool for workflow modeling and analysis. In Proceedings of the 6th International Conference on Application of Concurrency to System Design, Turku, Finland, 28–30 June 2006; pp. 279–282. [Google Scholar]
  16. Yu, Q.; Cai, L.; Tan, X. Airport Emergency Rescue Model Establishment and Performance Analysis Using Colored Petri Nets and CPN Tools. Int. J. Aerosp. 2018, 2018, 2858375. [Google Scholar] [CrossRef] [Green Version]
  17. Dingle, N.J.; Knottenbelt, W.J.; Suto, T. PIPE2: A tool for the performance evaluation of generalised stochastic Petri Nets. ACM Sigmetr. Per 2009, 36, 34–39. [Google Scholar] [CrossRef]
  18. Davidrajuh, R.; Skolud, B.; Krenczyk, D. Performance Evaluation of Discrete Event Systems with GPenSIM. Computers 2018, 7, 8. [Google Scholar] [CrossRef] [Green Version]
  19. Gomes, L.; Moutinho, F.; Pereira, F. IOPT-tools—A Web based tool framework for embedded systems controller development using Petri nets. In Proceedings of the 23rd International Conference on Field programmable Logic and Applications, Porto, Portugal, 2–4 September 2013; p. 1. [Google Scholar]
  20. Qamsane, Y.; Tajer, A.; Philippot, A. A synthesis approach to distributed supervisory control design for manufacturing systems with Grafcet implementation. Int. J. Prod. Res. 2017, 55, 4283–4303. [Google Scholar] [CrossRef]
  21. Erasmus, J.; Vanderfeesten, I.; Traganos, K.; Grefen, P. Using business process models for the specification of manufacturing operations. Comput. Ind. 2020, 123, 103297. [Google Scholar] [CrossRef]
  22. Azangoo, M.; Taherkordi, A.; Blech, J.O. Digital Twins for Manufacturing Using UML and Behavioral Specifications. In Proceedings of the 25th IEEE International Conference on Emerging Technologies and Factory Automation, Vienna, Austria, 8–11 September 2020; pp. 1035–1038. [Google Scholar]
  23. Steimer, C.; Fischer, J.; Aurich, J.C. Model-based design process for the early phases of manufacturing system planning using SysML. Procedia CIRP 2017, 60, 163–168. [Google Scholar] [CrossRef]
  24. Komenda, J.; Lahaye, S.; Boimond, J.L.; van den Boom, T. Max-plus algebra in the history of discrete event systems. Annu. Rev. Control 2018, 45, 240–249. [Google Scholar] [CrossRef]
  25. Papadopoulos, C.T.; Li, J.; O’Kelly, M.E. A classification and review of timed Markov models of manufacturing systems. Comput. Ind. Eng. 2019, 128, 219–244. [Google Scholar] [CrossRef]
  26. Recalde, L.; Silva, M.; Ezpeleta, J.; Teruel, E. Petri Nets and Manufacturing Systems: An Examples-Driven Tour. In Lectures on Concurrency and Petri Nets: Advances in Petri Nets 2004; Desel, J., Reisig, W., Rozenberg, G., Eds.; Springer: Berlin/Heidelberg, Germany, 2004; pp. 742–788. [Google Scholar]
  27. Margherita, E.G.; Braccini, A.M. Managing industry 4.0 automation for fair ethical business development: A single case study. Technol. Forecast. Soc. Chang. 2021, 172, 121048. [Google Scholar] [CrossRef]
  28. Zeinalnezhad, M.; Chofreh, A.G.; Goni, F.A.; Klemeš, J.J.; Sari, E. Simulation and Improvement of Patients’ Workflow in Heart Clinics during COVID-19 Pandemic Using Timed Coloured Petri Nets. Int. J. Environ. Res. Public Health 2020, 17, 8577. [Google Scholar] [CrossRef] [PubMed]
  29. Zheng, P.; Wang, H.; Sang, Z.; Zhong, R.Y.; Liu, Y.; Liu, C.; Mubarok, K.; Yu, S.; Xu, X. Smart manufacturing systems for Industry 4.0: Conceptual framework, scenarios, and future perspectives. Front. Mech. Eng. 2018, 13, 137–150. [Google Scholar] [CrossRef]
  30. Qu, Y.J.; Ming, X.G.; Liu, Z.W.; Zhang, X.Y.; Hou, Z.T. Smart manufacturing systems: State of the art and future trends. J. Adv. Manuf. Technol. 2019, 103, 3751–3768. [Google Scholar] [CrossRef]
  31. Lee, E.A. Cyber Physical Systems: Design Challenges. In Proceedings of the 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing, Orlando, FL, USA, 5–7 May 2008; pp. 363–369. [Google Scholar]
  32. Jazdi, N. Cyber physical systems in the context of Industry 4.0. In Proceedings of the IEEE International Conference on Automation, Quality and Testing, Robotics, Cluj-Napoca, Romania, 22–24 May 2014; pp. 1–4. [Google Scholar]
  33. Kučera, E.; Haffner, O.; Drahoš, P.; Leskovský, R.; Cigánek, J. PetriNet Editor + PetriNet Engine: New Software Tool For Modelling and Control of Discrete Event Systems Using Petri Nets and Code Generation. Appl. Sci. 2020, 10, 7662. [Google Scholar] [CrossRef]
  34. Chen, C.-N.; Liu, T.-K.; Chen, Y.J. Human-Machine Interaction: Adapted Safety Assistance in Mentality Using Hidden Markov Chain and Petri Net. Appl. Sci. 2019, 9, 5066. [Google Scholar] [CrossRef] [Green Version]
  35. Contador, J.C.; Satyro, W.C.; Contador, J.L.; Spinola, M.D. Flexibility in the Brazilian Industry 4.0: Challenges and Opportunities. Glob. J. Flex. Syst. Manag. 2020, 21, 15–31. [Google Scholar] [CrossRef]
  36. Bashir, M.; Hong, L. Global Supervisory Structure for Decentralized Systems of Flexible Manufacturing Systems Using Petri Nets. Processes 2019, 7, 595. [Google Scholar] [CrossRef] [Green Version]
  37. Rezig, S.; Ghorbel, C.; Achour, Z.; Rezg, N. PLC-based implementation of supervisory control for flexible manufacturing systems using theory of regions. Int. J. Autom. Control 2019, 13, 619–640. [Google Scholar] [CrossRef]
  38. Long, F.; Zeiler, P.; Bertsche, B. Modelling the flexibility of production systems in Industry 4.0 for analysing their productivity and availability with high-level Petri nets. IFAC-PapersOnLine 2017, 50, 5680–5687. [Google Scholar] [CrossRef]
  39. Holovatyy, A.; Teslyuk, V.; Kryvinska, N.; Kazarian, A. Development of Microcontroller-Based System for Background Radiation Monitoring. Sensors 2020, 20, 7322. [Google Scholar] [CrossRef] [PubMed]
  40. Davidrajuh, R. A New Modular Petri Net for Modeling Large Discrete-Event Systems: A Proposal Based on the Literature Study. Computers 2019, 8, 83. [Google Scholar] [CrossRef] [Green Version]
  41. Wenzelburger, P.; Allgöwer, F. A Petri Net Modeling Framework for the Control of Flexible Manufacturing Systems. IFAC-PapersOnLine 2019, 52, 492–498. [Google Scholar] [CrossRef]
  42. Hu, L.; Liu, Z.; Hu, W.; Wang, Y.; Tan, J.; Wu, F. Petri-net-based dynamic scheduling of flexible manufacturing system via deep reinforcement learning with graph convolutional network. J. Manuf. Syst. 2020, 55, 1–14. [Google Scholar] [CrossRef]
  43. 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. [Google Scholar] [CrossRef] [Green Version]
  44. Wisniewski, R.; Bazydło, G.; Szcześniak, P.; Grobelna, I.; Wojnakowski, M. Design and Verification of Cyber-Physical Systems Specified by Petri Nets—A Case Study of a Direct Matrix Converter. Mathematics 2019, 7, 812. [Google Scholar] [CrossRef] [Green Version]
  45. Wiśniewski, R.; Wiśniewska, M.; Jarnut, M. C-Exact Hypergraphs in Concurrency and Sequentiality Analyses of Cyber-Physical Systems Specified by Safe Petri Nets. IEEE Access 2019, 7, 13510–13522. [Google Scholar] [CrossRef]
  46. Wisniewski, R.; Bazydło, G.; Szcześniak, P.; Wojnakowski, M. Petri Net-Based Specification of Cyber-Physical Systems Oriented to Control Direct Matrix Converters With Space Vector Modulation. IEEE Access 2019, 7, 23407–23420. [Google Scholar] [CrossRef]
  47. Rocha, J.-I.; Páscoa Dias, O.; Gomes, L. Improving Synchronous Dataflow Analysis Supported by Petri Net Mappings. Electronics 2018, 7, 448. [Google Scholar] [CrossRef] [Green Version]
  48. Hayashi, V.; Ruggiero, W. Non-Invasive Challenge Response Authentication for Voice Transactions with Smart Home Behavior. Sensors 2020, 20, 6563. [Google Scholar] [CrossRef]
  49. Lu, Z.; Liu, J.; Dong, L.; Liang, X. Maintenance Process Simulation Based Maintainability Evaluation by Using Stochastic Colored Petri Net. Appl. Sci. 2019, 9, 3262. [Google Scholar] [CrossRef] [Green Version]
  50. Huang, J.; Zhu, Y.; Cheng, B.; Lin, C.; Chen, J. A Petri Net-Based Approach for Supporting Traceability in Cyber-Physical Manufacturing Systems. Sensors 2016, 16, 382. [Google Scholar] [CrossRef] [Green Version]
  51. Liu, H.-C.; You, J.-X.; Li, Z.; Tian, G. Fuzzy Petri nets for knowledge representation and reasoning: A literature review. Eng. Appl. Artif. Intell. 2017, 60, 45–56. [Google Scholar] [CrossRef]
  52. Markiewicz, M.; Gniewek, L. A Program Model of Fuzzy Interpreted Petri Net to Control Discrete Event Systems. Appl. Sci. 2017, 7, 422. [Google Scholar] [CrossRef] [Green Version]
  53. Hong, Z.; Feng, Y.; Li, Z.; Tian, G.; Tan, J. Reliability-Based and Cost-Oriented Product Optimization Integrating Fuzzy Reasoning Petri Nets, Interval Expert Evaluation and Cultural-Based DMOPSO Using Crowding Distance Sorting. Appl. Sci. 2017, 7, 791. [Google Scholar] [CrossRef] [Green Version]
  54. Wang, J.; Fei, Z.; Chang, Q.; Li, S. Energy Saving Operation of Manufacturing System Based on Dynamic Adaptive Fuzzy Reasoning Petri Net. Energies 2019, 12, 2216. [Google Scholar] [CrossRef] [Green Version]
  55. Seung-Yun, K.; Yilin, Y. A self-navigating robot using Fuzzy Petri nets. Robot. Auton. Syst. 2018, 101, 153–165. [Google Scholar]
  56. Rani, S.; Jain, A.; Castillo, O. Research trends on fuzzy logic controller for mobile robot navigation: A scientometric study. J. Autom. Mob. Robot. Intell. Syst. 2020, 14, 87–108. [Google Scholar] [CrossRef]
  57. Wang, L.; Dai, W.; Ai, J.; Duan, W.; Zhao, Y. Reliability Evaluation for Manufacturing System Based on Dynamic Adaptive Fuzzy Reasoning Petri Net. IEEE Access 2020, 8, 167276–167287. [Google Scholar] [CrossRef]
  58. Wang, J. Timed Petri Nets: Theory and Application; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2012; Volume 9. [Google Scholar]
  59. Guo, Z.; Zhang, Y.; Zhao, X.; Song, X. A Timed Colored Petri Net Simulation-Based Self-Adaptive Collaboration Method for Production-Logistics Systems. Appl. Sci. 2017, 7, 235. [Google Scholar] [CrossRef] [Green Version]
  60. Kammoun, M.A.; Ezzeddine, W.; Rezg, N.; Achour, Z. FMS Scheduling under Availability Constraint with Supervisor Based on Timed Petri Nets. Appl. Sci. 2017, 7, 399. [Google Scholar] [CrossRef] [Green Version]
  61. Shailesh, T.; Nayak, A.; Prasad, D. An UML Based Performance Evaluation of Real-Time Systems Using Timed Petri Net. Computers 2020, 9, 94. [Google Scholar] [CrossRef]
  62. Lefebvre, D. Dynamical Scheduling and Robust Control in Uncertain Environments with Petri Nets for DESs. Processes 2017, 5, 54. [Google Scholar] [CrossRef]
  63. Sun, X.; Li, R.; Yuan, Z. Anomaly Detection in Discrete Manufacturing Systems by Pattern Relation Table Approaches. Sensors 2020, 20, 5766. [Google Scholar] [CrossRef] [PubMed]
  64. Mejía, G.; Pereira, J. Multiobjective scheduling algorithm for flexible manufacturing systems with Petri nets. J. Manuf. Syst. 2020, 54, 272–284. [Google Scholar] [CrossRef]
  65. Cavone, G.; Dotoli, M.; Seatzu, C. A Survey on Petri Net Models for Freight Logistics and Transportation Systems. IEEE Trans. Intell. Transp. Syst. 2018, 19, 1795–1813. [Google Scholar] [CrossRef]
  66. Zhang, Y.; Wang, Y.; Wang, L.; Cai, G. An Extended Object-Oriented Petri Net Model for Vulnerability Evaluation of Communication-Based Train Control System. Symmetry 2020, 12, 1474. [Google Scholar] [CrossRef]
  67. Moutinho, F.; Campos-Rebelo, R.; Lagartinho-Oliveira, C.; Moreira, E.; Almeida, B.; Gomes, L. NOVA Mobility Assistive System: Developed and Remotely Controlled with IOPT-Tools. Electronics 2020, 9, 1328. [Google Scholar] [CrossRef]
  68. Riouali, Y.; Benhlima, L.; Bah, S. Extended Batches Petri Nets Based System for Road Traffic Management in WSNs. J. Sens. Actuator Netw. 2017, 6, 30. [Google Scholar] [CrossRef] [Green Version]
  69. Riouali, Y.; Benhlima, L.; Bah, S. An Integrated Turning Movements Estimation to Petri Net Based Road Traffic Modeling. J. Sens. Actuator Netw. 2019, 8, 49. [Google Scholar] [CrossRef] [Green Version]
  70. López, J.; Sánchez-Vilariño, P.; Sanz, R.; Paz, E. Implementing Autonomous Driving Behaviors Using a Message Driven Petri Net Framework. Sensors 2020, 20, 449. [Google Scholar] [CrossRef] [Green Version]
  71. Prilandita, N.; McLellan, B.; Tezuka, T. Modeling Autonomous Decision-Making on Energy and Environmental Management Using Petri-Net: The Case Study of a Community in Bandung, Indonesia. Challenges 2016, 7, 9. [Google Scholar] [CrossRef] [Green Version]
  72. López, J.; Santana-Alonso, A.; Díaz-Cacho Medina, M. Formal Verification for Task Description Languages. A Petri Net Approach. Sensors 2019, 19, 4965. [Google Scholar] [CrossRef] [Green Version]
  73. Jiang, Z.; Zhao, T.; Wang, S.; Ju, H. New Model-Based Analysis Method with Multiple Constraints for Integrated Modular Avionics Dynamic Reconfiguration Process. Processes 2020, 8, 574. [Google Scholar] [CrossRef]
  74. Fonseca i Casas, P.; Lijia Hu, D.; Guasch i Petit, A.; Figueras i Jové, J. Simplifying the Verification of Simulation Models through Petri Net to FlexSim Mapping. Appl. Sci. 2020, 10, 1395. [Google Scholar] [CrossRef] [Green Version]
  75. Zurawski, R.; Zhou, M. Petri nets and industrial applications: A tutorial. IEEE Trans. Ind. Electron. 1994, 41, 567–583. [Google Scholar] [CrossRef]
  76. Rodriguez-Andina, J.J.; Gomes, L.; Bogosyan, S. Current Trends in Industrial Electronics Education. IEEE Trans. Ind. Electron. 2010, 57, 3245–3252. [Google Scholar] [CrossRef]
  77. Cerone, A.; Roggenbach, M.; Schlingloff, H.; Schneider, G.; Shaikh, S. Teaching Formal Methods for Software Engineering-Ten Principles; Informatica Didactica; University of Potsdam: Potsdam, Germany, 2015. [Google Scholar]
  78. Gašević, D.; Devedžić, V. Software support for teaching Petri nets: P3. In Proceedings of the 3rd IEEE International Conference Advanced Technologies, Athens, Greece, 9–11 July 2003; pp. 300–301. [Google Scholar]
  79. Gašević, D.; Devedžić, V. Teaching Petri nets using P3. J. Educ. Technol. Soc. 2004, 7, 153–166. [Google Scholar]
  80. Mei, C.; Zhang, X.; Zhao, W.; Periyasamy, K.; Headington, M. A tool for teaching Petri nets. J. Comput. Sci. Coll. 2011, 26, 181–188. [Google Scholar]
  81. Vörös, A.; Darvas, D.; Molnár, V.; Klenik, A.; Hajdu, Á.; Jámbor, A.; Bartha, T.; Majzik, I. PetriDotNet 1.5: Extensible Petri net editor and analyser for education and research. In Proceedings of the International Conference on Applications and Theory of Petri Nets and Concurrency, Toruń, Poland, 19–24 June 2016; Springer: Cham, Switzerland, 2016; pp. 123–132. [Google Scholar]
  82. Vörös, A.; Darvas, D.; Hajdu, Á.; Klenik, A.; Marussy, K.; Molnár, V.; Bartha, T.; Majzik, I. Industrial applications of the PetriDotNet modelling and analysis tool. Sci. Comput. Program. 2018, 157, 17–40. [Google Scholar] [CrossRef] [Green Version]
  83. Amparore, E.G.; Donatelli, S. GreatTeach: A tool for teaching (stochastic) Petri nets. In Proceedings of the International Conference on Applications and Theory of Petri Nets and Concurrency, Bratislava, Slovakia, 24–29 June 2018; Springer: Cham, Switzerland, 2018; pp. 416–425. [Google Scholar]
  84. Kučera, E.; Haffner, O.; Drahoš, P.; Cigánek, J.; Leskovský, R.; Štefanovič, J. New Software Tool for Modeling and Control of Discrete-Event and Hybrid Systems Using Timed Interpreted Petri Nets. App. Sci. 2020, 10, 5027. [Google Scholar] [CrossRef]
  85. Kučera, E.; Haffner, O.; Leskovský, R. PN2ARDUINO-A New Petri Net Software Tool for Control of Discrete-event and Hybrid Systems Using Arduino Microcontrollers. In Proceedings of the Federated Conference on Computer Science and Information Systems, Leipzig, Germany, 1–4 September 2019; pp. 915–919. [Google Scholar]
  86. Gomes, L.; Bogosyan, S. Current Trends in Remote Laboratories. IEEE Trans. Ind. Electron. 2009, 56, 4744–4756. [Google Scholar] [CrossRef]
  87. Márquez, M.; Mejías, A.; Herrera, R.; Andújar, J.M. Programming and testing a PLC to control a scalable industrial plant in remote way. In Proceedings of the 4th Experiment@ International Conference, Algarve, Portugal, 6–8 June 2017; pp. 105–106. [Google Scholar]
  88. Hernandez-Jayo, U.; Garcia-Zubia, J. Remote measurement and instrumentation laboratory for training in real analog electronic experiments. Measurement 2016, 82, 123–134. [Google Scholar] [CrossRef]
  89. Yayla, A.; Korkmaz, H.; Buldu, A.; Sarikas, A. Development of a remote laboratory for an electronic circuit design and analysis course with increased accessibility by using speech recognition technology. In Computer Applications in Engineering Education; Wiley: Hoboken, NJ, USA, 2020; pp. 1–14. [Google Scholar]
  90. Rubio, E.; Santana, I.; Esparza, V.; Rohten, J. Remote laboratories for control education: Experience at the universidad del Bío-Bío. In Proceedings of the IEEE International Conference on Automatica (ICA-ACCA), Curicó, Chile, 19–21 October 2016; pp. 1–6. [Google Scholar]
  91. Ali, W. Online and remote learning in higher education institutes: A necessity in light of COVID-19 pandemic. Higher Educ. Stud. 2020, 10, 16–25. [Google Scholar] [CrossRef]
  92. Korečko, Š. Interactive Approach to Coloured Petri Nets Teaching; Tech. Rep. IK-TR3; Eötvös Loránd University, Faculty of Informatics: Budapest, Hungary, 2018. [Google Scholar]
  93. Korečko, Š. Project-Based Approach to Teaching Event-Driven Simulation. In Proceedings of the 42nd International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, Croatia, 20–24 May 2019; pp. 1604–1608. [Google Scholar]
  94. Reis, A.C.B.; Barbalho, S.C.M.; Zanette, A.C.D. A bibliometric and classification study of Project-based Learning in Engineering Education. Production 2017, 27, e20162258. [Google Scholar] [CrossRef] [Green Version]
  95. Schmitz, D.; Moldt, D.; Cabac, L.; Mosteller, D.; Haustermann, M. Utilizing Petri Nets for Teaching in Practical Courses on Collaborative Software Engineering. In Proceedings of the 16th International Conference on Application of Concurrency to System Design, Torun, Poland, 19–24 June 2016; pp. 74–83. [Google Scholar]
  96. Ezpeleta, J.; Colom, J.M.; Martinez, J. A Petri net based deadlock prevention policy for flexible manufacturing systems. IEEE Trans. Robot. Autom. 1995, 11, 173–184. [Google Scholar] [CrossRef] [Green Version]
  97. 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]
  98. Kaid, H.; Al-Ahmari, A.; El-Tamimi, A.M.; Nasr, E.A.; 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]
  99. Messinis, S.; Vosniakos, G.C. An agent-based flexible manufacturing system controller with Petri-net enabled algebraic deadlock avoidance. Rep. Mech. Eng. 2020, 1, 77–92. [Google Scholar] [CrossRef]
  100. Li, S.; Wei, X.; Cai, Y.; Ma, B.; Hou, C. An elementary siphon-based deadlock control algorithm with maximally reachable number to cope with deadlock problems in ordinary Petri nets. Adv. Mech. Eng. 2017, 9, 1–14. [Google Scholar] [CrossRef]
  101. Rezig, S.; Turki, S.; Rezg, N. Compute Optimization of Petri Net Controllers Using the Algebraic Method. Appl. Sci. 2019, 9, 2633. [Google Scholar] [CrossRef] [Green Version]
  102. Chen, H.F.; Wu, N.Q.; Li, Z.W.; Qu, T. On a maximally permissive deadlock prevention policy for automated manufacturing systems by using resource-oriented Petri nets. ISA Trans. 2019, 89, 67–76. [Google Scholar] [CrossRef]
  103. Uzam, M.; Zhou, M.C. An improved iterative synthesis method for liveness enforcing supervisors of flexible manufacturing systems. Int. J. Prod. Res. 2006, 44, 1987–2030. [Google Scholar] [CrossRef]
  104. Gu, C.; Li, Z.; Wu, N.; Khalgui, M.; Qu, T.; Al-Ahmari, A. Improved Multi-Step Look-Ahead Control Policies for Automated Manufacturing Systems. IEEE Access 2018, 6, 68824–68838. [Google Scholar] [CrossRef]
  105. Li, X.; Liu, G.; Li, Z.; Wu, N.; Barkaoui, K. Elementary Siphon-Based Robust Control for Automated Manufacturing Systems With Multiple Unreliable Resources. IEEE Access 2019, 7, 21006–21019. [Google Scholar] [CrossRef]
  106. Xiang, Z. Deadlock Avoidance of Flexible Manufacturing Systems by Colored Resource-Oriented Petri Nets with Novel Colored Capacity. In Verification and Evaluation of Computer and Communication Systems; VECoS 2020, LCNS 2020; Ben Hedia, B., Chen, Y.F., Liu, G., Yu, Z., Eds.; Springer: Cham, Switzerland, 2020; Volume 12519. [Google Scholar]
  107. 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]
  108. Luo, J.; Liu, Z.; Zhou, M.; Xing, K.; Wang, X.; Li, X.; Liu, H. Robust deadlock control of automated manufacturing systems with multiple unreliable resources. Inf. Sci. 2019, 479, 401–415. [Google Scholar] [CrossRef]
  109. Salaheldin Elsayed, M.; El Kafrawy, P.; Wu, N. Modeling and Deadlock Control of Reconfigurable Multi-Unit Resource Systems. IEEE Access 2020, 8, 133605–133621. [Google Scholar] [CrossRef]
  110. Kaid, H.; Al-Ahmari, A.; Li, Z.; Davidrajuh, R. Automatic Supervisory Controller for Deadlock Control in Reconfigurable Manufacturing Systems with Dynamic Changes. Appl. Sci. 2020, 10, 5270. [Google Scholar] [CrossRef]
  111. Gu, C.; Ma, Z.; Li, Z.; Giua, A. Verification of Nonblockingness in Bounded Petri Nets With a Semi-Structural Approach. In Proceedings of the IEEE 58th Conference on Decision and Control (CDC), Nice, France, 11–13 December 2019; pp. 6718–6723. [Google Scholar]
  112. Pomares-Angelino, R.; López-Mellado, E. Automated Modelling of Deadlock-free Petri Nets Using Duplicated Transition Labels. In Proceedings of the 17th International Conference on Electrical Engineering, Computing Science and Automatic Control, Mexico City, Mexico, 11–13 November 2020; pp. 1–7. [Google Scholar]
  113. Li, L.; Basile, F.; Li, Z. Closed-Loop Deadlock-Free Supervision for GMECs in Time Petri Net Systems. IEEE Trans. Autom. Control 2020. [Google Scholar] [CrossRef]
  114. Pan, Y.-L. One Computational Innovation Transition-Based Recovery Policy for Flexible Manufacturing Systems Using Petri nets. Appl. Sci. 2020, 10, 2332. [Google Scholar] [CrossRef] [Green Version]
  115. Dong, Y.; Chen, Y.; Li, S.; El-Meligy, M.A.; Sharaf, M. An Efficient Deadlock Recovery Policy for Flexible Manufacturing Systems Modeled With Petri Nets. IEEE Access 2019, 7, 11785–11795. [Google Scholar] [CrossRef]
  116. Row, T.C.; Syu, W.M.; Pan, Y.-L.; Wang, C.-C. One Novel and Optimal Deadlock Recovery Policy for Flexible Manufacturing Systems Using Iterative Control Transitions Strategy. Math. Probl. Eng. 2019, 2019, 4847072. [Google Scholar] [CrossRef]
  117. Hu, M.; Yang, S.; Chen, Y. Partial Reachability Graph Analysis of Petri Nets for Flexible Manufacturing Systems. IEEE Access 2020, 8, 227925–227935. [Google Scholar] [CrossRef]
  118. Valmari, A. The State Explosion Problem. In Lectures on Petri Nets I: Basic Models: Advances in Petri Nets; ACPN 1996, LNCS 1998; Reisig, W., Rozenberg, G., Eds.; Springer: Berlin/Heidelberg, Germany, 1998; Volume 1491, pp. 429–528. [Google Scholar]
  119. Ren, H.; Xu, J.; Liang, Y.; Rehman, A.U.; Umer, U. On state-space compression and state reachability retrieval of Petri nets. Adv. Mech. Eng. 2019, 11. [Google Scholar] [CrossRef] [Green Version]
  120. Finkbeiner, B.; Gieseking, M.; Hecking-Harbusch, J.; Olderog, E.-R. AdamMC: A Model Checker for Petri Nets with Transits against Flow-LTL. In Computer Aided Verification 2020; Lahiri, S.K., Wang, C., Eds.; Springer: Cham, Switzerland, 2020; pp. 64–76. [Google Scholar]
  121. Esparza, J.; Nielsen, M. Decidability Issues for Petri Nets—A survey. J. Inf. Process. Cybern. 1994, 30, 143–160. [Google Scholar]
  122. Wang, J. Deterministic Timed Petri Nets. In Timed Petri Nets; The Kluwer International Series on Discrete Event Dynamic Systems; Springer: New York, NY, USA, 1998; Volume 9, pp. 37–61. [Google Scholar]
  123. Costelha, H.; Lima, P. Modelling, analysis and execution of robotic tasks using Petri nets. In Proceedings of the 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Diego, CA, USA, 29 October–2 November 2007; pp. 1449–1454. [Google Scholar]
  124. Wisniewski, R.; Grobelna, I.; Karatkevich, A. Determinism in Cyber-Physical Systems Specified by Interpreted Petri Nets. Sensors 2020, 20, 5565. [Google Scholar] [CrossRef]
  125. Lohstroh, M.; Incer Romeo, I.; Goens, A.; Derler, P.; Castrillon, J.; Lee, E.A.; Sangiovanni-Vincentelli, A. Reactors: A Deterministic Model for Composable Reactive Systems. In Cyber Physical Systems; Model-Based Design, LNCS 2020; Chamberlain, R., Edin Grimheden, M., Taha, W., Eds.; Springer: Cham, Switzerland, 2020; Volume 11971. [Google Scholar]
  126. Lohstroh, M.; Schoeberl, M.; Goens, A.; Wasicek, A.; Gill, C.; Sirjani, M.; Lee, E.A. Invited: Actors Revisited for Time-Critical Systems. In Proceedings of the 56th ACM/IEEE Design Automation Conference, Las Vegas, NV, USA, 2–6 June 2019; pp. 1–4. [Google Scholar]
  127. Sirjani, M.; Lee, E.A.; Khamespanah, E. Model Checking Software in Cyberphysical Systems. In Proceedings of the IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC), Madrid, Spain, 13–17 July 2020; pp. 1017–1026. [Google Scholar]
  128. Lynch, N.A. Distributed Algorithms; Elsevier: Amsterdam, The Netherlands, 1996. [Google Scholar]
  129. Falcone, A.; Garro, A. Pitfalls and Remedies in Modeling and Simulation of Cyber Physical Systems. In Proceedings of the IEEE/ACM 24th International Symposium on Distributed Simulation and Real Time Applications, Prague, Czech Republic, 14–16 September 2020; pp. 1–5. [Google Scholar]
  130. Alcaraz-Mejia, M.; Lopez-Mellado, E.; Ramirez-Trevino, A. Fault recovery of manufacturing systems based on controller reconfiguration. In Proceedings of the IEEE/SMC International Conference on System of Systems Engineering, Los Angeles, CA, USA, 26–28 April 2006; Volume 6. [Google Scholar]
  131. Ramirez-Trevino, A.; Ruiz-Beltran, E.; Aramburo-Lizarraga, J.; Lopez-Mellado, E. Structural Diagnosability of DES and Design of Reduced Petri Net Diagnosers. IEEE Trans. SMC Part A Syst. Hum. 2012, 42, 416–429. [Google Scholar] [CrossRef]
  132. Kaid, H.; Al-Ahmari, A.; Nasr, E.A.; Al-Shayea, A.; Kamrani, A.K.; Noman, M.A.; Mahmoud, H.A. Petri net model based on neural network for deadlock control and fault detection and treatment in automated manufacturing systems. IEEE Access 2020, 8, 103219–103235. [Google Scholar] [CrossRef]
  133. Alzalab, E.A.; Yu, Z.; Wu, N.; Kaid, H. Fault-Recovery and Repair Modeling of Discrete Event Systems Using Petri Nets. IEEE Access 2020, 8, 170237–170247. [Google Scholar] [CrossRef]
  134. Ran, N.; Wang, S.; Su, H.; Wang, C. Fault diagnosis for discrete event systems modeled by bounded Petri nets. Asian J. Control 2017, 19, 1532–1541. [Google Scholar] [CrossRef]
  135. Blanke, M.; Frei, W.C.; Kraus, F.; Patton, J.R.; Staroswiecki, M. What is Fault-Tolerant Control? IFAC Proc. 2000, 33, 41–52. [Google Scholar] [CrossRef] [Green Version]
  136. Zhang, Y.; Jiang, J. Bibliographical review on reconfigurable fault-tolerant control systems. Annu. Rev. Control 2008, 32, 229–252. [Google Scholar] [CrossRef]
  137. Clarke, E.M., Jr.; Grumberg, O.; Kroening, D.; Peled, D.; Veith, H. Model Checking; MIT Press: Cambridge, MA, USA, 2018. [Google Scholar]
  138. Clarke, E.M.; Klieber, W.; Nováček, M.; Zuliani, P. Model checking and the state explosion problem. In LASER Summer School on Software Engineering 2011; Springer: Berlin/Heidelberg, Germany, 2011; pp. 1–30. [Google Scholar]
  139. Clarke, E.M.; Zuliani, P. Statistical model checking for cyber-physical systems. In Proceedings of the International Symposium on Automated Technology for Verification and Analysis, Taipei, Taiwan, 11–14 October 2011; Springer: Berlin/Heidelberg, Germany, 2011; pp. 1–12. [Google Scholar]
  140. Agha, G.; Palmskog, K. A survey of statistical model checking. ACM Trans. Model. Comput. Simul. 2018, 28, 1–39. [Google Scholar] [CrossRef]
  141. Himmiche, S.; Aubry, A.; Marangé, P.; Duflot-Kremer, M.; Pétin, J.F. Using Statistical-Model-Checking-Based Simulation for Evaluating the Robustness of a Production Schedule. In Service Orientation in Holonic and Multi-Agent Manufacturing; Studies in Computational Intelligence; Borangiu, T., Trentesaux, D., Thomas, A., Cardin, O., Eds.; Springer: Cham, Switzerland, 2018; Volume 762. [Google Scholar]
  142. Grobelna, I. Formal Verification of Control Modules in Cyber-Physical Systems. Sensors 2020, 20, 5154. [Google Scholar] [CrossRef] [PubMed]
  143. Torres, P.J.R.; Mercado, E.I.S.; Rifón, L.A. Probabilistic Boolean network modeling and model checking as an approach for DFMEA for manufacturing systems. J. Intell. Manuf. 2018, 29, 1393–1413. [Google Scholar]
  144. Huang, X.; Ding, Z.; Bi, Z.; Wang, Y.; Zheng, K.; Huang, X. Model Checking of Systems with Unreliable Machines Using PRISM. In Proceedings of the 9th International Conference on Information Technology in Medicine and Education, Hangzhou, China, 19–21 October 2018; pp. 872–876. [Google Scholar]
  145. Pakonen, A.; Tahvonen, T.; Hartikainen, M.; Pihlanko, M. Practical applications of model checking in the Finnish nuclear industry. In Proceedings of the 10th International Topical Meeting on Nuclear Plant Instrumentation, Control and Human Machine Interface Technologies, San Francisco, CA, USA, 11–15 June 2017; pp. 1342–1352. [Google Scholar]
  146. Gómez-Martínez, E.; de Lara, J.; Guerra, E. Extensible Structural Analysis of Petri Net Product Lines. In Transactions on Petri Nets and Other Models of Concurrency XV; Koutny, M., Ed.; Springer: Berlin/Heidelberg, Germany, 2021; pp. 27–49. [Google Scholar]
  147. Reisig, W. Associative composition of components with double-sided interfaces. Acta Inform. 2019, 56, 229–253. [Google Scholar] [CrossRef]
  148. Margherita, E.G.; Bua, I. The Role of Human Resource Practices for the Development of Operator 4.0 in Industry 4.0 Organisations: A Literature Review and a Research Agenda. Businesses 2021, 1, 18–33. [Google Scholar] [CrossRef]
Figure 1. A sample Petri net for a manufacturing system.
Figure 1. A sample Petri net for a manufacturing system.
Electronics 10 02305 g001
Figure 2. Review methodology and details of the obtained literature.
Figure 2. Review methodology and details of the obtained literature.
Electronics 10 02305 g002
Figure 3. Published papers related to Petri nets (keywords: “Petri nets”) over the years in several databases.
Figure 3. Published papers related to Petri nets (keywords: “Petri nets”) over the years in several databases.
Electronics 10 02305 g003
Table 1. Thematic groups of publications and contributions regarding education.
Table 1. Thematic groups of publications and contributions regarding education.
Thematic GroupPublicationYearContributions
Trends in
industrial electronic education
[76]2010Identification of trends. Discussion for the needs and challenges of industrial electronic education both at university level and in lifelong learning. Overview of state-of-the-art learning methodologies and tools.
Remote
laboratories
and
education
[76]2010Analysis of trends. Prediction about the increasing popularity of remote laboratories.
[86]2009Remote laboratories dedicated for autonomous learning activities. Overview of state-of-the-art technologies in the development of remote laboratories.
[87]2017Remote programming and testing of physical devices. Proposition of practical classes in several subjects at the University of Huelva (Spain).
[88]2016Remote building and testing of real analogue electronic circuits.
[89]2020A remote laboratory application that aims to increase the accessibility of electronic circuit design and analysis courses by using speech recognition technology.
[90]2016Remote laboratories for controlled education with flexible time access. Introducing remote laboratories at the Universidad del Bío-Bío (Chile).
[91]2020Emphasising self-motivation of students. Highlighting that staff members should use technology to enhance learning. Online and remote learning as a necessity in times of lockdowns and social distancing due to COVID-19 pandemic.
Petri net
software tools
for
education
[78,79]2003,
2004
P3—PN software tool. Learning PNs in a more obvious and quicker way in order to use them for hardware modelling.
[80]2011Simple tool intended to teach the beginners
[81,82]2016, 2018PetriDotNet—an extensible PN editor and analyser for education and research. Suitable also for design, development, and analysis of industrial systems.
[83]2018GreatTeach—a tool for teaching stochastic PNs
[84,85]2020, 2019PN2ARDUINO—a tool for modelling and control of discrete-event and hybrid systems using timed interpreted PNs. The proposed tool can improve education and practice in cyber-physical systems (Industry 4.0).
Teaching
Petri nets
[77]2015Recommended principles for teaching formal methods for software engineering.
[92]2018An interactive approach to teaching coloured PNs. Suitable for short and intensive courses.
[93]2019Project-based learning to a graduate course focusing on the event-driven simulation with coloured PNs.
[94]2017Project-based learning in engineering education.
[95]2016The teaching of PNs for software development. Best practices for teaching in practice.
Table 2. Main contributions in the most recent publications regarding deadlock prevention.
Table 2. Main contributions in the most recent publications regarding deadlock prevention.
Authors and ReferenceYearContributions
Kaid, H. at al. [98]2019Classical method from [96] combined with transformation of a PN model into a ladder diagram, an effective method for PLC implementation from a controlled system model represented by PNs.
Messinis, S. and
Vosniakos, G.C. [99]
2020Efficient design of a controller using agents. Computation of minimal siphons using the linear algebra.
Li, S. et al. [100]2017Control place and transition added to a siphon of an ordinary PN. The proposed deadlock control algorithm can obtain a live controlled system, whose reachable number (MRN) is the same as that of an original uncontrolled net.
Rezig, S. et al. [101]2019Optimal PN supervisor able to respect the control specifications is calculated. Design a set of controllers based on the properties of PNs and not on reachability graph generation for bounded PNs.
Chen, H.F. et al. [102]2019Resource-oriented PNs used to model systems for deadlock prevention. Various types of illegal markings that can be structurally identified. Illegal markings prevented by using polynomial algorithms or by solving the linear programming problems.
Gu, C. et al. [104]2018Improved multi-step look-ahead control policies. Deadlock avoidance polices applicable to complex situations, including a model with one-unit resource shared by two or more perfect resource-transition circuits not containing each other.
Li, X. et al. [105]2019Two-step robust deadlock control policy for systems of the simple sequential process with resources based on elementary siphons: the first step (elementary siphons control) derives a live controlled system without considering resource failures, the second one deals with failure-induced deadlock control issues.
Xiang Z. [106]2020Coloured capacity concept in coloured resource-oriented PNs. All control places used to forbid illegal markings are displaced by the coloured capacity and the deadlock is avoided by the new execution rule.
Kaid, H. et al. [107]2020Two-step robust deadlock control approach. Deadlock prevention based on strict minimal siphons to create a controlled PN model. All obtained control places merged into a single control place based on the coloured PN.
Luo, J. et al. [108]2019Siphon-based deadlock avoiding in systems with multiple resource failures. A PN model developed to characterise the failure and repair of unreliable resources. A robust deadlock prevention controller is proposed.
Salaheldin Elsayed,
M. et al. [109]
2020New PN model for modelling a limited reconfigurability. Efficient integrated policy for designing supervisors for multi-unit resource systems based on a class of PNs. Siphon-based deadlock prevention policy.
Kaid, H. et al. [110]2020Automatic supervisory control in reconfigurable manufacturing systems with dynamic changes. Two-step solution for quick and accurate reconfiguration of supervisory controllers for deadlock control.
Gu, C. et al. [111]2019Semi-structural verification of the nonblockingness. An algorithm to construct a novel structure (minimax basis reachability graph). No exhaustive exploration of the state space, therefore significant practical efficiency.
Pomares-Angelino, R. and López-Mellado, E. [112]2020Automated synthesis of deadlock free PN from event sequences. Novel method for determining substructures that yield deadlocks. Algorithms with polynomial-time complexity.
Li, L. et al. [113]2020Deadlock-freeness in timed PN systems with uncontrollable transitions with the enforcement of generalised mutual exclusion constraints. Online computation of a graph (Reduced Modified State Class Graph) for online control synthesis procedure.
Table 3. Main contributions in the most recent publications regarding deadlock recovery.
Table 3. Main contributions in the most recent publications regarding deadlock recovery.
Authors and ReferenceYearContributions
Pan, Y.-L. [114]2020Transition-based control policy to solve the deadlock problem. Detection of all legal markings and all deadlock markings via state space exploration. The system can recover from all initial deadlock and quasi-deadlock markings.
Dong, Y. et al. [115]2019Solving deadlock problems by adding a set of recovery transitions. A vector intersection approach to compute a recovery transition to recover multiple deadlock markings, with lower computational complexity.
Row, T.C. et al. [116]2019Iterative method to obtain maximally permissive states on the basis of control transitions. Adding special transitions to recover from the deadlock markings, with full state space exploration. Focus on crucial dead markings. All markings are live and reachable once these crucial markings are controlled.
Hu, M. et al. [117]2020Computationally efficient method to find dead markings. Bad markings detected by solving an integer linear programming problem to detect possible markings with empty syphons and the set of markings in the dead-zone is calculated to find all first-met bad markings.
Table 4. Challenges revealed in the most recent literature on the application of Petri nets in manufacturing systems divided into main four groups.
Table 4. Challenges revealed in the most recent literature on the application of Petri nets in manufacturing systems divided into main four groups.
EducationDeadlock Prevention and RecoveringOther Analysis ProblemsModelling of Real Industrial Processes
Conditions of
remote
education
permissive policy for
systems with unreliable
resources and failures
dealing with the state explosion problemhow to properly
construct large
fault-tolerant models
How to fit
interdisciplinary aspects into
a limited course
deadlock avoidance and/or recovery of reconfigurable systemsefficient composition/decomposition of big systemshow to deal with large state spaces
decreasing computational complexity of the methodsdeveloping efficient
software tools
how to correctly incorporate time into models
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Grobelna, I.; Karatkevich, A. Challenges in Application of Petri Nets in Manufacturing Systems. Electronics 2021, 10, 2305. https://doi.org/10.3390/electronics10182305

AMA Style

Grobelna I, Karatkevich A. Challenges in Application of Petri Nets in Manufacturing Systems. Electronics. 2021; 10(18):2305. https://doi.org/10.3390/electronics10182305

Chicago/Turabian Style

Grobelna, Iwona, and Andrei Karatkevich. 2021. "Challenges in Application of Petri Nets in Manufacturing Systems" Electronics 10, no. 18: 2305. https://doi.org/10.3390/electronics10182305

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