Optimal supervisory control of flexible manufacturing systems

Size: px
Start display at page:

Download "Optimal supervisory control of flexible manufacturing systems"

Transcription

1 Optimal supervisory control of flexible manufacturing systems Yufeng Chen To cite this version: Yufeng Chen. Optimal supervisory control of flexible manufacturing systems. Computer science. Conservatoire national des arts et metiers - CNAM, English. <NNT : 2015CNAM0990>. <tel > HAL Id: tel Submitted on 15 Mar 2016 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

2 CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS École Doctorale Informatique, Télécommunications et Electronique de Paris Centre d Etudes et De Recherche en Informatique du CNAM THÈSE DE DOCTORAT présentée par : Yufeng CHEN soutenue le : 7 Juillet 2015 pour obtenir le grade de : Docteur du Conservatoire National des Arts et Métiers Discipline / Spécialité : Informatique OPTIMAL SUPERVISORY CONTROL OF FLEXIBLE MANUFACTURING SYSTEMS THÈSE dirigée par M. BARKAOUI Kamel Professeur des universités, Cedric, Le Cnam, Paris M. LI Zhiwu Professeur des universités, SCAG, Xidian University, Xi an RAPPORTEURS Mme. CHU Feng Professeur des universités, Université d Evry Val d Essone M. LOISEAU Jean-Jacques Directeur de Recherche au CNRS, IRCCyN, Université de Nantes EXAMINATEURS M. ALLA Hassane Professeur des universités, GIPSA Lab, Grenoble INP, Univ. Joseph Fourrier Mme. BERARD Beatrice Professeur des universités, LIP6, Université Pierre et Marie Curie, Paris Mme. WATTIAU Isabelle Professeur des universités, Cedric, Le Cnam, Paris

3

4 Remerciements First, I would like to express my sincere appreciation to my advisor, Prof. Kamel Barkaoui, Cedric Lab and Computer Science Department, Conservatoire National des Arts et Métiers, for his thoughtful guidance, instructive advice, constant encouragement, and financial support. Under his direction, my papers gradually become publishable. My sincere thanks go to him since my achievements are impossible without his valuable suggestions, critical comments and reviews, sweet encouragement, kind support, as well as his unique notes, ideas, opinions, and help. Second, I am very grateful to my co-advisor, Prof. ZhiWu Li, the School of Electro-Mechanical Engineering, Xidian University. I experience the transition from immaturity to maturity in both psychology and academia with his kind direction. His important and useful directions greatly improve the development of my original idea on optimal supervisory control in FMSs. He has helped me in a variety of ways since I cannot make the achievements included in this thesis without his valuable suggestions, critical comments and reviews, sweet encouragement, and kind support. I am very grateful to Professor MengChu Zhou, Department of Electrical and Computer Engineering, New Jersey Institute of Technology. Since 2006, we have been collaborating in supervisory control of automated manufacturing systems, particularly, in deadlock analysis and control issues. My sincere thanks go to Professor Zhou since the achievements in this thesis are obtained with his valuable suggestions, careful concern, and great help. I extend very special thanks to many people who directly or indirectly contribute in a variety of ways to the development of the material included in this thesis. The continuing interaction and stimulating discussions with them have been a constant source of encouragement and inspiration. They Y. S. Huang, Taiwan ILan University (China), M. Uzam, Niğde Üniversitesi, Y. Chao, Taiwan Cheng Chi University (China), M. Khalgui and O. Mosbahi, University of Carthage, L. Feng, Royal Institute of Technology, N. Q. Wu, GuangDong Institute of Technology, K. Y. Xing, Xi an Jiaotong University, W. M. Wu, ZheJiang University, L. Wang, Peking University, and S. G. Wang, ZheJiang Gongshang University. I am very grateful to Dr. Ridha Benosman in the laboratory at Le Cnam since he has provided great help when I was living in Paris. I am truly grateful to all the fellows in the laboratory at Xidian University. It has been a pleasure to conduct research with them in System Control & Automation Group. Among them are Dr. Anrong Wang, Dr. Ding Liu, Dr. Gaiyun Liu, Dr. Hesuan Hu, Dr. Na Wei, Dr. Mi Zhao, Dr. Meng Qin, Dr. Mingming Yan, Dr. Chunfu Zhong, Dr. Yifan Hou, Dr. Jinwei Guo, Dr. Shaoyong Li, Dr. Liang Hong, Mr. Qi Wang, Ms. Jiafeng Zhang, Mr. Xi Wang, Mr. Xiaoliang Chen, and Ms. Yin Tong.

5 4

6 Résumé Notre thèse est consacrée à l étude de la supervision des réseaux de Petri en vue de la conception de systèmes manufacturiers flexibles. L objectif est la définition de stratégies de pilotage en ligne pour l évitement de conflits et d interblocages, dans le cadre de la théorie de la supervision. Le point de départ de notre travail est d exploiter le graphe de marquage du réseau de Petri, ce qui permet en particulier d obtenir des stratégies de commande maximalement permissive pour des problèmes d évitement de conflits et d interblocages. Nous avons ainsi introduit des techniques originales, manipulations d inégalités ou réductions d ensembles de marquages, destinées à diminuer la complexité algorithmique d une telle méthode. Dans premier temps, nous avons focalisé sur la synthèse de superviseurs dits purs, ce qui correspond au cas particulier où l ensemble de marquage légaux, est convexe. Cette optimisation est ensuite considérée du point de vue de la facilité de mise en œuvre. Nous traitons ainsi de la minimisation de la structure du superviseur et de son coût d implémentation en préservant une structure de supervision qui offre à la fois la permissivité maximale et une complexité de calcul raisonnable en vue d utilisation sur des installations réelles. Aussi, nous avons cherché à réduire le nombre de places de contrôle nécessaires pour réaliser un superviseur maximalement permissif, pour cela nous avons formule le calcul du nombre minimal de places de contrôle en termes d un problème de programmation linéaire. Afin d affaiblir la complexité de ce calcul de superviseur, deux versions de l algorithme sont proposées. Ce problème de minimisation de la taille du superviseur, quoique fondamental, n est pas abordé aussi directement dans la littérature. Il s agit là d une première contribution. Dans u second temps, nous nous sommes intéressés aux réseaux de Petri à boucles (self-loops). Les boucles étant représentées par une variable qui s ajoute dans la contrainte inégalité définissant l ensemble de marquages légaux. Après avoir proposé une méthode de réduction du nombre d inégalités ainsi que du superviseur optimal en se basant sur les approches et résultats précédents, 5

7 RÉSUMÉ nous avons établi une condition suffisante d obtention d un superviseur maximalement permissif permettant de traiter des ensembles de marquages légaux non convexes. Enfin nous proposons une méthode de synthèse de contrôleur pour une nouvelle classe de réseaux de Petri, avec des arcs inhibiteurs correspondant à des contraintes définies par des intervalles. La taille du contrôleur ainsi obtenu et défini en termes d arcs inhibiteurs à intervalles s en trouve réduite ainsi que par conséquent sont coût d implémentation. Mots clés : contrôleurs Réseaux de Petri, Systèmes de production automatisés, interblocage, synthèse de 6

8

9 RÉSUMÉ 8

10 Abstract Flexible manufacturing systems (FMSs) are computer-controlled systems that can manufacture different kinds of products with a limited number of shared resources such as robots, buffers, machines, etc. In FMSs, deadlocks are a highly undesired situation, which always cause unnecessary cost and even may lead to catastrophic results in these systems. In order to meet the production requirements of a system and make the best use of the system resources, an effective deadlock control policy must be designed and implemented to ensure that deadlocks can never occur. Based on Petri nets, deadlock prevention uses an off-line computation mechanism to impose constraints on a system in order to prevent it from reaching deadlock states. Once a control policy is established and applied, deadlocks cannot occur anymore. Generally, there are three very important criteria in evaluating the performance of a livenessenforcing supervisor for a system to be controlled : behavioral permissiveness, structural complexity, and computational complexity. A maximally permissive supervisor has the highest potential to lead to high utilization of system resources. A supervisor with a small number of control places can decrease the hardware and software costs in the stage of control validation and implementation. A deadlock control policy with low computational complexity means that it can be applied to complex systems. Thus, many researchers try their best to develop deadlock prevention algorithms that can obtain liveness-enforcing supervisors with maximal permissibility, a simple supervisory structure, and low computational complexity. Reachability graph analysis is an important technique for deadlock control, which always suffers from a state explosion problem since it requires to generate all or a part of reachable markings. Based on this technique, an optimal or suboptimal supervisor with high behavioral permissiveness can always be achieved. This thesis focuses on designing liveness-enforcing Petri net supervisors for FMSs by considering their behavioral permissiveness, supervisory structure, and computatio- 9

11 ABSTRACT nal complexity. The following research contributions are made in this thesis. 1. The design of a maximally permissive liveness-enforcing supervisor for an FMS is proposed by solving integer linear programming problems (ILPPs). A reachability graph is classified into two zones :alive-zone (LZ) and a deadlock-zone (DZ). An FBM is the one within the DZ, representing the very first entry from the LZ to the DZ. By using an integer linear programming approach, a P-invariant (PI) is designed for an FBM such that it is prevented from being reached and no legal marking is forbidden. We propose a vector covering approach to reduce the sets of legal markings and FBMs to very small sets, namely, the minimal covering set of legal markings and the minimal covered set of FBMs. Thus, we only consider two small sets of legal markings and FBMs to obtain the control places. When an FBM is selected and a control place is designed to forbid it, a further covering approach is developed to reduce the set of legal markings to a smaller one. As a result, the ILPP has a very small number of inequalities and can be solved in a short time. 2. Structural complexity is also an important issue for a maximally permissive Petri net supervisor. A deadlock prevention policy for FMSs is proposed, which can obtain a maximally permissive liveness-enforcing Petri net supervisor while the number of control places is compressed. A maximally permissive control purpose can be achieved by designing control places such that all markings in the minimal covered set of FBMs are forbidden and no marking in the minimal covering set of legal markings is forbidden. An ILPP (namely MCPP) is designed to minimize the number of control places under an assumption that a control place is associated with a P-semiflow. The resulting net has the minimal number of control places on the premise that the assumption holds, and possesses all permissive states of a plant. 3. In order to overcome the computational complexity problem in MCPP and ensure that the controlled system is maximally permissive with a simple structure, we develop an iterative deadlock prevention policy and a modified version. At each iteration, a maximally permissive PI is designed to forbid as many FBMs as possible by solving an ILPP. All FBMs that are forbidden by the PI are removed from the minimal covered set of FBMs. This process is carried out until no FBM is left in the minimal covered set. A maximally permissive supervisor with a small number of control places can be accordingly obtained. We also provide a modified version of the above mentioned method in order to further reduce the computational time. In fact, we only modify the 10

12 ABSTRACT iteration steps as follows. At each iteration, an FBM is singled out from the minimal covered set of FBMs and a PI is designed to forbid the selected FBM. The PI is computed by solving an ILPP such that the selected FBM is forbidden and no legal marking in the minimal covering set of legal markings is forbidden. At the same time, we also use an objective function to maximize the number of FBMs that are forbidden by the PI. The modified version has a small number of constraints and variables. Therefore, compared with the former, it can be solved in a shorter time in general. 4. We consider the hardware and software costs in the stage of control implementation of a deadlock prevention policy, aiming to obtain a maximally permissive Petri net supervisor with the lowest implementation cost. A supervisor consists of a set of control places and the arcs connecting control places to transitions. We assign an implementation cost for each control place and control and observation costs for each transition. Based on reachability graph analysis, maximal permissiveness can be achieved by designing place invariants that prohibit all FBMs but no legal markings. By solving an ILPP, a set of optimal control places are obtained and the objective function is used to minimize the implementation cost of the final supervisor. A vector covering approach is used to reduce the number of considered markings, aiming to reduce the computational overhead of the proposed method. 5. Self-loops are used to design maximally permissive supervisors. A self-loop in a Petri net cannot be mathematically represented by its incidence matrix. We present a mathematical method to design a maximally permissive Petri net supervisor that is expressed by a set of control places with self-loops. A control place with a self-loop can be represented by a constraint and a selfloop associated with a transition whose firing may lead to an illegal marking. The constraint is designed to ensure that all legal markings are reachable and the self-loop is used to prevent the system from reaching illegal markings by disabling the transition at a specific marking. A marking reduction approach is developed in order to cut down the considered markings, which can greatly decrease the computational overhead of the proposed method. An ILPP is developed to compress the number of control places, aiming to reduce the structural complexity of the resulting supervisors. Experimental results demonstrate that it can obtain an optimal supervisor for some cases that cannot be optimally controlled by pure net supervisors. 6. Supervisory control is usually considered as an external control mechanism to a system by controlling the occurrences of its controllable events. There exist Petri net models whose le- 11

13 ABSTRACT gal reachability spaces are non-convex. In this case, they cannot be optimally controlled by the conjunctions of linear constraints. For Petri net models of FMSs, we present a method to classify the legal markings into several subsets. Each subset is associated with a linear constraint that can forbid all FBMs. Then, the disjunctions of the obtained constraints can make all legal markings reachable and forbid all FBMs, i.e., the controlled net is live and maximally permissive. An ILPP is formulated to minimize the number of the constraints. A supervisory structure is also proposed to implement the disjunctions of the constraints. Finally, examples are provided to illustrate the proposed method. 7. We present a Petri net structure, namely an interval inhibitor arc, and its application to the optimal supervisory control of Petri nets. An interval inhibitor arc is an arc from a place to a transition labeled with an integer interval. The transition is disabled by the place if the number of tokens in the place is in the labeled interval. The formal definition and the firing rules of Petri nets with interval inhibitor arcs are presented. Then, an optimal Petri net supervisor based on the interval inhibitor arcs is designed to prevent a system from reaching illegal markings. Two techniques are presented to simplify the supervisory structure by compressing the number of control places. The proposed approaches are general since they can be applied to any bounded Petri net models. A marking reduction approach is also introduced if they are applied to Petri net models of FMSs. A number of examples are provided to demonstrate the proposed approaches and the experimental results show that they can obtain optimal Petri net supervisors for some net models that cannot be optimally controlled by pure net supervisors. Furthermore, the obtained supervisor is structurally simple. Keywords : Petri net, flexible manufacturing system, deadlock, supervisory control 12

14 Table des matières Résumé 5 Abstract 9 Liste des tableaux 19 Table de figures 23 Introduction Deadlocks in Flexible Manufacturing Systems Petri Net Based Deadlock Resolution in FMS Thesis Organization Publications I Pure Optimal Supervisors 35 1 Preliminaries Petri nets Basic Concepts Structural Analysis Reachability Graph Control Place Computation for a Place Invariant

15 TABLE DES MATIÈRES 1.3 Plant, Supervisor, and Controlled System Maximally Permissive Supervisors Introduction Optimal Control Place Synthesis by Place Invariant Vector Covering Approach for Place Invariant Control Optimal Deadlock Prevention Policy Experimental Results Conclusions Structurally Minimal Supervisors Introduction Minimal Number of Control Places Synthesis Deadlock Prevention Policy Experimental Results Conclusions Maximally Permissive Supervisors with a Simple Structure Introduction Control Place Synthesis for Forbidding FBM Deadlock Prevention Policy Experimental Results Conclusions Maximally Permissive Supervisor with Lowest Implementation Cost Introduction Lowest Implementation Cost Supervisor Synthesis An Illustrative Example

16 TABLE DES MATIÈRES 5.4 Experimental Results Conclusions II Nonpure Optimal Supervisors Maximally Permissive Supervisors with Self-loops Introduction Computation of Optimal Control Places with Self-loops Reduction of Considered Legal Markings Reduction of Supervisory Structures Deadlock Prevention Policy Experimental Results Conclusions Optimal Supervisory Control by a Set Classification Approach Introduction Optimal Control by Classifying Legal Markings Reduction of Considered Markings Optimal Classification of the Set of Legal Markings Supervisory Structure for Disjunctions of Constraints An Illustrative Example Experimental Results Conclusions Maximally Permissive Supervisor with Interval Inhibitor Arc Introduction Interval Inhibitor Arc

17 TABLE DES MATIÈRES 8.3 Optimal Control Place Synthesis with Interval Inhibitor Arcs Reduction of Supervisory Structures Simple Supervisory Structures Compressed Supervisory Structures Reduction of Considered Legal Markings for FMSs Deadlock Prevention Policies Experimental Results Conclusions Conclusions and Future Research Contributions Limitations Future Work Glossaire

18 Liste des tableaux 2.1 Control places computed for the net shown in Figure Control places computed for the net model in Figure Parameters in the model depicted in Fig. 2.3 with varying markings Control places computed for the net model in Figure Performance comparison of some deadlock control policies Control places computed for the net in Fig The numbers of constraints and variables in MCPP A solution of the MCPP Control places computed for the net shown in Fig Control places computed for the net shown in Fig Performance comparison of some deadlock control policies Control places computed for the net shown in Fig Performance comparison of some deadlock control policies Comparison of constraints and variables among MFFP1, MFFP2, and MCPP Control places computed for the net shown in Fig Control places computed for the net shown in Fig Control places computed for the net shown in Fig.4.4 by Algorithm Control places computed for the net shown in Fig.4.4 by Algorithm

19 LISTE DES TABLEAUX 4.6 Performance comparison of some deadlock control policies Control places computed for the net shown in Fig.4.5 by Algorithm Control places computed for the net shown in Fig.4.5 by Algorithm Performance comparison of some deadlock control policies The number of constraints and variables in LICOSP1 and LICOSP Experimental results for the net shown in Fig. 5.2 in Cases 1) and 2) Experimental results for the net shown in Fig. 5.3 in Case 1) Experimental results for the net shown in Fig. 5.3 in Case 2) Performance comparison of some deadlock control policies Experimental results for the net shown in Fig. 5.4 in Case 1) Experimental results for the net shown in Fig. 5.4 in Case 2) The numbers of constraints and variables in MPP(t) Experimental results for the net shown in Fig Performance comparison of deadlock control policies for the S 4 PR in Fig Experimental results for the net shown in Fig Performance comparison of some deadlock control policies The numbers of constraints and variables in MNDC Experimental results for the net shown in Fig Experimental results for the net shown in Fig The numbers of constraints and variables in MNTMP(t q ) The numbers of constraints and variables in MNMP The numbers of constraints and variables in MNTMP(t q ) and MNMP for FMSs Experimental results for the net shown in Fig. 8.7 by Algorithm Experimental results for the net shown in Fig. 8.7 by Algorithm

20 LISTE DES TABLEAUX 8.6 Experimental results for the net shown in Fig by Algorithm Experimental results for the net shown in Fig by Algorithm Performance comparison of deadlock control policies for the net in Fig Experimental results for the net shown in Fig by Algorithm Experimental results for the net shown in Fig by Algorithm Performance comparison of deadlock control policies for the S 4 PR in Fig Experimental results for the net shown in Fig by Algorithm Experimental results for the net shown in Fig by Algorithm Performance comparison of some deadlock control policies

21 LISTE DES TABLEAUX 20

22 Table des figures 1.1 A Petri net example A Petri net example The reachability graph of a Petri net (a) A Petri net model and (b) its reachability graph Petri net model of a manufacturing system An optimally controlled system of the net shown in Figure Petri net model of an FMS An S 3 PR model in Ezpeleta et al. (1995) [18] A large-scale Petri net model from Li and Zhou (2005) [56] Petri net model of an AMS An optimally controlled system of the Petri net in Fig Petri net model of an FMS An S 3 PR model in Ezpeleta et al. (1995) [18] The Petri net model of an FMS A controlled system of the Petri net in Fig.4.1 by Algorithm A controlled system of the Petri net in Fig.4.1 by Algorithm Petri net model of an FMS An S 3 PR model in Ezpeleta et al. (1995) [18]

23 TABLE DES FIGURES 5.1 Layout of an FMS with its control unit Petri net model of an FMS A Petri net model of an FMS A Petri net model of an FMS (a) A Petri net without an optimal pure net supervisor and (b) an optimal supervisor with self-loops (a) The reachability graph of the net in Fig. 6.1(a) and (b) the reachability graph of the controlled net in Fig. 6.1(b) A control place p s with a self-loop associated with transition t A self-loop associated with transition t and an arc generated by a PI A self-loop and an additional arc with W(p s, t) = w + n i=1 l i [N](p i, t) A self-loop and an additional arc with W(t, p s ) = w n i=1 l i [N](p i, t) Petri net model of an FMS The reachability graph of the net in Fig Optimal Petri net supervisor for the net in Fig A Petri net model in Tricas et al. (2005) Petri net model of an FMS (a) A Petri net without an optimal pure net supervisor and (b) its reachability graph (a) the non-convex legal space, (b) its set classification, and (c) an optimally controlled system An additional structure for a control place p s j Supervisory control structure for the disjunctions of constraints (a) A simple example, (b) the supervisor for μ 2 0 μ 3 0, and (c) a marking at which t 2 is disabled Petri net model of an FMS

24 TABLE DE FIGURES 7.7 Optimal Petri net supervisor for the net in Fig A Petri net model in [82] Petri net model of an FMS An interval inhibitor arc Simple examples of Petri nets with interval inhibitor arcs The simplified representations for (a) W(p, t) = w and Å(p, t) = [a, b], and (b) W(t, p) = w and Å(p, t) = [a, b] The simplification of a redundant interval inhibitor arc The special case of a self-loop replaced by an interval inhibitor arc The special case of a loop with W(p, t) = w 1 and W(t, p) = w 2 replaced by an interval inhibitor arc Å(p, t) = [0, w 1 1] and a normal arc A Petri net model The reachability graph of the net in Fig (a) The optimal net supervisor obtained by Algorithm 8.1 and (b) the optimal net supervisor obtained by Algorithm Petri net model of an FMS (a) The optimal net supervisor obtained by Algorithm 8.1 and (b) the optimal net supervisor obtained by Algorithm A Petri net model in Tricas et al. (2005) [82] Petri net model of an FMS

25 TABLE DE FIGURES 24

26 Introduction 0.1 Deadlocks in Flexible Manufacturing Systems Flexible manufacturing systems (FMSs) [88] can automatically finish various kinds of jobs by using shared resources such as robots, machines, and automated guided vehicles. In an FMS, parts are processed in a pre-established sequence to compete for the limited system resources. Deadlocks [14] may occur when some processes keep waiting indefinitely for the other processes to release resources. Deadlocks [32] must be considered in FMSs because a system in a deadlock situation always means that the whole system or a part of it is blocked. Deadlocks often offset the advantages of these systems, such as long downtime and low use of some critical and expensive resources, and may lead to catastrophic results in it. Deadlocks in FMSs have been widely studied by researchers. In [14], Coffman et al. establish four necessary conditions for the occurrence of deadlocks in a resource allocation system, which can be explained in the context of FMSs as follows : 1. Mutual exclusion, which means that at any time, a resource can only be exclusively occupied by one part. For other parts, this resource is unavailable until it is released ; 2. No preemption, which means that once a resource is acquired by a part in process, it cannot be forcibly removed by any external entity. The resource can be released only by the explicit action of the process holding it ; 3. Hold and wait, which means that processes already hold some and wait for additional ones ; 4. Circular wait, which means that there is a set of linearly ordering processes such that each process requests the resource currently held by the next process while the last process requests the resource held by the first one. 25

27 0.1. DEADLOCKS IN FLEXIBLE MANUFACTURING SYSTEMS Once a deadlock occurs, the above four conditions must be held. That is to say, deadlocks cannot occur if one of them is not held. The first three conditions depend on the physical property of a system and its resources. However, the last condition is decided by the request, allocation, and release of the system resources. It is controllable and can be broken by properly assigning the resources of a system, aiming to avoid the occurrence of a circular wait. Generally, the deadlock resolution methods are classified into three strategies : deadlock detection and recovery [43], [96], deadlock avoidance [1], [3], [20], [34], [35], [86], [89], [90], [91], and deadlock prevention [18], [29], [30], [42], [44], [98]. A deadlock detection and recovery approach permits the occurrences of deadlocks. When a deadlock occurs, it is detected and then the system is put back to a deadlock-free state, by simply reallocating the resources. The efficiency of this approach depends upon the response time of the implemented algorithms for deadlock detection and recovery. In general, these algorithms require a large amount of data and may become complex when several types of shared resources are considered [1]. In deadlock avoidance, at each system state an on-line control policy is used to make a correct decision to proceed among the feasible evolutions. The main purpose of this approach is to keep a system away from deadlock states. Aggressive methods usually lead to higher resource utilization and throughput, but do not totally eliminate all deadlocks. In the cases that a deadlock arises, suitable recovery strategies are still required [43], [86], [96]. Conservative methods eliminate all unsafe states and deadlocks, and often some good states, thereby degrading the system performance. On the other hand, they intend to be easy to implement. Deadlock prevention is considered to be a well-defined problem in RAS literature. It is usually achieved by using an off-line computational mechanism to control the request for resources to ensure that deadlocks never occur. The goal of a deadlock prevention approach is to impose constraints on a system to prevent it from reaching deadlock states. In this case, the computation is carried out off-line in a static way and once the control policy is established, the system can no longer reach undesirable deadlock states. The major criticism is that they tend to be too conservative, thereby reducing the resource utilization and system productivity. Generally speaking, deadlock resolution in FMS can be implemented by a number of formal 26

28 0.2. PETRI NET BASED DEADLOCK RESOLUTION IN FMS tools, such as graph theory, automata, and Petri nets. Graph theory or a digraph is a simple and intuitive tool to describe interactions between operations and resources, from which a deadlock control policy can be derived. The representative work can be found in the literature by Wysk [13], [43], [95], [96], and Fanti [21], [22], [23], [24], [25], [26], [27], [28]. Originated by Ramadge and Wonham, supervisory control theory (SCT) [72] based on formal languages and finite automata aims at providing a comprehensive and structural treatment of the modeling and control of discrete event systems. As an important paradigm, SCT has a profound influence on the supervisory control of automated manufacturing systems under other formalisms such as Petri nets. A number of effective yet computationally efficient deadlock control policies are developed based on automata. A large amount of representative research is presented by Lawley, Reveliotis, and Ferreira in [45], [46], [47], [48], [49], [50], [51], [52], [53], [73], [74], [99]. In particular, a theoretically significant deadlock avoidance policy with polynomial complexity is developed for a class of resource allocation systems in [74], which is then described in a Petri net formalism [66]. 0.2 Petri Net Based Deadlock Resolution in FMS Petri nets [64] are a graph-based mathematical formalism suitable to describe, model, and analyze the behavior of RAS. As a good tool for describing and analyzing automated manufacturing systems, Petri nets can reflect their behaviors and properties, including the orders of events, concurrency, synchronization, and deadlocks. Now Petri nets have been used in a wide range of areas such as manufacturing systems, computer and communication networks, and automation systems. Based on Petri nets, researchers develop many policies to deal with the deadlock problem [18; 55; 57; 54; 58] in FMS. Generally, there are mainly two analysis techniques to deal with deadlock prevention in FMS : structure [37; 42; 43; 57; 58] and reachability graph analysis [31; 84]. The former always obtains a deadlock prevention policy by special structural objects of a Petri net such as siphons and resource-transition circuits. This method can lead to a computationally efficient liveness-enforcing supervisor in general but always restrict a system such that a part of permissive behavior is excluded. For the latter, the reachability graph can fully reflect the behavior of a system. Though its computation is very expensive, a very highly or even maximally permissive liveness-enforcing supervisor can always be obtained. 27

29 0.2. PETRI NET BASED DEADLOCK RESOLUTION IN FMS The above two analysis techniques play a key role in the development of deadlock control policies of Petri nets. A very popular software package for analysis of Petri net is INA [77]. However, it cannot handle large-scale Petri net system, especially in the sense of reachability graph analysis. For instance, based on a computer in Windows XP operating system with Intel CPU Core 2.8 GHz and 4 GB memory, we have tried to enumerate reachable markings for an example with 48 places and 38 transitions by using INA. However, the computation cannot be finished due to memory overflow problem. Another powerful tool for generating reachable markings of a Petri net is binary decision diagrams (BDD) [2; 5]. BDD have a compact data structure, which make them have the capability of representing large sets of encoded data with small data structure and enable the efficient manipulation of those sets. BDD have been applied to the analysis of Petri nets successfully to deal with some problems. For example, in [68; 67; 63], they are used to model the structure and behavior of bounded Petri nets, providing a very efficient way to compute the set of reachable markings. This implies that BDD are powerful to deal with large sets of data. There are three important criteria in evaluating the performance of a liveness-enforcing supervisor for a system to be controlled, which are behavioral permissiveness, structural complexity, and computational complexity. A maximally permissive supervisor always implies high utilization of system resources. A supervisor with a small number of control places can decrease the hardware and software costs in the stage of control verification, validation, and implementation. A deadlock control policy with low computational complexity means that it can be applied to largesized systems. Thus, many efforts are made to develop deadlock prevention algorithms that can obtain liveness-enforcing supervisors with maximal permissibility, simple supervisory structures, and low computational complexity. In this thesis, optimal supervisor is used as a synonym for maximally permissive supervisor. Reachability graph analysis is an important technique for deadlock control, which always suffers from a state explosion problem since it requires generating all or a part of reachable markings. Based on this technique, an optimal or suboptimal supervisor with highly behavioral permissiveness can always be achieved. In [83], Uzam and Zhou develop an iterative approach to design an optimal or suboptimal supervisor. In their study, the reachability graph of a net is classified into two parts: alive-zone (LZ) and a deadlock-zone (DZ). First-met bad markings (FBM) are derived from the reachability graph. An FBM is a marking in the DZ, representing the very first entry from 28

30 0.3. THESIS ORGANIZATION the LZ to the DZ. At each iteration, an FBM is selected and a control place is designed to prevent the FBM from being reached by using a place invariant (PI) based method proposed in [100]. This process does not terminate until the resulting net is live. This method is easy to use if the reachable space of a system is small but cannot guarantee the optimality of the supervisor. In [31], the theory of regions developed by Ghaffari et al. is an effective approach since it can definitely find an optimal supervisor if such a supervisor exists. However, it suffers from computational and structural complexity problems. By combining siphon and marking generation, Piroddi et al. [69] propose a selective siphon control policy that can obtain a small-sized supervisor with highly permissive behavior. A modified approach [70] is provided to avoid a full siphon enumeration that makes more efficient the deadlock prevention policy in [69]. The two methods can find an optimal supervisor for each example presented in their studies [69], [70]. However, no formal proof is provided to show their policy is definitely maximally permissive in theory. On the other hand, they reduce the complexity of supervisory structures but cannot minimize them. 0.3 Thesis Organization This thesis focuses on the development of deadlock prevention policies of FMSs, aiming to design optimal, i.e., maximally permissive Petri net supervisors. The behavioral permissiveness is considered as the main criterion in evaluating the performance of a liveness-enforcing supervisor for an FMS. Meanwhile, we also consider the structural and computational complexity of a deadlock prevention policy, aiming to design supervisors with behavioral optimality, structural minimality, and low computational complexity. All deadlock control policies in this work are based on the reachability graph analysis of Petri nets. The rest of the thesis is organized as follows. Chapter 1 provides some basics and notations of Petri nets used throughout this thesis. Structural and reachability graph analysis is also provided. The former includes the concepts of place invariants, siphons, and traps. The latter contains some very important concepts such as the livezone (LZ), deadlock-zone (DZ), legal markings, and first-met bad markings (FBMs). Chapter 2 proposes a deadlock prevention policy to obtain a maximally permissive livenessenforcing supervisor for FMS by solving integer linear programming problems (ILPPs). A reachability graph is classified into two zones : live-zone (LZ) and deadlock-zone DZ). An FBM is the 29

31 0.3. THESIS ORGANIZATION one within DZ, representing the very first entry from LZ to DZ. By using an integer linear programming approach, a PI is designed for an FBM such that it is prevented from being reached and none of the legal markings is forbidden. We propose a vector covering approach to reduce the sets of legal markings and FBM to very small sets, namely, a minimal covering set of legal markings and a minimal covered set of FBM. Thus, we only consider two small sets of legal markings and FBM to obtain the control places. When an FBM is selected and a control place is designed to forbid it, a further covering approach is developed to reduce the set of legal markings to a smaller one. As a result, the integer linear programming problem has a small number of inequalities and can be solved in a short time. Chapter 3 aims to design a maximally permissive liveness-enforcing Petri net supervisor with a minimal structure. Structural complexity is also an important issue for a maximally permissive Petri net supervisor. A deadlock prevention policy for FMS is proposed, which can obtain a maximally permissive liveness-enforcing Petri net supervisor while the number of control places is compressed. A maximally permissive control purpose can be achieved by designing control places such that all markings in the minimal covered set of FBM are forbidden and no marking in the minimal covering set of legal markings is prohibited. An ILPP (namely MCPP) is designed to minimize the number of control places on condition that a control place is associated with a P-semiflow. The resulting net has the minimal number of control places on the premise that the assumption holds, and possesses all permissive states of a plant. Chapter 4 tries to overcome the computational complexity problem in MCPP and ensures that the controlled system is maximally permissive with a simple control structure. The chapter develops an iterative deadlock prevention policy and a modified version. At each iteration, a maximally permissive PI is designed to forbid as many FBM as possible. Solving the ILPP can obtain a PI and control place. All FBM that are forbidden by the PI are removed from the minimal covered set of FBM. This process is carried out until no FBM is left in the minimal covered set. A maximally permissive supervisor with a small number of control places can be accordingly obtained. We also provide a modified version of the above mentioned method in order to further reduce the computational time. In fact, we only modify the iteration steps as follows. At each iteration, an FBM is singled out from the minimal covered set of FBM and a PI is designed to forbid the selected FBM. The PI is computed by solving an ILPP such that the selected FBM is forbidden and no 30

32 0.3. THESIS ORGANIZATION legal markings in the minimal covering set of legal markings are forbidden. At the same time, we also use an objective function to maximize the number of FBM that are forbidden by the PI. The modified version of an ILPP has a small number of constraints and variables. Therefore, compared with the former, it can be solved in a shorter time in general. Chapter 5 aims to obtain a maximally permissive Petri net supervisor with the lowest implementation cost. A supervisor consists of a set of control places and the arcs connecting control places to transitions. We assign an implementation cost for each control place and control and observation costs for each transition. Based on reachability graph analysis, maximal permissiveness can be achieved by designing place invariants that prohibit all FBMs but no legal markings. By solving an ILPP, a set of optimal control places are obtained and the objective function is used to minimize the implementation cost of the final supervisor. A vector covering approach is used to reduce the number of considered markings, aiming to reduce the computational overhead of the proposed method. Chapter 6 illustrates that Petri nets with self-loops are more powerful than pure nets in modeling and control of flexible manufacturing systems. A self-loop in a Petri net cannot be mathematically represented by its incidence matrix. This chapter presents a mathematical method to design a maximally permissive Petri net supervisor that is expressed by a set of control places with self-loops. A control place with a self-loop can be represented by a constraint and a self-loop associated with a transition whose firing may lead to an illegal marking. The constraint is designed to ensure that all legal markings are reachable and the self-loop is used to prevent the system from reaching illegal markings by disabling the transition at a specific marking. A marking reduction approach is developed in order to cut down the considered markings, which can greatly decrease the computational overhead of the proposed method. An integer linear programming model is developed to compress the number of control places, aiming to reduce the structural complexity of the resulting supervisors. Finally, illustrative examples are used to validate the proposed method and to demonstrate that it can obtain an optimal supervisor for some cases that cannot be optimally controlled by pure net supervisors. Chapter 7 presents a set classification approach to design maximally permissive supervisors. Supervisory control is usually considered as an external control mechanism to a system by controlling the occurrences of its controllable events. There exist Petri net models whose legal reachability 31

33 0.3. THESIS ORGANIZATION spaces are non-convex. In this case, they cannot be optimally controlled by the conjunctions of linear constraints. For Petri net models of flexible manufacturing systems, we present a method to classify the legal markings into several subsets. Each subset is associated with a linear constraint that can forbid all first-met bad markings. Then, the disjunctions of the obtained constraints can make all legal markings reachable and forbid all first-met bad markings, i.e., the controlled net is live and maximally permissive. An ILPP is formulated to minimize the number of the constraints. A supervisory structure is also proposed to implement the disjunctions of the constraints. Finally, examples are provided to illustrate the proposed method. Chapter 8 presents a Petri net structure, namely an interval inhibitor arc, and its application to the optimal supervisory control of Petri nets. An interval inhibitor arc is an arc from a place to a transition labeled with an integer interval. The transition is disabled by the place if the number of tokens in the place is between the labeled interval. The formal definition and the firing rules of Petri nets with interval inhibitor arcs are developed. Then, an optimal Petri net supervisor based on the interval inhibitor arcs is designed to prevent a system from reaching illegal markings. Two techniques are presented to simplify the supervisory structure by compressing the number of control places. The proposed approaches are general since they can be applied to any bounded Petri net models. A marking reduction approach is also introduced if they are applied to Petri net models of flexible manufacturing systems. The experimental results show that they can obtain optimal Petri net supervisors for some net models that cannot be optimally controlled by pure net supervisors. Furthermore, the obtained supervisor is structurally simple. Finally, Chapter 9 concludes this thesis and provides some future directions of the work Publications This thesis includes the work from a number of published papers, as follows : Journal Papers : (published or accepted) 1. Yufeng Chen, Zhiwu Li, Mohamed Khalgui, and Olfa Mosbahi, Design of a maximally permissive liveness-enforcing Petri net supervisor for flexible manufacturing systems, IEEE Transactions on Automation Science and Engineering, vol. 8, no. 2, pp , Yufeng Chen and Zhiwu Li, Design of a maximally permissive liveness-enforcing super- 32

34 0.3. THESIS ORGANIZATION visor with a compressed supervisory structure for flexible manufacturing systems, Automatica, vol. 47, no. 5, pp , Yufeng Chen, Zhiwu Li, and Mengchu Zhou, Behaviorally optimal and structurally simple liveness-enforcing supervisors of flexible manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A : Systems and Humans, vol. 42, no. 3, pp , Yufeng Chen, Zhiwu Li, and Mengchu Zhou, Most permissive Petri net supervisors for flexible manufacturing systems, International Journal of Production Research, vol. 50, no. 22, pp , Yufeng Chen and Zhiwu Li, On structural minimality of optimal supervisors for flexible manufacturing systems, Automatica, vol. 48, no. 10, pp , Yufeng Chen, Zhiwu Li, and Abdulrahman Al-Ahmari, Nonpure Petri net supervisors for optimal deadlock control of flexible manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics : Systems, vol. 43, no. 2, pp , Yufeng Chen and Gaiyun Liu, Computation of minimal siphons in Petri nets by using binary decision diagrams, ACM Transactions on Embedded Computing Systems, vol. 12, no. 1, pp. 3 :1 3 :15, Yufeng Chen, Zhiwu Li, and Mengchu Zhou, Optimal supervisory control of flexible manufacturing systems by Petri nets : A set classification approach, IEEE Transactions on Automation Science and Engineering, vol. 11, no. 2, pp , Yufeng Chen, Zhiwu Li, Kamel Barkaoui, and Murat Uzam, New Petri net structure and its application to optimal supervisory control : Interval inhibitor arcs, IEEE Transactions on Systems, Man, and Cybernetics : Systems, vol. 44, no. 10, pp , Yufeng Chen, Zhiwu Li, and Kamel Barkaoui, Maximally permissive liveness-enforcing supervisor with lowest implementation cost for flexible manufacturing systems, Information Sciences, vol. 256, pp , Yufeng Chen and Kamel Barkaoui, Maximally permissive Petri net supervisors for flexible manufacturing systems with uncontrollable and unobservable transitions, Asian Journal of Control, vol. 16, no. 5, pp. 1 13,

35 0.3. THESIS ORGANIZATION Conference Papers : 1. Yufeng Chen, Zhiwu Li, and Kamel Barkaoui, Maximally permissive Petri net supervisors with a novel structure, accepted by 12th IFAC International Workshop on Discrete Event Systems, École Normale Supérieure de Cachan, France, May 14 16, Yufeng Chen, Ding Liu, Gaiyun Liu, and Kamel Barkaoui, Computation of resource circuits of Petri nets by using binary decision diagrams, 5th International Conference On Modeling, Simulation and Applied Optimization, Hammamet, Tunisia, April 28 30, Yufeng Chen, Mengchu Zhou, and Xiaoou Li, Maximally permissive control of flexible manufacturing systems with fewest disjunctive constraints, Proceedings of the 2012 International Conference on Advanced Mechatronic Systems, Tokyo, Japan, September 18 21, Yufeng Chen, Zhiwu Li, and Kamel Barkaoui, Optimal Petri net supervisor with lowest implemental cost for flexible manufacturing systems, in 16th IEEE Conference on Emerging Technologies and Factory Automation (ETFA), Toulouse, September 5 9, (EI :

36 Première partie Pure Optimal Supervisors 35

37

38 Chapitre 1 Preliminaries This chapter provides some key concepts of Petri nets such as their formal definitions, structural analysis, and reachability graph analysis used throughout this thesis. 1.1 Petri nets Basic Concepts A Petri net is a directed bipartite graph which consists of two components : a net structure and an initial marking. A net (structure) contains two types of nodes : places and transitions. There are directed arcs from places to transitions and directed arcs from transitions to places in a net. Arcs are labeled by positive integers to represent their weights and labels for unity weight are always omitted. In graphically representation, places are shown as circles and transitions as boxes or bars. A place can hold tokens denoted by black dots, or a positive integer representing their number. The distribution of tokens over the places of a net is called a marking that corresponds to a state of the modeled system. The initial token distribution is hence called the initial marking. Let N denote the set of non-negative integers and N + the set of positive integers. Definition 1.1 A generalized Petri net (structure) is a four-tuple N = (P, T, F, W) where P and T are finite and nonempty sets. P is a set of places and T is a set of transitions with P T and P T =. F (P T) (T P) is called a flow relation of the net, represented by arcs with arrows from places to transitions or from transitions to places. W :(P T) (T P) N is a mapping that assigns a weight to an arc : W(x, y) > 0 if (x, y) F, and W(x, y) = 0 otherwise, 37

39 1.1. PETRI NETS where x, y P T. Exemple 1.1 A simple Petri net is shown in Fig. 1.1, where P = {p 1 p 5 },T = {t 1 t 4 }, F = {(p 1, t 1 ), (t 1, p 2 ), (p 2, t 4 ), (t 4, p 1 ), (t 1, p 3 ), (p 3, t 2 ), (t 2, p 4 ), (p 4, t 3 ), (t 3, p 5 ), (p 5, t 4 )}, W(p 1, t 1 ) = W(t 4, p 1 ) = W(t 1, p 3 ) = W(p 3, t 2 ) = W(t 2, p 4 ) = W(p 4, t 3 ) = W(t 3, p 5 ) = W(p 5, t 4 ) = 1, and W(t 1, p 2 ) = W(p 2, t 4 ) = 2. Places and transitions are graphically represented by circles and boxes, respectively. Fig. 1.1 A Petri net example. Definition 1.2 A marking M of a Petri net N is a mapping from P to N. M(p) denotes the number of tokens in place p. A place p is marked by a marking M if M(p) > 0. A subset S P is marked by M if at least one place in S is marked by M. The sum of tokens of all places in S is denoted by M(S ), i.e., M(S ) = p S M(p). S is said to be empty at M if M(S ) = 0. (N, M 0 ) is called a net system or marked net and M 0 is called an initial marking of N. Markings and vectors are usually represented via using a multiset (bag) or formal sum notation for the sake of an expedient description. As a result, vector M is denoted by p P M(p)p. For instance, a marking that puts two tokens in place p 1 and three tokens in place p 4 only in a net with P = {p 1 -p 6 } is denoted as 2p 2 + 3p 4 instead of (2, 0, 0, 4, 0, 0) T. Exemple 1.2 For the Petri net model in Fig. 1.1, its initial marking is (1, 0, 0, 0, 0) T, expediently denoted as M 0 = p 1.AtM 0, only p 1 is marked since M 0 (p 1 ) = 1 > 0. Definition 1.3 Let x P T be a node of net N = (P, T, F, W). The preset of x is defined as x = {y P T (y, x) F}. While the postset of x is defined as x = {y P T (x, y) F}. This 38

40 1.1. PETRI NETS notation can be extended to a set of nodes as follows : given X P T, X = x X x, and X = x X x. Exemple 1.3 For the Petri net model in Fig. 1.1, p 1 = {t 4 },p 1 = {t 1}, p 2 = {t 1 },p 2 = {t 4}, p 3 = {t 1 },p 3 = {t 2}, p 4 = {t 2 },p 4 = {t 3}, p 5 = {t 3 }, and p 5 = {t 4}. Moreover, {p 1, p 2, p 3 } = {t 1, t 4 } and {p 1, p 2, p 3 } = {t 1, t 2, t 4 }. Definition 1.4 A transition t T is enabled at a marking M if p t, M(p) W(p, t). This fact is denoted as M[t. Firing it yields a new marking M such that p P, M (p) = M(p) W(p, t) + W(t, p), as denoted by M[t M.M is called an immediately reachable marking from M. Marking M is said to be reachable from M if there exist a sequence of transitions σ = t 0 t 1 t n and markings M 1, M 2,, and M n such that M[t 0 M 1 [t 1 M 2 M n [t n M holds. The set of markings reachable from M in N is called the reachability set of Petri net (N, M) and denoted as R(N, M). Exemple 1.4 For the Petri net model in Fig. 1.1, only t 1 is enabled at the initial marking, i.e., M 0 [t 1. Firing t 1, a token is removed from p 1 and put two tokens in p 2 and one token in p 3. It yields a new marking M 1 = 2p 2 + p 3, denoted as M 0 [t 1 M 1. Similarly, we have M 1 [t 2 M 2,M 2 [t 2 M 3, and M 3 [t 2 M 0, where M 2 = 2p 2 + p 4 and M 3 = 2p 2 + p 5. Moreover, we have M 0 [t 1 t 2 M 2. The reachability set of the net is R(N, M 0 ) = {M 0, M 1, M 2, M 3 }. Definition 1.5 A Petri net (N, M 0 ) is safe if M R(N, M 0 ), p P, M(p) 1 is true. It is bounded if k N +, M R(N, M 0 ), p P, M(p) k. It is said to be unbounded if it is not bounded. A net N is structurally bounded if it is bounded for any initial marking. Definition 1.6 A net N = (P, T, F, W) is pure (self-loop free) if x, y P T, W(x, y) > 0 implies W(y, x) = 0. Exemple 1.5 The Petri net in Fig. 1.1 is not safe since p 2 can hold two tokens when t 1 fires at the initial marking. A safe Petri net model is shown in Fig Both net models are bounded, structurally bounded, and pure. Definition 1.7 A pure net N = (P, T, F, W) can be represented by its incidence matrix [N], where [N] is a P T integer matrix with [N](p, t) = W(t, p) W(p, t). For a place p (transition t), its incidence vector, a row (column) in [N], is denoted by [N](p, ) ([N](, t)). 39

41 1.1. PETRI NETS Fig. 1.2 A Petri net example. Exemple 1.6 For the Petri net in Fig. 1.1, it is clear that [N + ] = , [N ] = , [N] = Definition 1.8 Given a Petri net (N, M 0 ),t T is live at M 0 if M R(N, M 0 ), M R(N, M), M [t. (N, M 0 ) is live if t T, t is live at M 0. (N, M 0 ) is dead at M 0 if t T, M 0 [t. (N, M 0 ) is deadlock-free (weakly live or live-lock) if M R(N, M 0 ), t T, M[t. Definition 1.9 Let N = (P, T, F, W) be a net and σ a finite sequence of transitions. The Parikh vector of σ is σ : T N which maps t in T to the number of occurrences of t in σ. Denote t1 = (1, 0,, 0) T, t 2 = (0, 1, 0,, 0) T, and t k = (0, 0,, 0, 1) T assuming k = T. It is trivial that for each transition t, wehave[n](, t) = [N] t. Note that M[t M leads to M = M + [N](, t). Consequently, if M[t M,wehaveM = M + [N] t. For an arbitrary finite transition sequence σ such that M[σ M,wehave M = M + [N] σ (1.1) Structural Analysis Structural properties are an important issue to analyze and control Petri nets. Structure analysis is always applied via special structural objects of a Petri net, such as place invariants, siphons, and resource-transition circuits. Based on structural properties, the behavior of a Petri net can be 40

42 1.1. PETRI NETS analyzed simply. This section presents some classical structural objects of a Petri net and their properties. Definition 1.10 A P-vector is a column vector I : P Z indexed by P and a T-vector is a column vector J : T Z indexed by T, where Z is the set of integers. Definition 1.11 P-vector I is called a P-invariant (place invariant, PI for short) if I 0 and I T [N]=0 T. T-vector J is called a T-invariant (transition invariant) if J 0 and [N]J=0. Definition 1.12 P-invariant I is a P-semiflow if every element of I is non-negative. I = {p I(p) 0} is called the support of I. I + = {p I(p) > 0} denotes the positive support of P-invariant I and I = {p I(p) < 0} denotes the negative support of I. I is called a minimal P-invariant if I is not a superset of the support of any other one and its components are mutually prime. Theorem 1.1 Let (N, M 0 ) be a net with P-invariant I and M be a reachable marking from M 0. Then I T M = I T M 0. Property 1.1 If I is a P-semiflow of a net, I = I. Exemple 1.7 For the Petri net in Fig. 1.1, there are two P-invariants I 1 = (10111) T and I 2 = (21000) T, and a T-invariant J 1 = (1111) T. We have I 1 = {p 1, p 2 } and I 2 = {p 1, p 3, p 4, p 5 }. Both I 1 and I 2 are minimal P-invariants. According to Property 1.1, we also have I 1 = I 1 = {t 1, t 4 } and I 2 = I 2 = {t 1, t 2, t 3, t 4 }. Definition 1.13 A nonempty set S P is a siphon if S S.S PisatrapifS S. A siphon (trap) is minimal if there is no siphon (trap) contained in it as a proper subset. A minimal siphon S is said to be strict if S S. Property 1.2 Let S 1 and S 2 are two siphons (traps). Then, S 1 S 2 is a siphon (trap). Corollary 1.1 If I is a P-semiflow, then I is both a siphon and trap. 41

43 1.1. PETRI NETS Exemple 1.8 For the Petri net in Fig. 1.1, S = {p 1, p 3, p 4, p 5 } is both a siphon and trap since S = S = {t 1, t 2, t 3, t 4 }. S is also a P-semiflow. Property 1.3 Let M R(N, M 0 ) be a marking of net (N, M 0 ) and S a trap. If M(S ) > 0, then M R(N, M), M (S ) > 0. Property 1.4 Let M R(N, M 0 ) be a marking of net (N, M 0 ) and S a siphon. If M(S ) = 0, then M R(N, M), M (S ) = 0. Property 1.3 indicates that once a trap is marked at M, it is always marked at any reachable marking from M. Property 1.4 indicates that once a siphon is empty at M, it is always empty at any reachable marking from M. Theorem 1.2 Let (N, M 0 ) be an ordinary net and Π the set of its siphons. The net is deadlock-free if S Π, M R(N, M 0 ), M(S ) > 0. Definition 1.14 A siphon S is said to be controlled in a net system (N, M 0 ) if M R(N, M 0 ), M(S ) > 0. Definition 1.15 Let N = (P, T, F, W) be a Petri net with P X P and T X T.N X = (P X, T X, F X, W X ) is called a subnet generated by P X T X if F X = F [(P X T X ) (T X P X )] and f F X, W X ( f ) = W( f ) Reachability Graph Let G(N, M 0 ) be the reachability graph of a bounded Petri net. For deadlock control purpose, markings in a reachability graph can be classified into four categories : deadlock, bad, dangerous and good ones. A deadlock one indicates a dead situation in a system by which no successor is followed. A bad one has successors but cannot reach the initial marking. A good marking is the one which can reach the initial one and whose successors also can reach it. A dangerous marking can reach the initial one and at least one of its successors cannot reach it. For optimal control purpose, both good and dangerous markings should be kept in the controlled system, which, therefore are 42

44 1.1. PETRI NETS legal markings whose set is denoted by M L. For a Petri net system (N, M 0 ), the set of its legal markings is defined as : M L = {M M R(N, M 0 ) M 0 R(N, M)} (1.2) The set M L is the maximal set of reachable markings such that it is possible to reach initial marking M 0 from any legal marking without leaving M L. The set of legal markings can be divided into two sets : the set M G of good markings and the set M Dan. of dangerous markings, as defined below. M G = {M M L t Ts.t. M[t M M M L } (1.3) Property 1.5 M L = M G M Dan. M Dan. = {M M L t Ts.t. M[t M M M L } (1.4) The set of illegal markings, denoted as M L, can be obtained by removing all legal markings from R(N, M 0 ), i.e., M L = R(N, M 0 ) \M L (1.5) The set of dead markings is defined as : M Dead = {M R(N, M 0 ) t Ts.t. M[t } (1.6) In [84], G(N, M 0 ) is split into a deadlock-zone (DZ) and a live-zone (LZ), where the DZ contains deadlock and bad markings and the LZ contains all the legal markings. A first-met bad marking (FBM) is defined as the one within DZ, representing the very first entry from LZ to DZ. A mathematical form of the set of FBMs is defined as : M FBM = {M M in M L, M in M L, t T, s.t. M [t M} (1.7) We can see that from an FBM, it is not possible to reach the initial marking and it may lead to a deadlock one or a group of bad ones. 43

45 1.1. PETRI NETS Exemple 1.9 Fig. 1.3 shows the reachability graph of a Petri net, where M 13 and M 14 are deadlock, M 4,M 8, and M 9 are bad, M 1,M 2,M 3,M 5,M 6, and M 11 are dangerous and the others are good. The set of FBMs includes M 4,M 8,M 9,M 13, and M 14. Fig. 1.3 The reachability graph of a Petri net. In a reachability grpah, the set of good and dangerous markings in R(N, M 0 ), namely M L, should constitute the maximum legal behavior if a supervisor is optimally designed. It also can be seen that a system cannot reach any illegal marking if all FBMs are forbidden. An MTSI is a pair of a marking M and a transition t such that the firing of t at M leads to an illegal marking. Hence, the set of MTSIs is defined as follows : Ω={(M, t) M[t M M M L M M L } (1.8) where M is a dangerous marking and t is called a critical transition. If (M, t) is an MTSI, M and t are called the dangerous marking and the critical transition of (M, t), respectively. According to MTSIs of a Petri net, transitions are classified into two parts : critical and good ones, whose sets are denoted as T c and T g, respectively, which are defined as follows : T c = {t T M R(N, M 0 ), s.t. (M, t) is an MTSI} (1.9) T g = {t T M R(N, M 0 ), s.t. (M, t) is an MTSI} (1.10) 44

46 ! B 1.1. PETRI NETS For an optimal deadlock control purpose, we only consider to disable the critical transitions since their firing can lead to illegal markings. In a reachability graph, we can see that the liveness can be guaranteed by disabling the firing of the transition at the dangerous marking for each MTSI. Then, the controlled system cannot reach any illegal marking and is live. Exemple 1.10 Take the net model shown in Fig. 1.4(a) as an example. Its reachability graph is shown in Fig In this figure, we have M L = M G M D, where M G = {M 0, M 4, M 7, M 8, M 11, M 12, M 14 }, M D = {M 1, M 2, M 3, M 6 }, M FBM = {M 5, M 9, M 10 }, and Ω={(M 1, t 4 ), (M 2, t 1 ), (M 3, t 4 ), (M 6, t 1 )}. For the transitions, we have T c = {t 1, t 4 } and T g = {t 2, t 3, t 5, t 6 }. G H E F S T [ \ 8 9 W X U V I J O P ] ^ " # : ; M N < = > _ ` Q R K A C D o p q o r s t u v w s x p Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z { } ~ ƒ ˆ Š Œ Ž š œ ž Ÿ ª «± ² ³ µ ¹ º» ¼ ½ ¾ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ø ù ú û ü ý þ ÿ! " # $ % & ' ( ) * +, -. / : ; < = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n $ % % & ' ( ) * +, $ & (, $ - ) %. / ' ( ) * +, $ 0 ( & ' ( ) * +, $ & - ( & ' ( ) * +, $ (a) (b) Fig. 1.4 (a) A Petri net model and (b) its reachability graph. For transition t, it can be enabled at some legal markings and its firing also leads to legal markings. Thus, legal markings (including dangerous and good markings) are classified into two groups, as shown in the following definitions from [10]. Definition 1.16 Let M be a legal marking and t a transition. M is called a t-good marking if t is not enabled at M, or M with M[t M is a legal marking. M is called a t-dangerous marking if M with M[t M is an illegal marking. The sets of t-good and t-dangerous markings are denoted by G t and D t, respectively. A transition t can be enabled at some t-good markings. Hence, all t-good markings are classified into two sets : t-enabled good markings and t-disabled good markings, as presented below. 45

47 1.2. CONTROL PLACE COMPUTATION FOR A PLACE INVARIANT Definition 1.17 Let t be a transition and M a t-good marking. M is called a t-enabled good marking if M[t. Otherwise, M is called a t-disabled good marking. The sets of t-enabled and t-disabled good markings are denoted by E t and E t, respectively. Property 1.6 Let t be a transition in a Petri net. Then, G t = E t E t and M L = G t D t. Definition 1.18 Let t be a critical transition and M a t-dangerous marking. (M, t) is called a t-critical MTSI. The set of t-critical MTSIs is denoted as Ω t. According to Definitions 6.1 and 6.4, we have Ω t = {(M, t) M D t } (1.11) Exemple 1.11 Take t 1 in Fig. 6.2 as an example. We have E t1 = {M 0, M 1, M 4, M 8 }, Et 1 = {M 3, M 7, M 11, M 14 }, D t1 = {M 2, M 6 }, and Ω t1 = {(M 2, t 1 ), (M 6, t 1 )}. 1.2 Control Place Computation for a Place Invariant In [100], Yamalidou et al. develop a computationally efficient method to construct a supervisor based on the concept of place invariants. The control purpose is to enforce algebraic constraints containing elements of a marking. Let [N 0 ] be the incidence matrix of a plant net. The control places can be represented by a matrix [N c ] that contains the arcs connecting control places to transitions of the plant. The controlled net with incidence matrix [N] consists of both the original net and the control places, i.e., [N] = [ N0 N c ] The control goal is to enforce the plant to satisfy the following constraint : n l i μ i β (1.12) i=1 where μ i denotes the marking of place p i, and l i and β are non-negative integer constants. After the 46

48 1.2. CONTROL PLACE COMPUTATION FOR A PLACE INVARIANT introduction of a non-negative slack variable μ c, Constraint (1.12) becomes n l i μ i + μ s = β (1.13) i=1 where μ s represents the marking of control place p s, sometimes called a monitor. All constraints of type (1.12) can be grouped into a matrix form and rewritten as follows : [L] μ p b (1.14) where μ p is the marking vector of the Petri net model, [L]isann c n matrix, b is an n c 1 vector, and n c is the number of constraints in type (1.12). Similarly, all PI equations of the type of Equation (1.13) can be grouped into matrix form as follows : [L] μ p + μ c = b (1.15) where μ c is an n c 1 vector that represents the marking of the control places. The PI defined by Eq.(1.13) must satisfy the PI equation I T [N]=0 T. Given a Petri net incidence matrix [N p ], constraints [L] and b, the supervisor [N c ] can be computed as follows : [ I T N0 [N] = [L I] N c ] = 0 T [L] [N 0 ] + [N c ] = 0 T [N c ] = [L] [N 0 ] (1.16) where I is an n c n c identity matrix since the coefficients of the slack variables in the equations are all equal to one. Eq.(1.15) must be true also at the initial marking μ 0 of a net. Thus, the initial marking μ c0 of the supervisor can be calculated as follows : μ c0 = b [L] μ 0 (1.17) 47

49 1.3. PLANT, SUPERVISOR, AND CONTROLLED SYSTEM Definition 1.19 Let I be a PI defined by Eq.(1.13) and p s the control place associated with I. I is said to be maximally permissive if the addition of p s can forbid FBM but no legal marking. The control place computed by a maximally permissive PI is said to be maximally permissive in the sense that its addition excludes the reachability of FBM but does not forbid any legal marking. In the following, the design of maximally permissive PI is introduced. 1.3 Plant, Supervisor, and Controlled System A system to be controlled is usually called a plant or a plant net model in the framework of Petri nets. A supervisor is often considered as an external agent that supervises the system to evolve such that the given control specifications and requirements are satisfied. There are in general two types of specifications : language specifications and state specifications. In a Petri net formalism, a supervisor for a state specification usually consists of a set of transitions from the plant and a set of control places (monitors) that are connected to these transitions. The supervisor is used to decide whether an enabled transition can fire at a reachable markings such that the behavior of the plant satisfies the control specifications. By composing the plant net model and its Petri net supervisor via shared transitions, the resulting system is called the controlled (net) system of the plant. Traditionally, a supervisor should control the firing of the transitions in a plant, i.e., decide whether an enabled transition can fire at a reachable marking. Thus, the supervisor should not change the state of the plant. In this work, the supervisor may consists of both control places and added transitions for complex control specifications. However, the proposed supervisor has no arcs that connect the added transitions and the places in the plant to be controlled. That is to say, it is used to control the firing of the transitions of a given plant but does not change the state of the plant. Let R(N, M 0 ) be the set of reachable markings of a Petri net (N, M 0 ) and (N s, M s0 )bea supervisor for a given control specification. The compostion of (N, M 0 ) and (N s, M s0 ), i.e., the controlled system, is denoted as (N c, M c0 ). Let M c be a set of reachable markings that represent the maximally permissive behavior under the control specification. Let P be the set of places in (N, M 0 ). The supervisor (N s, M s0 ) is said to be maximally permissive if R(N c, M c0 ) P = M c, where R(N c, M c0 ) P = {M N P M = M c P, M c R(N c, M c0 )} and M = M c P represents that M is the 48

50 1.3. PLANT, SUPERVISOR, AND CONTROLLED SYSTEM restriction of M c in R(N c, M c0 )top. 49

51 1.3. PLANT, SUPERVISOR, AND CONTROLLED SYSTEM 50

52 Chapitre 2 Maximally Permissive Supervisors This chapter presents a computationally efficient method to design optimal control places, and an iteration approach that only computes the reachability graph once in order to obtain a maximally permissive liveness-enforcing supervisor of FMSs. A vector covering approach is presented to greatly reduce the computational overhead. Then, a number of FMS examples are presented to illustrate the proposed approaches. 2.1 Introduction The theory of regions is an effective approach that can derive a maximally permissive supervisor for a Petri net model by adding monitors if such a supervisor exists [31]. Thus it has been widely used for deadlock prevention [59; 83]. However, its computation is rather inefficient because it requires the reachability graph of a net which always suffers from the state explosion problem. Furthermore, its monitors are designed by solving a large number of sets of inequalities, which suffers from computational complexity problems. Uzam and Zhou [84] develop an iterative approach for the deadlock control in FMSs. In their study, a reachability graph is classified into deadlock-zone including deadlocks and critical bad markings that inevitably lead to deadlocks, and live-zone representing the legal markings of the reachability graph. An FBM is singled out from the reachability graph at each iteration and then a control place is designed to prevent this bad marking from being reached via constructing a PI of a Petri net by using a well-established invariant-based control method to compute a control place for a PI [100]. Although the method proposed in [84] is easy to use and straightforward, it cannot guarantee the optimality in general 51

53 2.2. OPTIMAL CONTROL PLACE SYNTHESIS BY PLACE INVARIANT for an FMS that is modeled by Petri nets. Piroddi et al. [69] develop a selective siphon control approach. At each iteration, the relations between uncontrolled siphons and critical markings (at which at least one siphon is empty) are identified and a set of siphons are selected by solving a set covering problem. Once the selected siphons are controlled, all the critical markings are accordingly forbidden, which indicates that all the uncontrolled siphons are controlled. This selective siphon technique can provide a small-sized supervisor. In [70], Piroddi et al. provide an improved method to avoid a full siphon enumeration and greatly reduce the overall computational time. For a Petri net model of an FMS, this chapter proposes a novel and computationally efficient method to design optimal control places, and an iterative approach that computes the reachability graph only once to obtain an optimal liveness-enforcing Petri net supervisor. A vector covering technique is developed, aiming to obtain a minimal covering set of legal markings and a minimal covered set of FBMs. At each iteration, an FBM from the minimal covered set is selected. By solving an integer linear programming problem, a place invariant associated with a monitor is designed to prevent the FBM from being reached and no marking in the minimal covering set of legal markings is forbidden. This process is carried out until no FBM can be reached. Finally, a number of FMS examples are presented to illustrate the proposed approaches. This method can be used to design a maximally permissive supervisor for all FMS-oriented classes of Petri nets models if such a supervisor exists, such as PPN [3; 34; 97], S 3 PR [18], ES 3 PR [80], S 4 PR [81], S PR [19], S 2 LSPR [65], S 3 PGR 2 [66], and S 3 PMR [38]. Since a complete enumeration of reachable markings is required, the nets also should be bounded. The application scope of this method is the same to Uzam and Zhou s method but smaller than the theory of regions [31] since this method is limited to Petri nets models of FMSs but the theory of regions has no such a limitation. 2.2 Optimal Control Place Synthesis by Place Invariant This section presents an integer linear programming approach to obtain an optimal PI. Thus, the control place computed for the optimal PI is also optimal from the viewpoint of deadlock prevention. Given a Petri net model (N, M 0 ) of an FMS and its reachability graph G(N, M 0 ), i.e., the set of 52

54 2.2. OPTIMAL CONTROL PLACE SYNTHESIS BY PLACE INVARIANT legal markings M L and the set of FBM M FBM, this section proposes an approach to design control places such that all FBM are forbidden and all legal markings are reachable. Thus, an optimal supervisor can be obtained. Similar to [84], only the tokens in operation places are considered to obtain a PI to prevent an FBM from being reached. In the following, N A is defined as N A = {i p i P A }. Consider an FBM M M FBM. To forbid M, the plant is enforced to satisfy the following constraint : where l i μ i β (2.1) i N A β = l i M(p i ) 1 (2.2) i N A Eq.(2.1) is called the forbidding condition. In Uzam and Zhou s work [84], each coefficient l i (i N A ) is set to 1. Thus, there may exist some legal markings that are forbidden if a control place is added to forbid a selected FBM. For maximally permissive control purpose, all legal markings should be kept after a control place is added. In the following, we develop a novel technique to achieve this purpose. To ensure that every marking M M L cannot be prevented from being reached, coefficients l i (i N A ) should satisfy l i M (p i ) β, M M L (2.3) i N A Eq.(2.3) is called the reachability conditions. For an FBM M, substituting the expression of β, Eq.(2.2), into Eq.(2.3), the reachability conditions of legal markings become l i (M (p i ) M(p i )) 1, M M L (2.4) i N A Eq.(2.4) determines the feasible values for coefficients l i (i N A ). Thus, for an FBM M, if coefficients l i (i N A ) satisfy Eq.(2.4), a PI designed for Eq.(2.1) can guarantee the reachability of all the legal markings and forbid M. In this case, a PI can be designed and a control place computed for the PI can ensure all the legal markings being reached. In this case, we conclude that the control place is optimal. 53

55 2.3. VECTOR COVERING APPROACH FOR PLACE INVARIANT CONTROL 2.3 Vector Covering Approach for Place Invariant Control This section develops a vector covering approach for the PI control such that : 1) For the set of FBMs, the relation between different elements is used to obtain a minimal covered set of FBMs. For each FBM in the minimal covered set, a PI is designed to prevent it from being reached. Thus all the FBMs cannot be reached and furthermore unnecessary FBMs can be avoided being considered. Similarly, a minimal covering set of legal markings can be obtained. The goal is that when a PI is designed for an FBM, no marking in the minimal covering set is forbidden. Hence, all the legal markings can be reached. This technique can reduce the computation cost for every PI. 2) For each FBM in the minimal covered set of FBMs, by solving an integer linear programming problem, a PI is designed to forbid the FBM and keep all the markings of the minimal covering set of legal markings. A control place is computed to implement each PI. Thus a livenessenforcing supervisor can be obtained. 3) The approach is applied to bounded Petri net models of FMSs. Definition 2.1 Let M and M be two markings in R(N, M 0 ). M A-covers M (or M is A-covered by M) if p P A, M(p) M (p), which is denoted as M A M (or M A M). This definition is used to study the relations among different markings. Only the tokens in operation places are considered to design control places. Thus, the relations between different markings are simplified to study the number of tokens in these operation places. Given this definition, we have the following theorem. Theorem 2.1 Let M and M be two markings in R(N, M 0 ) with M A M.IfM is forbidden by a PI, M is forbidden. If M is not forbidden by a PI, M is not forbidden. Proof : Suppose that marking M is forbidden by a PI that satisfies constraint i N A l i μ i β. In this case, we have β = i N A l i M (p i ) 1. Since M A M,wehave i N A, M(p i ) M (p i ). It follows that i N A l i M(p i ) i N A l i M (p i ) = β + 1. This means that M is forbidden by the PI. Similarly, if M is not forbidden by a PI, M is not forbidden. 54

56 2.3. VECTOR COVERING APPROACH FOR PLACE INVARIANT CONTROL Theorem 2.1 indicates that if a PI is designed to prevent a marking M from being reached, then any marking M that satisfies M A M is also unreachable. Similarly, if a PI is designed to keep a marking M being reached, then any marking M that satisfies M A M can also be reached. This theorem is essential to reduce the set of FBMs and the set of legal markings to be small. Definition 2.2 Let M FBM be the set of FBMs in a Petri net. M M FBM, a subset of M FBM that A-covers M is defined as M A M = {M M FBM M A M}. Corollary 2.1 If an FBM M M FBM is forbidden by a PI, all the markings in M A M are forbidden. Proof : It follows immediately from Theorem 2.1. Definition 2.2 and Corollary 2.1 mean that if an FBM M is forbidden by a PI, then, all the markings in set F M are forbidden. That is to say, if M is prevented from being reached, there is no need for all other markings in F M to be prevented from being reached. Definition 2.3 Let M L be the set of legal markings. M M L, a subset of M L that is A-covered by M is defined as M A M = {M M L M A M}. Corollary 2.2 If a legal marking M M L is not forbidden by a PI, none of the markings in M A M is forbidden. Proof : It follows immediately from Theorem 2.1. Definition 2.3 and Corollary 2.2 mean that if a legal marking M is not forbidden by a PI, then, all the markings in set R M are not forbidden. That is to say, if M can be reached, all other markings in R M can be reached and there is no need to consider their reachability. Definition 2.4 Let M FBM be a subset of M FBM. M FBM is called the minimal covered set of FBMs if the following two conditions are satisfied : 1) M M FBM, M M FBM, s.t. M A M ; 2) M M FBM, M M FBM, s.t. M A M and M M. Corollary 2.3 If all markings of M FBM are forbidden by PI, all the FBMs are forbidden. 55

57 2.3. VECTOR COVERING APPROACH FOR PLACE INVARIANT CONTROL Proof : It follows immediately from Definition 2.4 and Corollary 2.1. For deadlock control purpose, Definition 2.4 and Corollary 2.3 indicate that only a small set of FBMs are considered to prevent all FBMs from being reached. If all markings in the minimal covered set of FBMs are prevented from being reached, all FBMs are prevented from being reached. Thus, in our deadlock prevention policy, only the minimal covered set of FBMs are considered. Definition 2.5 Let M L be a subset of legal markings. M L is called the minimal covering set of legal markings if the following two conditions are satisfied : 1) M M L, M M L s.t. M A M; 2) M M L, M M L s.t. M A M and M M. Corollary 2.4 If none of the markings in M L is forbidden by PI, none of the legal markings is forbidden. Proof : It follows immediately from Definition 2.5 and Corollary 2.2. For maximally permissive control purpose, Definition 2.5 and Corollary 2.4 indicate that only the small set of legal markings is considered to keep all legal markings being reached. If all markings in the minimal covering set of legal markings can be reached, all legal markings can be reached too. Thus, in our deadlock prevention policy, only the minimal covering set of legal markings is considered to obtain a maximally permissive supervisor. Definition 2.6 Let M FBM be a minimal covered set of FBMs. If a PI I satisfies constraint i N A l i μ i β, then the set of FBMs that are forbidden by the PI is defined as M FI = {M M FBM i N A l i M(p i ) β + 1}. Definition 2.6 means that a PI may prevent more than one FBM from being reached. According to Corollaries 2.3 and 2.4, a supervisor is optimal if it forbids all the markings in the minimal covered set of FBMs and does not forbid any marking in the minimal covering set of legal markings. This indicates that only sets M FBM and M L are required to be considered for design of control places. Therefore, for an FBM M, the reachability conditions, i.e., Eq.(2.4) can be reduced as follows : l i (M (p i ) M(p i )) 1, M M L (2.5) i N A 56

58 2.3. VECTOR COVERING APPROACH FOR PLACE INVARIANT CONTROL Experimental results show that in general M FBM and M L are much smaller than M FBM and M L, respectively. Thus, the computational cost can be greatly reduced. For an FBM selected from M FBM, it is unnecessary to consider all markings in M L when designing an optimal control place. In the following, we reduce M L FBM and the optimality of each control place is still guaranteed. to be a smaller set for each Theorem 2.2 ForanFBMM M FBM, if there exist coefficients l i(i N A ) that satisfy Eq.(2.5), then a PI designed for Eq.(2.1) with l i M L, where i N A : instead of l i can also guarantee the reachability of all markings in l i = { li ifm(p i ) 0 0 ifm(p i ) = 0 (2.6) Proof : ForanFBMM M FBM, according to the definition of l i (i N A), M M L,we have : li (M (p i ) M(p i )) = i N A li (M (p i ) M(p i )) + li (M (p i ) M(p i )) = i N A,M(p i )0 i N A,M(p i )0 i N A,M(p i )0 i N A,M(p i )0 l i (M (p i ) M(p i )) l i (M (p i ) M(p i )) + l i (M (p i ) M(p i )) + i N A,M(p i )=0 l i M (p i ) = i N A,M(p i )=0 i N A,M(p i )=0 l i (M (p i ) M(p i )) = l i (M (p i ) M(p i )) i N A Since i N A l i (M (p i ) M(p i )) 1, i N A li (M (p i ) M(p i )) 1. This means that coefficients li (i N A) can also satisfy the reachability condition Eq.(2.5) and lead to a PI that can guarantee the reachability of all markings in M L. This theorem indicates that, for each FBM, an optimal control place can be designed by considering only the operation places that have tokens at the FBM. Thus, a further vector covering approach can be developed to reduce the number of markings that need to be considered in M L. 57

59 2.3. VECTOR COVERING APPROACH FOR PLACE INVARIANT CONTROL Definition 2.7 For an FBM M M FBM, M 1, M 2 M L,M 1 M-covers M 2 (or M 2 is M-covered by M 1 )if p P A and M(p) 0, we have M 1 (p) M 2 (p), which is denoted as M 1 M M 2 (or M 2 M M 1 ). When an FBM is selected to be prevented from being reached, this definition can be used to study the relations among different legal markings. Only the operation places that have tokens at the FBM are considered to design control places. Thus, the relations between different legal markings are simplified to study tokens of these operation places. Given this definition, we have the following theorem. Theorem 2.3 ForanFBMM M FBM, M 1, M 2 M L, M 1 M M 2.IfM 1 is not forbidden by a PI designed for M, M 2 is not forbidden. Proof : Suppose that M is forbidden by a PI that satisfies constraints i N A l i μ i β and β = i N A l i M(p i ) 1. According to Theorem 2.2, the two constraints can be reduced to be i N A,M(p i )0 l i μ i β with β = i N A,M(p i )0 l i M(p i ) 1. In order not to forbid M 1, coefficients l i (i N A, M(p i ) 0) of the PI should satisfy i N A,M(p i )0 l i M 1 (p i ) β. Since M 1 M M 2,we have i N A,M(p i )0 l i M 2 (p i ) i N A,M(p i )0 l i M 1 (p i ) β. This means that M 2 is not forbidden by the PI. Theorem 2.3 indicates that if a PI is designed to prevent an FBM M M FBM from being reached and keep a marking M 1 M L being reached, then any marking M 2 M L that satisfies M 1 M M 2 can be reached too. This theorem can be used to reduce a minimal covering set of legal markings into a small one. Definition 2.8 Let M be a marking in M FBM. L M M L is called the minimal covering set of M-related legal markings if the following two conditions are satisfied : 1) M M L, M L M, s.t. M M M ; 2) M L M, M L M, s.t. M M M and M M. Corollary 2.5 ForanFBMM M FBM,ifM is forbidden by a PI and no marking in L M is forbidden, then no legal marking is forbidden. 58

60 2.4. OPTIMAL DEADLOCK PREVENTION POLICY Proof : It follows immediately from Definition 2.8 and Theorem 2.3. According to Corollary 2.5, for an FBM M M FBM, if a PI is designed to forbid M and not forbid any marking in a minimal covering set of its related legal markings L M, all the legal markings can be reached if the control place associated with the PI is added. This indicates that for an FBM, only the minimal covering set of its related legal markings L M requires to be considered to obtain an optimal control place. Therefore, for an FBM M M FBM, the reachability conditions Eq.(2.5) can be reduced as follow : l i (M (p i ) M(p i )) 1, M L M (2.7) i N A Since L M is smaller than M L, the set of the inequalities for each FBM can be reduced to be further small. 2.4 Optimal Deadlock Prevention Policy This section presents an optimal deadlock prevention policy whose development is based on the results in the previous sections. Algorithm 2.1 Deadlock prevention policy. Input : Petri net model (N, M 0 ) of an FMS with N = (P 0 P A P R, T, F, W). Output : an optimally controlled Petri net system (N 1, M 1 ) if it exists. 1. Compute the minimal covered set of FBM M FBM and the minimal covering set of legal markings M L for (N, M 0). 2. V M :=. /* V M is used to denote the set of control places to be computed.*/ 3. if M FBM = then N 1 := N, M 1 = M 0, go to Step 5. else M M FBM, compute the minimal covering set of M-related legal markings L M. Solve the set of integer linear inequalities of Eq.(5.6). Let l i (i N A, M(p i ) 0) be the solution if it exists. Otherwise, exit, as the optimal control place does not exist for (N, M 0 ). 59

61 2.4. OPTIMAL DEADLOCK PREVENTION POLICY Design a PI I and a control place p c by the method proposed in Section 1.2. V M := V M {p c }, M FBM := M FBM M F I. Denote the resulting net system as (N, M 0 ). endif 4. Go to Step Output (N 1, M 1 ). 6. End. The above algorithm uses the reachability graph only once. Only M FBM and M L are required to be considered for the computation of each control place. This can reduce the number of inequalities for each PI and the total number of FBM that should be forbidden by the PI. For each FBM, M L is reduced to be smaller, i.e., L M. This can further reduce the number of inequalities for each FBM. In what follows, some examples are used to illustrate this policy. Theorem 2.4 Algorithm 2.1 can obtain a maximally permissive supervisor for a Petri net model of an FMS if there exists a solution that satisfies Eq.(5.6) for each FBM in M FBM. Proof : Let (N 1, M 1 ) be the controlled net system that results from adding control places in V M to (N, M 0 ). Each place in V M is designed by a PI for constraint i N A l i μ i β, where l i (i N A ) satisfies Eq.(5.6). As Section 4 describes, all legal markings can be reached and at least one FBM is forbidden by the control place. According to Corollaries 2.3 and 2.5, all the control places in V M can forbid all the FBM and all legal markings can be reached. That is to say, a maximally permissive supervisor is obtained. Theorem 2.5 [64] Petri net N is conservative if there exists a P-vector I of positive integers such that I T [N] = 0 T. Property 2.1 [64] If a Petri net is structurally bounded and structurally live, then it is both conservative and consistent. Theorem 2.5 and Property 2.1 indicate that conservativeness is a necessary condition to structural boundedness and liveness of a Petri net. In other words, if a net is not conservative, it is neither 60

62 2.4. OPTIMAL DEADLOCK PREVENTION POLICY structurally bounded nor structurally live. This result is used to prove the following theorem. In a Petri net model considered in this thesis, we have : Assumption 2.1 Any idle place p id is associated with a minimal P-semiflow I pid such that p I pid \{p id }, p P A. Assumption 2.2 Any resource place r is associated with a minimal P-semiflow I r such that p I r \{r}, p P A, where P A is the set of operation places in a Petri net model. The above assumptions are true in the existing manufacturing-oriented Petri net models in the literature. Theorem 2.6 Under Assumptions 2.1 and 2.2, the proposed deadlock prevention method can lead to a maximal permissive liveness-enforcing supervisor if such a supervisor exists. Proof : First, we prove that an optimal control place p c is necessarily associated a PI I pc such that p I pc \{p c }, p P A. According to Theorem 2.5 and Property 2.1, if a control place is not associated with a PI, then the controlled net is neither structurally bounded nor structurally live. Thus, a control place p c necessarily corresponds to a PI I p c. Without loss of generality, we assume that I p c contains operation, resource, and idle places. Let I pc = I p c r I pc P I R r p id I I pc P0 p id. Then I pc is also a PI since any linear combinations of PI of a net is still a PI of it. According to Assumptions 2.1 and 2.2, there exists a PI that involves a control place and operation places only. Now, we prove that if an optimal control place exists, it can be obtained by the proposed method. Assume that a maximally permissive supervisor exists for a net model, then each control place of the supervisor can construct a PI that does not forbid any legal markings and at least one FBM is forbidden. By contradiction, suppose that there exists a PI that does not satisfy Eq.(5.6) for some markings in L M, as Section 2.3 describes, these markings are forbidden by the PI. This means that the control place designed for this PI is not optimal. Thus, it is proved that any PI for optimal control purpose satisfies Eq.(5.6). This means that, for each FBM, there exists at least a solution that satisfies Eq.(5.6). According to Theorem 2.4, the proposed method can obtain a maximally permissive liveness-enforcing supervisor if such a supervisor exists. 61

63 2.4. OPTIMAL DEADLOCK PREVENTION POLICY In the following, two compact multiset formalisms are used to describe markings in M L, M FBM, and L M. Only operation places are considered for markings in M L and M FBM. Thus, i N A M(p i )p i is used to denote marking M in M L and M FBM. For an FBM M M FBM, only operation places that are marked at M are considered. Thus, marking M in L M is denoted by i N A,M(p i )0 M (p i )p i. The Petri net model of an FMS shown in Fig. 2.1 is considered to illustrate the application of the proposed deadlock prevention policy. In the model, there are 11 places and eight transitions. Places can be classified into three groups : idle place set P 0 = {p 1, p 8 }, operation place set P A = {p 2, p 3,, p 7 }, and resource place set P R = {p 9, p 10, p 11 }. The net has 28 reachable markings, 19 of which are legal and seven are FBM. Using the method proposed in Section 5, its reachability graph is analyzed. The minimal covered set of FBM M FBM and the minimal covering set of legal markings M L have three and two elements, respectively. Specifically, we have M FBM = {p 2 + p 5, p 3 + p 5, p 2 + p 6 } and M L = {p 5 + p 6 + p 7, 2p 2 + p 3 + p 4 }. Fig. 2.1 Petri net model of a manufacturing system. At the first iteration, FBM 1 =p 2 + p 5 is selected. We have L FBM1 = {p 5, 2p 2 }. In order to forbid FBM 1, a PI, denoted as I 1, is designed to satisfy constraint l 2 μ 2 + l 5 μ 5 l l For optimal control purpose, I 1 must not forbid any markings in L FBM1. Thus, I 1 has to satisfy Eq.(5.6) : l 2 (0 1) + l 5 (1 1) 1and l 2 (2 1) + l 5 (0 1) 1for the two legal markings 62

64 2.4. OPTIMAL DEADLOCK PREVENTION POLICY p 5 and 2p 2 in L FBM1, respectively. By simplifying the two constraints, we have : l 2 1 and l 2 l 5 1. The above integer linear system has a solution with l 2 = 1 and l 5 = 2. Then, a new control place p c1 can be designed for PI 1 : μ 2 + 2μ 5 + μ pc1 = 2 by the method proposed in Section 1.2. As a result, we have M(p c1 ) = 2, p c1 = {t 2, 2t 6 }, and p c 1 = {t 1, 2t 5 }. Only FBM 1 is forbidden by PI 1, i.e., F I1 ={FBM 1 }. Hence, we have M FBM :=M FBM {FBM 1}, i.e., M FBM = {p 3 + p 5, p 2 + p 6 }. At the second iteration, FBM 2 =p 3 + p 5 is selected. We have L FBM2 = {p 5, p 3 }. In order to forbid FBM 2, a PI, namely I 2, is designed to satisfy constraint : l 3 μ 3 + l 5 μ 5 l l For optimal control purpose, PI 2 must not forbid any markings in L FBM2. Thus, I 2 has to satisfy Eq.(5.6) : l 3 (0 1) + l 5 (1 1) 1and l 3 (1 1) + l 5 (0 1) 1for the two legal markings p 5 and p 3 in L FBM2, respectively. By simplifying the two constraints, we have : l 3 1 and l 5 1. The above integer linear system has a solution with l 3 = 1 and l 5 = 1. Then, a new control place p c2 can be designed for PI 2 : μ 3 + μ 5 + μ pc2 = 1 by the method proposed in Section 1.2. As a result, we have M(p c2 ) = 1, p c2 = {t 3, t 6 }, and p c 2 = {t 2, t 5 }. Only FBM 2 is forbidden by I 2, i.e., F I2 ={FBM 2 }. Hence, we have M FBM :=M FBM {FBM 2}, i.e., M FBM = {p 2 + p 6 }. Now consider the last FBM, namely FBM 3 =p 2 + p 6.WehaveL FBM3 = {p 6, 2p 2 }. In order to forbid FBM 3, a PI, denoted as I 3, is designed to satisfy constraint l 2 μ 2 + l 6 μ 6 l l For optimal control purpose, I 3 must not forbid any markings in L FBM3. Thus, I 3 also has to satisfy Eq.(5.6) : l 2 (0 1) + l 6 (1 1) 1and l 2 (2 1) + l 6 (0 1) 1for the two legal markings p 6 and 2p 2 in L FBM3, respectively. By simplifying the two constraints, we have : l 2 1 and l 2 l 6 1. The above integer linear system has a solution with l 2 = 1 and l 6 = 2. Then, a new control place p c3 can be designed for I 3 : μ 2 + 2μ 6 + μ pc3 = 2 by the method proposed in Section 1.2. As a result, we have M(p c3 ) = 2, p c3 = {t 2, 2t 7 }, and p c 3 = {t 1, 2t 6 }. Only FBM 3 is forbidden by I 3, i.e., F I3 ={FBM 3 }. Hence, we have M FBM :=M FBM {FBM 3}, i.e., M FBM =. 63

65 2.4. OPTIMAL DEADLOCK PREVENTION POLICY Now, Algorithm 2.1 terminates and three control places are obtained. Table 2.1 shows the results, where the first column is the iteration number i, the second represents the selected first-met bad marking FBM i, the third, N LPP, is the number of inequalities to determine PI i for FBM i, and the fourth shows the PI I i by solving the sets of inequalities for FBM i. The fifth to seventh columns indicate pre-transitions ( p ci ), post-transitions (p c i ), and initial marking (M 0 (p ci )) of control place p ci, respectively. Adding the three control places to the original net model, as shown in Fig. 2.2, the resulting net is live with 19 legal markings. Tab. 2.1 Control places computed for the net shown in Figure 2.1 i FBM i N LPP I i p ci p c i M 0 (p ci ) 1 p 2 + p 5 2 μ 2 + 2μ 5 2 t 2, 2t 6 t 1, 2t p 3 + p 5 2 μ 3 + μ 5 1 t 3, t 6 t 2, t p 2 + p 6 2 μ 2 + 2μ 6 2 t 2, 2t 7 t 1, 2t 6 2 Fig. 2.2 An optimally controlled system of the net shown in Figure 2.1. According to this example, it can be seen that the minimal covered set of FBM and the minimal covering set of legal markings have three and two markings, respectively. That is to say, we need to solve at most three sets of inequalities and each set has only two inequalities. Only two of 19 legal markings and three of seven FBM are considered by the proposed policy. The two instances are far smaller than that of FBM and legal markings. Thus, the proposed policy can obviously alleviate 64

66 2.5. EXPERIMENTAL RESULTS the computational burden. 2.5 Experimental Results This section provides some experimental results of the policy proposed in this chapter. In order to apply the presented methods to large-scale Petri net models, we use Binary Decision Diagrams (BDDs) as a powerful tool to analyze the reachability graph of a Petri net model. For the application of BDD, C++ program has been used with the BDD tool Buddy-2.2 package [62] on a Linux operating system with Intel CPU Core 2.8 GHz and 4 GB memory. The algorithms to find legal markings, FBMs, the minimal covering set of legal markings, and the minimal covered set of FBMs by using BDD can be found in [6]. The Petri net model of an FMS [83] is shown in Fig There are 19 places and 14 transitions. It has the following place set partition : P 0 = {p 1, p 8 }, P R = {p 14,...,p 19 }, and P A = {p 2,...,p 7, p 9,...,p 13 }. It has 282 reachable markings, 54 and 205 of which are FBMs and legal markings, respectively. Using the vector covering approach, M FBM and M L have eight and 26 markings, respectively. Table 2.2 shows the application of the proposed policy to the example. The proposed method can obtain a maximally permissive supervisor by solving at most eight sets of inequalities and each set has no more than five inequalities. There are eight control places need to be added and the resulting net has all 205 legal markings. If the theory of regions is used, it is necessary to solve at most 59 sets of inequalities and each set has more than 205 inequalities, as done in [83]. To further show the advantage of this approach, we vary the initial markings of resource places p 15, p 18, and p 19 and idle places p 1 and p 8. Table 2.3 shows various parameters in the net, where the first column represents the initial tokens in places p 1, p 8, p 15, p 18, and p 19 ; N R (nodes), N L, N FBM, NL, and N FBM indicate the numbers of the reachable markings (BDD nodes for representation of reachable markings), legal markings, first-met bad markings, the minimal covering set of legal markings, and the minimal covered set of FBMs, respectively. The seventh and eighth columns are r L = NL /N L and r FBM = NFBM /N FBM, respectively. The ninth column shows the total CPU time for computing R(N, M 0 ), M L, M FBM, M L, and M FBM by using BDD. The number of MTSIs is provided in the final column. 65

67 2.5. EXPERIMENTAL RESULTS Fig. 2.3 Petri net model of an FMS. From Table 2.3, it can be seen that when the number of reachable markings is not big (the first six rows), the number of BDD nodes is bigger than the number of reachable markings. In this case, the BDD and other approaches (for example, using the Petri net analysis software INA [77]) can compute the reachable markings in a short time. When the number of reachable markings increases (the last two rows), we can see that the number of BDD nodes is smaller than the number of reachable markings. In this case, the BDD approach becomes more efficient. In the theory of regions, N sep and N L in Table 2.3 represent the numbers of the sets of inequalities and inequalities in each set, respectively. However, in the proposed policy, the numbers of the two instances are NFBM and no greater than N L, respectively. They are much smaller than their corresponding ones in the theory of regions. The rates r L and r FBM indicate that only two much smaller subsets of legal markings and FBMs require to be considered. Note that the larger the initial marking is, the smaller the two rates are. This means that the proposed method becomes more efficient when handling Petri nets with a large reachability space. Consider another example that is taken from [18], as shown in Fig The net model has the following place set partition : P 0 = {p 1, p 5, p 14 }, P R = {p 20,...,p 26 }, and P A = {p 2,...,p 4, p 6,..., 66

68 2.5. EXPERIMENTAL RESULTS Tab. 2.2 Control places computed for the net model in Figure 2.3 i FBM i N LPP I i p ci p c i M 0 (p ci ) 1 p 3 + p 11 2 μ 3 + μ 11 1 t 5, t 12 t 2, t p 11 + p 12 2 μ 11 + μ 12 1 t 13 t p 2 + p 3 + p 4 3 μ 2 + μ 3 + μ 4 2 t 4, t 5 t p 2 + p 4 + p 12 3 μ 2 + μ 4 + μ 12 2 t 2, t 4, t 13 t 1, t p 5 + p 6 + p 9 + p 10 4 μ 5 + μ 6 + μ 9 + μ 10 3 t 7, t 11 t 4, t 5, t p 3 + p 6 + p 9 + p 10 4 μ 3 + μ 6 + μ 9 + μ 10 3 t 5, t 7, t 11 t 2, t 6, t p 3 + p 5 + p 9 + p 10 4 μ 3 + μ 5 + μ 9 + μ 10 3 t 6, t 11 t 2, t 4, t p 2 + p 4 + p 6 + p 9 +p 10 5 μ 2 + μ 4 + μ 6 + μ 9 +μ 10 4 t 2, t 4, t 7, t 11 t 1, t 6, t 9 4 Tab. 2.3 Parameters in the model depicted in Fig. 2.3 with varying markings p 1, p 8, p 15, p 18, p 19 N R (nodes) N L N FBM NL NFBM r L /% r FBM /% time/s N sep 6, 6, 1, 1, 1 282(2372) < , 6, 2, 1, 1 600(4016) < , 6, 1, 2, 1 972(4427) , 6, 1, 1, 2 570(3576) < , 8, 2, 2, (14683) , 11, 3, 3, (42849) , 14, 4, 4, (100502) , 17, 5, 5, (251059) p 13, p 15,...,p 19 }. It has 26,750 reachable markings (represented by 59,255 BDD nodes), 4,211 and 21,581 of which are FBMs and legal, respectively. Using the vector covering approach, M FBM and M L have 34 and 393 markings, respectively. All these computation can be finished within 30 CPU seconds. Table 2.4 shows the application of the proposed policy to this example. There are 17 control places to be added and the resulting net has all 21,581 legal markings that represent the maximally permissive behavior. It is obvious that the proposed policy can lead to a livenessenforcing supervisor with maximally permissive behavior. If the theory of regions is used, this net model has 5,299 MTSIs. That is to say, we have to solve 5,299 sets of inequalities and each set has more than 21,581 inequalities. However, for the method developed in this research, the numbers of markings in the minimal covered set of FBMs and the minimal covering set of legal markings are 34 and 393, respectively. This means that we need to solve at most 34 sets of inequalities and each set has no more than 393 inequalities. In fact, the biggest set of inequalities has 46 inequalities at the 15th iteration, which is much smaller than 393. Furthermore, we use BDDs to do the required analysis of the reachability space of a net model, which is rather efficient. Table 2.5 shows the performance comparison of some deadlock control policies in the literature for this 67

69 2.5. EXPERIMENTAL RESULTS example. Note that the policy in [84] leads to 21,562 reachable markings with 19 control places, which is suboptimal for the net model. In [70], a method that avoids an explicit enumeration of reachable markings and siphons also leads to all 21,581 legal markings for the net with 13 control places in less than 15 seconds, which is rather efficient. The limitation of the method in [70] is that it can be applied to PT-ordinary nets only. Fig. 2.4 An S 3 PR model in Ezpeleta et al. (1995) [18]. 68

70 2.5. EXPERIMENTAL RESULTS Tab. 2.4 Control places computed for the net model in Figure 2.4 p ci p ci M0(pci ) 1 p2 + 2p3 2 μ2 + μ3 2 t13 t p3 + p8 2 μ3 + μ8 2 t4, t13 t3, t p11 + p17 2 μ11 + μ17 2 t8, t18 t7, t p12 + 2p16 2 μ12 + μ16 2 t9, t17 t8, t p13 + p15 2 μ13 + μ15 2 t10, t16 t9, t p12 + p13 + p15 + p16 6 μ12 + μ13 + μ15 + μ16 3 t10, t17 t8, t p11 + 2p16 2 μ11 + μ16 3 t8, t17 t7, t p11 + p12 + p15 + p16 5 μ11 + μ12 + μ15 + μ16 4 t9, t17 t7, t p11 + p13 + p15 + p16 6 μ11 + μ13 + μ15 + μ16 4 t8, t10, t17 t7, t9, t15 4 i FBMi NLPP Ii 10 p2 + p3 + p9 + p13 + p15 + p16 21 μ2 + μ3 + μ9 + μ13 + μ15 + μ16 5 t5, t10, t13, t17 t4, t9, t11, t p3 + p8 + p9 + p13 + p15 + p16 21 μ3 + μ8 + μ9 + μ13 + μ15 + μ16 5 t5, t10, t13, t17 t3, t9, t12, t p6 + 2p7 + p11 + p17 + p18 9 μ6 + μ7 + μ11 + μ17 + μ18 5 t3, t8, t19 t1, t p2 + p3 + p9 + 2p11 + p15 + p16 18 μ2 + μ3 + μ9 + μ11 + μ15 + μ16 6 t5, t8, t13, t17 t4, t7, t11, t p3 + p8 + p9 + 2p11 + p15 + p16 18 μ3 + μ8 + μ9 + μ11 + μ15 + μ16 6 t5, t8, t13, t17 t3, t7, t12, t p6 + 2p7 + p8 + p9 + p11 + p13 +p15 + p16 + p18 p6 + 2p7 + 2p9 + p11 + p13 +p15 + p16 + p17 p6 + 2p7 + 2p9 + p11 + p12 +p15 + p16 + p18 46 μ6 + μ7 + μ8 + μ9 + μ11 + 2μ13 + 2μ15 + 2μ16 + μ18 12 t5, t8, 2t10, 2t17, t19 t1, 2t9, 2t15, t μ6 + μ7 + μ9 + μ11 + μ13 + μ15 + μ16 + μ17 9 t3, t5, t8, t10, t18 t1, t4, t9, t μ6 + μ7 + μ9 + μ11 + μ12 + μ15 + μ16 + μ18 9 t3, t5, t9, t17, t19 t1, t4, t15, t18 9 Tab. 2.5 Performance comparison of some deadlock control policies Parameters [18] [55] [37] [56] [84] [69] the proposed method No. monitors No. reachable markings

71 2.5. EXPERIMENTAL RESULTS In order to show the advantage of the proposed method, we consider a large example that is taken from [56] as shown in Fig This model is an S 3 PR and has five processes. It has the following place set partition : P 0 = {p 1, p 10, p 16, p 22, p 31 }, P R = {p 37, p 38 p 48 }, and P A = {p 2,...,p 9, p 11,...,p 15, p 17,...,p 21, p 23,...,p 30, p 32,...,p 36 }. For this net, an explicit enumeration of reachable markings can be obtained in about two days with 142,865,280 reachable markings that can be represented by 5,398,328 BDD nodes. It has 40,319,764 FBM (represented by 5,405,724 BDD nodes) and 84,489,428 legal markings (represented by 6,183,694 BDD nodes). Using the vector covering approach, M FBM and M L have 253 and 64,629 markings, respectively. Table 2.6 shows the application of the proposed policy. There are total 53 control places to be computed and this process can be finished in three minutes. It can be seen that the biggest set of inequalities has 322 inequalities at the sixth and 16th iterations, which is much smaller than 64,629. Therefore, once the two minimal sets of a model are given, a maximally permissive supervisor can be computed very efficiently. For this example, we can see that a large amount of markings can be represented by a much small number of BDD nodes, which indicates that BDD are efficient to compute the reachable markings of large-scale Petri nets. Note that in [56], an elementary siphon method obtains a supervisor with 10 control places in about eight minutes (since a complete enumeration of all strict minimal siphons can be achieved in eight minutes). Another very typical result for the example is proposed by the selective siphon approach in [70]. In this study, Piroddi et al. derive a supervisor with 25 control places in 90 seconds, which is rather efficient. Both of the methods are more efficient than the proposed method in the sense of computational time. However, the elementary siphon approach results in a live controlled net with only 257,890 reachable markings that is much less than the legal markings. The selective siphon approach is possible to obtain a maximally permissive supervisor. Unfortunately, maximal permissiveness is neither verified nor proved in [70]. 70

72 2.5. EXPERIMENTAL RESULTS Fig. 2.5 A large-scale Petri net model from Li and Zhou (2005) [56]. 71

73 2.5. EXPERIMENTAL RESULTS Tab. 2.6: Control places computed for the net in Fig. 2.5 p ci p ci M0(pci ) t5, t7, t15, t21, t35, t37 t1, t14, t19, t33, t36 11 i FBMi NLPP Ii 106 μ2+μ3+μ4+μ5+μ6+μ14+μ18+μ19+μ32+μ33+μ p2 + p3 + p4 + p5 + p6 + p14 + p18 + p19 + p32 + 2p33 + p35 2 p2 + p3 + p4 + p5 + p6 + p14 + p18 + p μ2+μ3+μ4+μ5+μ6+μ14+μ18+μ28+μ32+μ33+μ35 t5, t7, t15, t21, t30, t35, t37 t1, t14, t20, t29, t33, t36 11 p32 + 2p33 + p p2 + p3 + p4 + p5 + p6 + p18 + p19 + p29 + p35 76 μ2 + μ3 + μ4 + μ5 + μ6 + μ18 + μ19 + μ29 + μ35 8 t5, t7, t21, t31, t37 t1, t19, t30, t36 8 t4, t7, t15, t21, t31, t35, t37 t1, t14, t19, t30, t33, t μ2+μ3+μ4+μ6+μ14+μ18+μ19+μ29+μ32+μ33+μ p2 + p3 + p4 + p6 + p14 + p18 + p19 + p29 + p32 + 2p33 + p35 5 p2 + p3 + p4 + p6 + p14 + p18 + p20 + p μ2 + μ3 + μ4 + μ6 + μ14 + μ18 + μ20 + μ21 + μ29 + μ32 + t4, t7, t15, t19, t21, t31, t35, t37 t1, t14, t17, t20, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2 + p3 + p4 + p6 + p14 + p18 + p20 + p μ2 + μ3 + μ4 + μ6 + μ14 + μ18 + μ20 + μ27 + μ29 + μ32 + t4, t7, t15, t19, t21, t29, t31, t35, t37 t1, t14, t18, t20, t28, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2 + p3 + p4 + p6 + p14 + p18 + p21 + p μ2 + μ3 + μ4 + μ6 + μ14 + μ18 + μ21 + μ27 + μ29 + μ32 + t4, t7, t15, t18, t21, t29, t31, t35, t37 t1, t14, t17, t20, t28, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2 + p3 + p4 + p6 + p14 + p18 + p28 + p μ2+μ3+μ4+μ6+μ14+μ18+μ28+μ29+μ32+μ33+μ35 t4, t7, t15, t21, t31, t35, t37 t1, t14, t20, t29, t33, t36 11 p32 + 2p33 + p p2 + p3 + p4 + p6 + p14 + p19 + p20 + p μ2 + μ3 + μ4 + μ6 + μ14 + μ19 + μ20 + μ27 + μ29 + μ32 + t4, t7, t15, t20, t29, t31, t35, t37 t1, t14, t18, t28, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2+p3+p4+p14+2p18+p29+p32+2p33+p35 36 μ2 + μ3 + μ4 + μ14 + μ18 + μ29 + μ32 + μ33 + μ35 10 t4, t6, t15, t21, t31, t35, t37 t1, t14, t20, t30, t33, t36 10 t3, t5, t7, t15, t21, t35, t37 t1, t4, t13, t19, t33, t μ2+μ3+μ5+μ6+μ13+μ14+μ18+μ19+μ32+μ33+μ p2 + p3 + p5 + p6 + p13 + p14 + p18 + p19 + p32 + 2p33 + p35 12 p2 + p3 + p5 + p6 + p13 + p14 + p18 + p μ2+μ3+μ5+μ6+μ13+μ14+μ18+μ28+μ32+μ33+μ35 t3, t5, t7, t15, t21, t30, t35, t37 t1, t4, t13, t20, t29, t33, t36 11 p32 + 2p33 + p p2 + p3 + p5 + p6 + p13 + p18 + p19 + p29 + p35 76 μ2 + μ3 + μ5 + μ6 + μ13 + μ18 + μ19 + μ29 + μ35 8 t3, t5, t7, t14, t21, t31, t37 t1, t4, t13, t19, t30, t36 8 t3, t7, t15, t21, t31, t35, t37 t1, t13, t19, t30, t33, t μ2+μ3+μ6+μ13+μ14+μ18+μ19+μ29+μ32+μ33+μ p2 + p3 + p6 + p13 + p14 + p18 + p19 + p29 + p32 + 2p33 + p35 15 p2 + p3 + p6 + p13 + p14 + p18 + p20 + p μ2 + μ3 + μ6 + μ13 + μ14 + μ18 + μ20 + μ21 + μ29 + μ32 + t3, t7, t15, t19, t21, t31, t35, t37 t1, t13, t17, t20, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2 + p3 + p6 + p13 + p14 + p18 + p20 + p μ2 + μ3 + μ6 + μ13 + μ14 + μ18 + μ20 + μ27 + μ29 + μ32 + t3, t7, t15, t19, t21, t29, t31, t35, t37 t1, t13, t18, t20, t28, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2 + p3 + p6 + p13 + p14 + p18 + p21 + p μ2 + μ3 + μ6 + μ13 + μ14 + μ18 + μ21 + μ27 + μ29 + μ32 + t3, t7, t15, t18, t21, t29, t31, t35, t37 t1, t13, t17, t20, t28, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2 + p3 + p6 + p13 + p14 + p18 + p28 + p μ2+μ3+μ6+μ13+μ14+μ18+μ28+μ29+μ32+μ33+μ35 t3, t7, t15, t21, t31, t35, t37 t1, t13, t20, t29, t33, t36 11 p32 + 2p33 + p p2 + p3 + p6 + p13 + p14 + p19 + p20 + p μ2 + μ3 + μ6 + μ13 + μ14 + μ19 + μ20 + μ27 + μ29 + μ32 + t3, t7, t15, t20, t29, t31, t35, t37 t1, t13, t18, t28, t30, t33, t36 12 p29 + p32 + 2p33 + p35 μ33 + μ p2 + p3 + p13 + p14 +2p18 + p29 + p32 +2p μ2 + μ3 + μ13 + μ14 + μ18 + μ29 + μ32 + μ33 + μ35 10 t3, t6, t15, t21, t31, t35, t37 t1, t13, t20, t30, t33, t36 10 p35 21 p2 + p4 + p6 + p14 + p18 + p20 + p27 + p μ2 + μ4 + 2μ6 + μ14 + 2μ18 + μ20 + μ27 + μ28 + 2μ32 + 2t2, t4, 2t7, t15, t19, 2t21, t30, 2t35, 2t37 2t1, t3, t14, t18, 2t20, t28, 2t33, 2t36 20 p32 + 2p33 + 2p35 2μ33 + 2μ p2+p5+p6+p14+p18+p28+p32+2p33+2p35 36 μ2 + μ5 + μ6 + μ14 + μ18 + μ28 + μ32 + μ33 + μ35 10 t2, t5, t7, t15, t21, t30, t35, t37 t1, t4, t14, t20, t29, t33, t t2, 2t7, t15, t19, 2t21, t30, 2t35, 2t37 2t1, t13, t18, 2t20, t28, 2t33, 2t μ2 + 2μ6 + μ13 + μ14 + 2μ18 + μ20 + μ27 + μ28 + 2μ32 + 2μ33 + 2μ p2 + p6 + p13 + p14 + p18 + p20 + p27 + p28 + p32 + 2p33 + 2p35 38 μ2 + μ6 + μ14 + μ18 + μ20 + μ27 + μ32 + μ33 + μ35 11 t2, t7, t15, t19, t21, t29, t35, t37 t1, t14, t18, t20, t28, t33, t μ2 + μ6 + μ14 + μ18 + μ21 + μ27 + μ32 + μ33 + μ35 11 t2, t7, t15, t18, t21, t29, t35, t37 t1, t14, t17, t20, t28, t33, t μ2 + μ6 + μ14 + μ19 + μ20 + μ27 + μ32 + μ33 + μ35 11 t2, t7, t15, t20, t29, t35, t37 t1, t14, t18, t28, t33, t p2 + p6 +2p14 + p18 + p20 + p27 + p32 +2p33 + 2p35 25 p2 + p6 +2p14 + p18 + p21 + p27 + p32 +2p33 + 2p35 26 p2 + p6 +2p14 + p19 + p20 + p27 + p32 +2p33 + 2p35 continue next page 72

74 followed by previous page p ci p ci M0(pci ) 2.5. EXPERIMENTAL RESULTS i FBMi NLPP Ii 27 p2 + p6 + p18 + p19 + 2p35 8 μ2 + μ6 + μ18 + μ19 + μ35 5 t2, t7, t21, t37 t1, t19, t p2 + p6 + p18 + p20 + p21 + 2p35 16 μ2 + μ6 + μ18 + μ20 + μ21 + μ35 6 t2, t7, t19, t21, t37 t1, t17, t20, t p2 + 2p18 + 2p35 3 μ2 + μ18 + μ35 4 t2, t6, t21, t37 t1, t20, t36 4 t5, t7, t15, t21, t37 t2, t6, t14, t19, t μ3+μ4+μ5+μ6+μ14+μ18+μ19+μ32+μ33+μ34+μ p3 + p4 + p5 + p6 + p14 + p18 + p19 + p32 + 2p33 + p34 + p35 31 p3 + p4 + p5 + p6 + p18 + p19 + p29 + p34 + p35 67 μ3 + μ4 + μ5 + μ6 + μ18 + μ19 + μ29 + μ34 + μ35 8 t5, t7, t21, t31, t37 t2, t6, t19, t30, t p3+ p4+ p5+ p14+ p28+ p32+2p33+ p34+ p35 31 μ3 + μ4 + μ5 + μ14 + μ28 + μ32 + μ33 + μ34 + μ35 9 t5, t15, t30, t37 t2, t14, t29, t p3 + p4 + p14 + p29 + p32 + 2p33 + p34 + p35 29 μ3 + μ4 + μ14 + μ29 + μ32 + μ33 + μ34 + μ35 8 t4, t15, t31, t37 t2, t14, t30, t33 8 t3, t5, t7, t15, t21, t37 t2, t4, t6, t13, t19, t μ3+μ5+μ6+μ13+μ14+μ18+μ19+μ32+μ33+μ34+μ p3 + p5 + p6 + p13 + p14 + p18 + p19 + p32 + 2p33 + p34 + p35 35 p3 + p5 + p6 + p13 + p18 + p19 + p29 + p34 + p35 67 μ3 + μ5 + μ6 + μ13 + μ18 + μ19 + μ29 + μ34 + μ35 8 t3, t5, t7, t14, t21, t31, t37 t2, t4, t6, t13, t19, t30, t p3+p5+p13+p14+p28+p32+2p33+p34+p35 31 μ3 + μ5 + μ13 + μ14 + μ28 + μ32 + μ33 + μ34 + μ35 9 t3, t5, t15, t30, t37 t2, t4, t13, t29, t p3 + p13 + p14 + p29 + p32 + 2p33 + p34 + p35 29 μ3 + μ13 + μ14 + μ29 + μ32 + μ33 + μ34 + μ35 8 t3, t15, t31, t37 t2, t13, t30, t p4 + p5 + p28 + p29 6 μ4 + μ5 + μ28 + μ29 3 t5, t31 t3, t p4 + 2p29 2 μ4 + μ29 2 t4, t31 t3, t p5 + p13 + p28 + p29 6 μ5 + μ13 + μ28 + μ29 3 t5, t14, t31 t4, t13, t p5 + p28 2 μ5 + μ28 2 t5, t30 t4, t p6 + p19 2 μ6 + μ19 2 t7, t20 t6, t p6 + p20 + p21 4 μ6 + μ20 + μ21 3 t7, t19 t6, t p7 + p8 + p20 5 μ7 + μ8 + μ20 2 t9, t19 t7, t p7 + p8 + p27 5 μ7 + μ8 + μ27 2 t9, t29 t7, t p7 + p20 + p27 5 μ7 + μ20 + μ27 2 t8, t19, t29 t7, t18, t p8 + p20 + p21 5 μ8 + μ20 + μ21 2 t9, t19 t8, t p8 + p21 + p27 5 μ8 + μ21 + μ27 2 t9, t18, t29 t8, t17, t p11 + p12 + p24 5 μ11 + μ12 + μ24 2 t13, t25 t11, t p13 + 2p29 2 μ13 + μ29 2 t14, t31 t13, t p20 + p21 + p27 5 μ20 + μ21 + μ27 2 t19, t29 t17, t p25 + 2p26 2 μ25 + μ26 2 t27 t p34 + 2p35 2 μ34 + μ35 2 t37 t

75 2.6. CONCLUSIONS 2.6 Conclusions First, we discuss the complexity of the proposed method. It is NP-hard since one requires a complete generation of reachable markings and needs to solve integer linear programming problems, both of which are NP-hard problems. In order to overcome the complexity of the proposed method, two concepts are provided in this paper : vector covering approach and BDDs for the generation of a reachability graph. The vector covering approach can reduce the considered legal markings and FBMs into two very small sets, namely the minimal covering set of legal markings and the minimal covered set of FBMs, respectively. When an FBM is selected, a further vector covering approach is applied and a minimal covering set of legal markings is reduced into a further smaller one. The main contribution of this technique is that it greatly reduces the number of the sets of inequalities and the number of inequalities in each set. It is known that the integer linear programming problem is NP-hard. However, an integer linear programming problem with only a small number of constraints can be solved efficiently. It can be seen from the experimental results that even for a large example that has more than 80 million of legal markings, the largest number of inequalities for each set is only 322. Thus, the vector covering approach can greatly reduce the computational burden of solving an integer linear programming problem and make the proposed method applicable for large-scale Petri nets. To overcome the inefficiency of explicitly enumerating reachable markings by a traditional computation method, the application of BDDs to Petri net analysis is introduced and experimental results show that BDDs are effective and efficient to compute a reachability graph. For the net of the large example, an explicit enumeration of reachable markings is impractical. However, BDDs can be used to overcome this problem. In this point, BDDs are powerful to compute reachable markings. Although the complexity of the considered problems is NP-hard in theory, experimental results show that these two techniques make the proposed method feasible to tackle large-scale Petri nets. Thus, from the experimental point of view, the proposed method is still efficient. Second, we make some comparisons with relative works. Uzam and Zhou [84] develop an effective method to deal with deadlocks in FMS. They provide some examples to illustrate that 74

76 2.6. CONCLUSIONS their method can obtain a highly permissive but not, in general, optimal supervisor. Ghaffari et al. [31] develop a method using the theory of regions, which is an optimal but computationally expensive since a lot of sets of inequalities need to be solved. Both theory of regions and proposed method can obtain a maximally permissive supervisor if such a supervisor exists. However, in the proposed method, a vector covering approach is used to reduce the number of the sets of inequalities and the number of inequalities in each set. Thus, compared with the theory of regions, the proposed method has a much low computational complexity in practice, which is shown by the experimental study. Compared with the method proposed by Uzam and Zhou [84], the one proposed in this work computes the reachability graph of a Petri net only once. Furthermore, it is maximally permissive but Uzam and Zhou s is not. The application scope of this method is limited to bounded Petri net models of FMS as in Uzam and Zhou s method but smaller than the theory of regions [31]. The order of FBMs that is chosen at each iteration influences the final control places very much. A good order can lead to a supervisor without redundant control places. Different choices have different iterations times and different redundant control places. The proposed method cannot automatically remove or identify the redundant control places from the final supervisor. 75

77 2.6. CONCLUSIONS 76

78 Chapitre 3 Structurally Minimal Supervisors In this chapter, an optimal deadlock prevention policy for FMSs is proposed, which can obtain a maximally permissive liveness-enforcing supervisor while the number of control places is minimized. By using a vector covering approach, the sets of legal markings and FBMs are reduced to two small ones, i.e., the minimal covering set of legal markings and the minimal covered set of FBMs, respectively. An optimal control purpose can be achieved by designing control places such that all markings in the minimal covered set of FBMs are forbidden and no marking in the minimal covering set of legal markings is forbidden. There is no need to add a control place for each FBM since multiple FBMs can be forbidden by only one optimal control place. In this case, we design an ILPP to minimize the number of control places to be computed. The resulting net has the minimal number of control places and is maximally permissive. A number of FMS examples from the literature are presented to illustrate the proposed method. 3.1 Introduction Petri nets [64] are widely used to model and control FMSs since they are suitable to detect deadlocks of a system and develop a policy to deal with them [18], [31], [37], [60], [75]. Deadlock prevention is one of the most important approaches whose goal is to impose constrains on a system to prevent it from reaching deadlock states [18], [29], [30], [42], [69], [70]. In this case, the computation is carried out off-line and once the control policy is established and applied, deadlocks can no longer occur. There are three very important criteria in evaluating and designing a liveness-enforcing super- 77

79 3.1. INTRODUCTION visor for a system to be controlled : behavioral permissiveness, structural complexity, and computational complexity. A maximally permissive supervisor always leads to high utilization of system resources. A supervisor with the minimal number of control places can decrease the hardware and software costs in the stage of control validation and implementation. A deadlock control policy with low computational complexity means that it can be applied to large-scale systems. Chapter 2 develops an approach that can definitely derive a maximally permissive livenessenforcing supervisor for Petri net models of FMSs if such a supervisor exists, where a maximally permissive control place is designed by a PI that forbids one of the FBM and none of legal markings is forbidden. The PI is computed by solving an integer linear programming problem. In order to overcome the complexity of this method, a vector covering approach is developed to reduce the sets of legal markings and FBMs to be small, i.e., the minimal covering set of legal markings and the minimal covered set of FBMs. Then, only the two reduced sets are considered in the design of a supervisor. In this case, the computational burden is greatly reduced. However, the previous work does not ensure that the supervisor has a compact structure and hence suffers from the structural complexity problem in theory. In this chapter a non-iterative approach is proposed, aiming to overcome the structural complexity problem and ensure that the controlled system is still maximally permissive. First, a vector covering approach is used to reduce the sets of legal marking and FBMs to be small. Then, an ILPP is designed to satisfy the following three conditions : 1) Each FBM in the minimal covered set of FBMs is forbidden by at least one control place. Therefore, all the FBMs are forbidden, implying that the controlled system is live. 2) No markings in the minimal covering set of legal markings are forbidden. Therefore, no legal markings are excluded, implying that the final supervisor is maximally permissive. 3) The objective function minimizes the number of control places to be added under an assumption that a control place is associated with a P-semiflow. If the ILPP has a solution, we can obtain a maximally permissive supervisor with a minimal structure within the class of supervisors where each control place is associated with a P-semiflow. Then, the controlled system can be implemented with less hardware and software costs, and the resources of the system are highly utilized as well. This method has the same application scope 78

80 3.2. MINIMAL NUMBER OF CONTROL PLACES SYNTHESIS with the method in Chapter 2. That is to say, it can be used to all classes of Petri net models of FMSs in the literature such as PPN [34], [97], S 3 PR [18], ES 3 PR [80], S 4 PR [81], S PR [19], S 2 LSPR [65], S 3 PGR 2 [66], and S 3 PMR [38]. A drawback of the proposed method is its computational complexity that makes it inapplicable to large-scale Petri net models. Also, it cannot be applied to Petri net instances from the above models that have no maximally permissive liveness-enforcing supervisor expressed by monitors. 3.2 Minimal Number of Control Places Synthesis This section presents an approach to minimize the number of control places to be computed. In the following, we define N FBM as N FBM = {i M i M FBM }. A PI associated with a control place may forbid more than one FBM. Given I j for an FBM M j M FBM, any FBM M k M FBM (k j) is forbidden if it satisfies the following constraint : l j,i M k (p i ) l j,i M j (p i ), M k M FBM and k j (3.1) i N A i N A where l j,i (i N A ) are the coefficients of I j. By simplifying Eq.(3.1), we have l j,i (M k (p i ) M j (p i )) 0, M k M FBM and k j (3.2) i N A For I j, we introduce a set of variables f j,k (k N FBM and k j) to represent the relation between I j and any marking M k in M FBM. Then, for each FBM in M FBM, Eq.(3.2) is rewritten as : l j,i (M k (p i ) M j (p i )) Q (1 f j,k ), M k M FBM and k j (3.3) i N A where Q is a positive constant integer that must be big enough and f j,k {0, 1}. In Eq.(3.3), f j,k = 1 indicates that M k is forbidden by I j and f j,k = 0 indicates that this constraint is redundant and M k cannot be forbidden by I j. Now we introduce another set of variables h j ( j N FBM ) for I j, where h j = 1 represents that I j is selected to compute control place and h j = 0 indicates that I j is redundant and there is not necessary to add a control place for it. If I j is not selected, it cannot forbid any FBM. Therefore, we have the following conditions : f j,k h j, k N FBM and k j (3.4) 79

81 3.2. MINIMAL NUMBER OF CONTROL PLACES SYNTHESIS Any FBM M j in M FBM constraint : must be forbidden by at least one PI. Thus, we have the following h j + f k, j 1 (3.5) k N FBM, k j For every FBM in M FBM, we have Eqs. (3.3), (5.4), and (5.5). Combining all these constraints and the reachability conditions together, we have the following ILPP that is denoted as the Minimal number of Control Places Problem (MCPP). MCPP : min j N FBM h j sub ject to l j,i (M l (p i ) M j (p i )) 1, M j M FBM and M l M L (3.6) i N A l j,i (M k (p i ) M j (p i )) Q (1 f j,k ), M j, M k M FBM and j k (3.7) i N A f j,k pm j, j, k N FBM and j k (3.8) h j + f k, j 1, j N FBM (3.9) k N FBM, k j l j,i {0, 1, 2, }, i N A and j N FBM f j,k {0, 1}, j, k N FBM and j k h j {0, 1}, j N FBM The objective function represents the minimal number of control places to be computed. We do some detailed discussions on MCPP with respect to the numbers of constraints and variables. Let us consider the number of constraints of each type. The type of Eq.(3.6) has M FBM M L constraints. Since M k M j, the number of constraints of type (3.7) is M FBM ( M FBM 1). Similarly, the type of Eq.(3.8) has M FBM ( M FBM 1) constraints. Finally, the number of constraints of type (3.9) is M FBM. The total number of all the four types of constraints in MCPP is M FBM ( M L + 2 M FBM 1). Now we consider the number of variables in MCPP. Let P A be the number of operation places in a Petri net model to be controlled. The number of variables 80

82 3.3. DEADLOCK PREVENTION POLICY l j,i (i N A, j N FBM )is P A M FBM. The number of variables f j,k is M FBM ( M FBM 1) since j, k N FBM and j k. The number of variables pm j ( j N FBM ) is equal to the number of markings in M FBM, i.e., M FBM. Therefore, MCPP has M FBM ( P A + M FBM ) variables in total. Table 3.1 summarizes the information of MCPP. Tab. 3.1 The numbers of constraints and variables in MCPP constraint type constraint number variable name variable number (3.6) M FBM M L l j,i M FBM P A (3.7) M FBM ( M FBM 1) f j,k M FBM ( M FBM 1) (3.8) M FBM ( M FBM 1) pm j M FBM (3.9) M FBM total M FBM ( M L + 2 M FBM 1) total M FBM ( P A + M FBM ) 3.3 Deadlock Prevention Policy This section presents a deadlock prevention policy to obtain an optimal liveness-enforcing supervisor with a minimal number of control places if such a supervisor exists. Algorithm 3.1 Deadlock Prevention Policy. Input : Petri net model (N, M 0 ) of an FMS with N = (P 0 P A P R, T, F, W). Output : an optimally controlled Petri net system (N 1, M 1 ) with a minimal structure if such a supervisor exists. 1. Compute the set of FBM M FBM and the set of legal markings M L for (N, M 0 ). 2. Compute the minimal covered set of FBM M FBM and the minimal covering set of legal markings M L for (N, M 0). 3. V M :=. /* V M is used to denote the set of control places to be computed.*/ 4. Solve the ILPP, i.e., MCPP, proposed in Section 3.2. If it has no solution, exit, as the Petri net model has no optimal liveness-enforcing supervisor expressed by control places. 5. foreach h j = 1 do Use l j,i in the solution as the coefficients of a PI and design a control place p c j to forbid M j M FBM by the method proposed in Section

83 3.3. DEADLOCK PREVENTION POLICY V M := V M {p c j }. 6. Add all control places in V M to (N, M 0 ) and denote the resulting net system as (N 1, M 1 ). 7. Output (N 1, M 1 ). 8. End. This algorithm can obtain an optimal liveness-enforcing supervisor with the minimal number of control places. We first compute the reachability graph of a Petri net model and then the sets of legal markings and FBM are derived. Using a vector covering approach, the two sets are reduced to be small, i.e., the minimal covering set of legal markings M L and the minimal covered set of FBM M FBM. Then, we design MCPP to select the control places to be added. For each FBM in M FBM, there exists a constraint to ensure that it can be forbidden by at least one PI. Thus, all FBM are forbidden and the controlled system cannot enter into the deadlock-zone. The objective function of MCPP is used to minimize the number of control places to be selected. Finally, a minimal number of control places is selected to obtain an optimal liveness-enforcing supervisor. It is not an iterative synthesis policy since it can find all control places by solving an integer linear programming problem. The most advantage of this method is that an optimal liveness-enforcing supervisor with the minimal number of control places can be definitely found if such a supervisor exists. Theorem 3.1 Algorithm 3.1 can obtain a maximally permissive supervisor with the minimal number of control places for a Petri net model of an FMS if there exists a solution that satisfies Eq.(2.5) for each FBM in M FBM. Proof : By Eq.(3.9), every FBM in M FBM is forbidden by at least one control place in the final supervisor. According to Corollary 2.3, if all markings in M FBM are forbidden, then all FBM are forbidden, implying that the controlled system is live since it cannot enter DZ any more. By Corollary 2.4, if the set of integer linear inequalities of Eq.(2.5) for each FBM has a solution, then no legal markings are forbidden. That is to say, all legal markings are reachable and an optimal supervisor is obtained by Algorithm 3.1. From the objective function of the MCPP, it is known that the minimal number of control places is ensured. In a word, the final supervisor is maximal permissive and has the minimal number of control places. 82

84 3.3. DEADLOCK PREVENTION POLICY Theorem 3.2 The proposed deadlock prevention method can lead to a maximally permissive liveness-enforcing supervisor with the minimal number of control places if such a supervisor exists. Proof : In the proof of Theorem 2.6 in Chapter 2, we have shown that for every additional control place, there exists a PI that is associated with it and operation places only. Assume that an optimal supervisor exists for a net model, then each control place of the supervisor can construct a PI that does not forbid any legal markings and at least one FBM is forbidden. By contradiction, suppose that there exists a PI that does not satisfy Eq.(2.5) for some markings in M L, as Section 2.3 describes, these markings are forbidden by the PI. This means that the control place designed for this PI is not optimal. Thus, it is proved that any PI for optimal control purpose satisfies Eq.(2.5). According to Theorem 3.1, the proposed method can obtain an optimal supervisor with the minimal number of control places if there exists a solution that satisfies Eq.(2.5) for each FBM in M FBM. Therefore, the proposed method can obtain an optimal liveness-enforcing supervisor with the minimal number of control places if such a supervisor exists. Now we consider the Petri net model of an AMS shown in Fig. 3.1 to show the application of the proposed deadlock prevention approach. The model has 20 reachable markings, 15 of which are legal and five are FBMs. Using the vector covering approach, the minimal covered set of FBMs and the minimal covering set of legal markings have three and two elements, respectively, i.e., M FBM = {p 2 + p 5, p 3 + p 5, p 2 + p 7 } and M L = {p 2 + p 3 + p 4, p 5 + p 6 + p 7 }. For FBM 1 =p 2 +p 5, let I 1 be the PI to forbid FBM 1, whose coefficients are l 1,i (i {2, 3, 4, 5, 6, 7}). For optimal control purpose, I 1 must not forbid any marking in M L. Thus, I 1 should satisfy the two constraints : l 1,2 (1 1)+l 1,3 (1 0)+l 1,4 (1 0)+l 1,5 (0 1)+l 1,6 (0 0)+l 1,7 (0 0) 1 and l 1,2 (0 1) + l 1,3 (0 0) + l 1,4 (0 0) + l 1,5 (1 1) + l 1,6 (1 0) + l 1,7 (1 0) 1 for the two legal markings p 2 + p 3 + p 4 and p 5 + p 6 + p 7 in M L, respectively. By simplifying the two constraints, we have : l 1,3 + l 1,4 l 1,5 1 l 1,2 + l 1,6 + l 1,7 1. and We introduce two variables f 1,2 and f 1,3 ( f 1,2, f 1,3 {0, 1}) to represent whether I 1 forbids FBM 2 =p 3 + p 5 and FBM 3 =p 2 + p 6, respectively. Thus, we have the two constraints, i.e., l 1,2 (0 83

85 3.3. DEADLOCK PREVENTION POLICY Fig. 3.1 Petri net model of an AMS. 1) + l 1,3 (1 0) + l 1,4 (0 0) + l 1,5 (1 1) + l 1,6 (0 0) + l 1,7 (0 0) Q (1 f 1,2 ) and l 1,2 (1 1) + l 1,3 (0 0) + l 1,4 (0 0) + l 1,5 (0 1) + l 1,6 (1 0) + l 1,7 (0 0) Q (1 f 1,3 ), where Q is a positive constant integer that must be big enough. For the former constraint, f 1,2 = 1 indicates that FBM 2 is forbidden by I 1 and f 1,2 = 0 indicates that this constraint is redundant and FBM 2 cannot be forbidden by I 1. Similarly, for the latter constraint, f 1,3 = 1 indicates that FBM 3 is forbidden by I 1 and f 1,3 = 0 indicates that this constraint is redundant and FBM 3 cannot be forbidden by I 1. By simplifying the two constraint, we have : l 1,2 + l 1,3 Q (1 f 1,2 ) l 1,5 + l 1,6 Q (1 f 1,3 ). and Similarly, for FBM 2, we have the following constraints : and l 2,2 + l 2,4 l 2,5 1 and l 2,3 + l 2,6 + l 2,7 1. l 2,2 l 2,3 Q (1 f 2,1 ) l 2,2 l 2,3 l 2,5 + l 2,6 Q (1 f 2,3 ). 84 and

86 3.3. DEADLOCK PREVENTION POLICY Finally, for FBM 3, we have the following constraints : and l 3,3 + l 3,4 l 3,5 1 and l 3,2 + l 3,5 + l 3,7 1, l 3,2 + l 3,3 + l 3,5 l 3,6 Q (1 f 3,1 ) l 3,5 l 3,6 Q (1 f 3,2 ). and Now we introduce a set of variables h j ( j {1, 2, 3}), where h j =1 indicates that I j is selected to compute a control place and pm j =0 indicates that I j is not selected. FBM 1 must be forbidden by at least one PI. Thus, we have the following constraint : h 1 + f 2,1 + f 3,1 1 Similarly, for FBM 2 and FBM 3, we have the following constraints : h 2 + f 1,2 + f 3,2 1 and h 3 + f 1,3 + f 2,3 1 If I 1 is not selected to compute a control place, i.e., h 1 =0, it cannot forbid FBM 2 and FBM 3. Therefore, we have : and Similarly, for I 2 and I 3,wehave: f 1,2 h 1 f 1,3 h 1. f 2,1 h 2 f 2,3 h 2, f 3,1 h 3 f 3,2 h 3. and and and Given all the above constraints, now we use an objective function to minimize the number of control places to be computed, as shown in the following : min h 1 + h 2 + h 3 Grouping all the constraints above and the objective function, an ILPP, i.e., MCPP is formulated as follows : 85

87 3.3. DEADLOCK PREVENTION POLICY MCPP : min h 1 + h 2 + h 3 sub ject to l 1,3 + l 1,4 l 1,5 1 l 1,2 + l 1,6 + l 1,7 1 l 1,2 + l 1,3 Q (1 f 1,2 ) l 1,5 + l 1,6 Q (1 f 1,3 ) l 2,2 + l 2,4 l 2,5 1 l 2,3 + l 2,6 + l 2,7 1 l 2,2 l 2,3 Q (1 f 2,1 ) l 2,2 l 2,3 l 2,5 + l 2,6 Q (1 f 2,3 ) l 3,3 + l 3,4 l 3,5 1 l 3,2 + l 3,5 + l 3,7 1 l 3,2 + l 3,3 + l 3,5 l 3,6 Q (1 f 3,1 ) l 3,5 l 3,6 Q (1 f 3,2 ) h 1 + f 2,1 + f 3,1 1 h 2 + f 1,2 + f 3,2 1 h 3 + f 1,3 + f 2,3 1 f 1,2 h 1 f 1,3 h 1 f 2,1 h 2 f 2,3 h 2 f 3,1 h 3 f 3,2 h 3 l j,i {0, 1, 2, }, i {2, 3, 4, 5, 6, 7} and j {1, 2, 3} f j,k {0, 1}, j, k {1, 2, 3} and j k 86

88 3.4. EXPERIMENTAL RESULTS h j {0, 1}, j {1, 2, 3} The above MCPP has a solution as shown in Table 3.2. In the solution, since h 1 = 0, h 2 = 1, and h 3 = 1, I 2 and I 3 are selected to compute the control places and there is no need to compute a control place for I 1 to forbid FBM 1. In fact, f 2,1 = 1 in the solution means that FBM 1 is forbidden by I 2. There are totally two control places to be added for this net, as shown in Table 3.3, where the first column is the selected FBM number i, the second represents the selected first-met bad marking FBM i, the third shows the PI I i, and the fourth to the sixth columns indicate pre-transitions ( p ci ), post-transitions (p c i ), and initial marking (M 0 (p ci )) of control place p ci, respectively. Adding the two control places to the original net model, as shown in Figure 3.2, the resulting net is live with 15 legal markings. Note that in this solution, though I 1 that is designed to forbid FBM 1 is not selected, FBM 1 is forbidden by I 2 since f 2,1 = 1. In fact, we can substitute FBM 1 into I 2 : μ 2 + μ 3 + 2μ 5 2. Then, we have FBM 1 (p 2 )+FBM 1 (p 3 )+2FBM 1 (p 5 ) = 3 2, which contradicts the constraint of I 2. Thus, FBM 1 is forbidden by I 2 and there is no need to compute a control place for I 1. Tab. 3.2 A solution of the MCPP variable pm 1 f 1,2 f 1,3 l 1,2 l 1,3 l 1,4 l 1,5 l 1,6 l 1,7 value variable pm 2 f 2,1 f 2,3 l 2,2 l 2,3 l 2,4 l 2,5 l 2,6 l 2,7 value variable pm 3 f 3,1 f 3,2 l 3,2 l 3,3 l 3,4 l 3,5 l 3,6 l 3,7 value Tab. 3.3 Control places computed for the net shown in Fig. 3.1 i FBM i I i p ci p c i M 0 (p ci ) 2 p 3 + p 5 μ 2 + μ 3 + 2μ 5 2 t 3, 2t 6 t 1, 2t p 2 + p 6 μ 2 + μ 6 1 t 2, t 7 t 1, t Experimental Results In this section, FMS examples available in the literature are considered to show the experimental results of the proposed approach. 87

89 3.4. EXPERIMENTAL RESULTS Fig. 3.2 An optimally controlled system of the Petri net in Fig The Petri net model of an FMS given in [83] is shown in Fig There are 19 places and 14 transitions. Places have the following set partition : P 0 = {p 1, p 8 }, P R = {p 14,, p 19 }, and P A = {p 2,, p 7, p 9,, p 13 }. It has 282 reachable markings, 54 and 205 of which are FBM and legal ones, respectively. By using a vector covering approach, M FBM and M L have eight and 26 markings, respectively. For this example, the MCPP has 328 constraints and 152 variables. By solving the MCPP, we obtain a solution such that only two control places need to be added, as shown in Table 3.4. Tab. 3.4 Control places computed for the net shown in Fig. 3.3 i FBM i I i p ci p c i μ +2μ +μ +2μ +2μ + M 0 (p ci ) 5 p 2 + p 4 + p 6 + 2t 7, 3t 11 t 1, t 2, t 4, 3t 9 9 p 9 + p μ 9 + 3μ p 2 + p 4 + p 12 μ 2 + 2μ 3 + μ 4 + 2μ μ 12 3 t 4, 2t 5, 2t 13 t 1, t 2, 2t 11 3 This example is widely used in the literature. Table 3.5 shows some available results for the example in terms of the numbers of additional places, additional arcs, and reachable markings of the controlled net. It can be seen that the results listed in the table are optimal but the proposed method obtains a supervisor with only two control places and 12 arcs, both of which are minimal compared with the related numbers of other methods. 88

90 3.4. EXPERIMENTAL RESULTS Fig. 3.3 Petri net model of an FMS. Tab. 3.5 Performance comparison of some deadlock control policies Parameters [83] [59] [69] Cha. 2 the proposed method No. monitors No. arcs No. reachable markings

91 3.4. EXPERIMENTAL RESULTS The Petri net model of an FMS from [18] is shown in Fig There are 26 places and 20 transitions. Places have the following set partition : P 0 = {p 1, p 5, p 14 }, P R = {p 20,, p 26 }, and P A = {p 2,, p 4, p 6,, p 13, p 15,, p 19 }. It has 26,750 reachable markings, 4,211 and 21,581 of which are FBM and legal ones, respectively. By using a vector covering approach, M FBM and M L have 34 and 393 markings, respectively. For this example, the MCPP has 15,640 constraints and 1,700 variables. By solving the MCPP, we obtain a solution that five control places need to be added, as shown in Table 3.6. This example is also studied in a number of papers. Table 3.7 shows some classical available results for the example in terms of the numbers of additional places, additional arcs, and reachable markings of the controlled net. It can be seen that, among all the six approaches shown in this table, the proposed method obtains a supervisor with only five control places and 56 arcs. Compared with the optimal deadlock prevention policies, the numbers of additional control places and arcs derived from the proposed method are minimized. Fig. 3.4 An S 3 PR model in Ezpeleta et al. (1995) [18]. 90

92 3.4. EXPERIMENTAL RESULTS Tab. 3.6 Control places computed for the net shown in Fig. 3.4 i FBMi Ii p p ci ci M0(pci ) 4 p12 + 2p16 8μ2 + 8μ3 + 3μ6 + μ7 + 9μ8 + 9μ9 + 2μ11 + 2t2, 9t5, t7, 35t9, 8t13, 34t14, t18 3t1, 8t3, 33t8, 35t9, 8t11, 9t15, 26t μ12 + 9μ μ16 + μ p6 +2p7 +2p9 + p μ6 + 17μ7 + 2μ8 + 2μ9 + 17μ11 + 3μ12 + 2t5, 15t3, 14t8, 3t10, 17t19 17t1, 4t15, 11t17, 2t18 99 p12 + p15 + p16 + p18 3μ13 + 4μ15 + 4μ μ μ p3 + p8 + p9 + 2p11 + μ2 + μ3 + μ8 + μ9 + 39μ11 + 3μ12 + 3μ13 + t5, 36t8, 3t10, t13, 24t18 t3, 39t7, t11, 6t15, 9t16, 9t p15 + p16 6μ μ μ p2 + 2p3 28μ2 + 28μ3 + 3μ7 + 28μ8 + 7μ9 + 7μ t4, 7t5, 7t10, 28t13, 7t17 3t2, 25t3, 7t9, 28t11, 7t μ15 + 7μ p13 + p15 5μ2 + μ6 + μ7 + 5μ8 + 5μ9 + μ μ μ μ μ16 + μ t5, 31t10, 5t12, 25t16, 15t17, t18 t1, 4t3, 14t8, 16t9, 5t11, 41t Tab. 3.7 Performance comparison of some deadlock control policies Parameters [18] [55] [37] [84] [69] Cha. 2 the proposed method No. monitors No. arcs No. reachable markings

93 3.5. CONCLUSIONS 3.5 Conclusions This chapter presents a deadlock prevention policy to obtain an optimal supervisor with the minimal number of control places if such a supervisor exists. The performance analysis of a deadlock prevention policy is always carried out by considering the following three criteria : behavioral permissiveness, structural complexity, and computational complexity. For the proposed method, in terms of behavioral permissiveness, the derived supervisor is optimal and in terms of structural complexity, it has the smallest number of control places among all the optimal ones in the literature and more importantly, no redundant control place can survive in the supervisor. In fact, for the examples in Figs. 3.3 and 3.4, the numbers of the additional control places are two and five, respectively. However, the numbers of elementary siphons (which is linear related to the size of the net) for these two examples are three and six, respectively. This means that the proposed method is possible to obtain a less number of control places than elementary siphon approaches. The only problem of the proposed method is its computational complexity since one requires a complete enumeration of reachable markings and needs to solve an integer linear programming problem. The number of reachable markings increases exponentially with respect to the size of the net, which always suffers from the state explosion problem. The number of constraints in the integer linear programming problem is polynomial with respect to the number of elements in the minimal covering set of legal markings and the minimal covered set of FBMs. To reduce the computational cost, BDDs (Binary Decision Diagrams) can be used [68; 67] to compute the reachable markings. For instance, in [6], a number of algorithms are developed to compute the set of legal markings, the set of FBMs, the minimal covering set of legal markings, and the minimal covered set of FBMs by using BDDs. Considering that an integer linear programming problem is NP-hard, a vector covering approach is used to greatly reduce the number of constraints in the integer linear programming problem. However, the proposed method is still inapplicable to large-scaled Petri net models if there are a lot of constraints. 92

94 Chapitre 4 Maximally Permissive Supervisors with a Simple Structure This chapter develops an iterative deadlock prevention policy and a modified version, aiming to overcome the computational complexity problem in MCPP proposed in Chapter 3 and ensure that the controlled system is maximally permissive with a simple structure. At each iteration, a maximally permissive PI associated with a control place is designed to forbid as many FBM as possible by solving an ILPP. All FBM that are forbidden by the PI are removed from the minimal covered set of FBM. This process is carried out until no FBM is left in the minimal covered set. A maximally permissive supervisor with a small number of control places can be accordingly obtained. Finally, a modified version of the above mentioned method is also provided in order to further reduce the computational time. 4.1 Introduction The previous work in Chapter 2 develops a reachability graph based method that can definitely derive a maximally permissive liveness-enforcing supervisor for Petri net models of FMS if such a supervisor exists. In Chapter 2, a maximally permissive control place is designed by a PI that forbids an FBM and no legal marking is forbidden. The PI is computed by solving an ILPP. In order to overcome the complexity of this method, a vector covering approach is developed to reduce the sets of legal markings and FBM to two small ones, i.e., the minimal covering set of legal markings and the minimal covered set of FBM. Then, only the two reduced sets are considered for the design of a supervisor. In this case, the computational burden is greatly reduced since the number 93

95 4.1. INTRODUCTION of constraints in an ILPP decreases remarkably. However, the previous work still suffers from the structural complexity problem since the number of the computed control places is not minimal but only limited by the number of FBM in the minimal covered set of FBM. In Chapter 3, we propose an approach that can obtain a maximally permissive liveness-enforcing supervisor with the minimal number of control places. It is a non-iterative approach since all control places can be once obtained by solving an ILPP (which is denoted as MCPP in Chapter 3). Though this approach overcomes the problems of both behavioral permissiveness and structural complexity, it still suffers from expensive computational cost. An ILPP is NP-hard in theory and the computational time greatly depends on the number of constraints and variables in it. For a large-scale Petri net model, the ILPP designed by this approach may have a large number of constraints and integer variables, which cannot be solved within a reasonable time. For instance, in Chapter 3, the ILPP for a Petri met model from [18] with 26 places and 20 transitions has 15,640 constraints and 1,700 variables. It takes 44 hours to solve it. This chapter proposes an iterative deadlock prevention policy and a modified version, aiming to overcome the computational complexity problem in Chapter 3 and ensure that the controlled system is maximally permissive with a simple control structure. First, a vector covering approach is used to compute the minimal covering set of legal markings and the minimal covered set of FBM. Then, an iterative control place design process is carried out. At each iteration, a PI is designed to forbid as many FBM as possible and the coefficients of the PI are computed by solving an ILPP that satisfies the following two conditions : 1) No markings in the minimal covering set of legal markings are forbidden. Therefore, no legal markings are prohibited, implying that the final supervisor is maximally permissive. 2) The objective function maximizes the number of FBM that are forbidden by the PI. That is to say, a PI forbids as many FBM in the minimal covered set of FBM as possible. Solving the ILPP can obtain a PI and a control place. All FBM that are forbidden by the PI are removed from the minimal covered set of FBM. This process is carried out until no FBM is left in the minimal covered set. A maximally permissive supervisor with a small number of control places can be accordingly obtained. We also provide a modified version of the above mentioned method in order to further reduce 94

96 4.2. CONTROL PLACE SYNTHESIS FOR FORBIDDING FBM the computational time. In fact, we only modify the iteration steps as follows. At each iteration, an FBM is singled out from the minimal covered set of FBM and a PI is designed to forbid the selected FBM. The PI is computed by solving an ILPP such that the selected FBM is forbidden and no legal markings in the minimal covering set of legal markings are forbidden. At the same time, we also use an objective function to maximize the number of FBM that are forbidden by the PI. The modified version of an ILPP has a small number of constraints and variables. Therefore, compared with the former, it can be solved in a shorter time in general. 4.2 Control Place Synthesis for Forbidding FBM This section presents two techniques to design a PI that can forbid as many FBM as possible. In what follows, N FBM denotes {i M i M FBM }. Using the method proposed in Chapter 2, we can design a maximally permissive PI to forbid a given FBM. In fact, a PI may forbid more FBM. Now we develop a technique to maximize the number of FBM forbidden by a PI. Let I be a PI for the constraint l i μ i β (4.1) i N A where l i (i N A ) are the coefficients of I and β is a positive integer variable. An FBM M M FBM is forbidden by I if i N A l i M(p i ) β + 1 (4.2) We introduce a set of variables f k (k = 1, 2,...) to represent the relation between I and M k in M FBM. Then, Eq.(4.2) is modified as : l i M k (p i ) β + 1 Q (1 f k ) (4.3) i N A where Q is a positive integer constant that must be big enough and f k {0, 1}. In Eq.(4.3), f k = 1 indicates that M k is forbidden by I and f k = 0 indicates that this constraint is redundant and M k cannot be forbidden by I. All constraints for FBM in M FBM are grouped as follows : 95

97 4.2. CONTROL PLACE SYNTHESIS FOR FORBIDDING FBM l i M k (p i ) β + 1 Q (1 f k ), M k M FBM (4.4) i N A The coefficients of I and β should satisfy the reachability conditions. As a result, we have the following ILPP to design a PI, which is denoted as the Maximal number of Forbidding FBM Problem 1 (MFFP1). MFFP1 : max f = k N FBM f k sub ject to i N A l i M l (p i ) β, M l M L (4.5) i N A l i M k (p i ) β + 1 Q (1 f k ), M k M FBM (4.6) l i {0, 1, 2,...}, i N A β {1, 2,...} f k {0, 1}, k N FBM The objective function f is used to maximize the number of FBM that are forbidden by I. Denote its optimal value by f.if f = 0, we have f k = 0, k N FBM, implying that no FBM in M FBM can be forbidden by a maximally permissive PI. In this case, we claim that there is no maximally permissive PI for any FBM in M FBM, as stated below. Theorem 4.1 If f = 0, there is no maximally permissive PI for any FBM in M FBM. Proof : By contradiction, let us suppose that there exists a maximally permissive PI I that can forbid an FBM M k M FBM. Since I is maximally permissive, its coefficients l 1, l 2,..., and l NA satisfy Eq.(4.5). Since M k is forbidden by I, wehave i N A l i M k (p i ) β + 1. Therefore, f k = 1 satisfies Eq.(4.6). We have f = k N f k 1. This contradicts f = 0. Thus the conclusion FBM holds. 96

98 4.2. CONTROL PLACE SYNTHESIS FOR FORBIDDING FBM As known, an ILPP is NP-hard. However, the computational time for solving an ILPP greatly depends on the number of constraints and variables in it. Therefore, we discuss MFFP1 from the viewpoint of the number of constraints and variables. The total numbers of Eqs.(4.5) and (4.6) are M L and M FBM, respectively. Thus, the total number of the constraints in MFFP1 is M FBM + M L. Now we consider the number of variables in it. Let P A be the number of operation places. The number of variables l i (i N A )is P A. Since k N FBM, the number of variables f k is M FBM. Finally, considering the single variable β, MFFP1 has P A + M FBM + 1 variables in total. In fact, a PI to be computed should forbid at least one FBM. Thus, an FBM can be forbidden by setting β as a linear combination of l i (i N A ) by Eq.(2.2). In what follows, we modify MFFP1 in order to improve its efficiency by slightly reducing the number of its variables and constraints. Let I be a PI that forbids an FBM M j M FBM by Eq.(2.1). M k M FBM (k j), M k is forbidden by the PI if it satisfies l i M k (p i ) l i M j (p i ) (4.7) i N A i N A where l i (i N A ) are the coefficients of I. By simplifying Eq.(5.1), we have i N A l i (M k (p i ) M j (p i )) 0 (4.8) Similarly, we introduce a set of binary variables f k (k N FBM and k j) to represent the relation between I and any marking M k in M FBM. Then, Eq.(5.2) is modified as : i N A l i (M k (p i ) M j (p i )) Q (1 f k ) (4.9) where Q is a positive integer constant that must be big enough and f k {0, 1}. In Eq.(5.3), f k = 1 indicates that M k is forbidden by I and f k = 0 indicates that it is not. All constraints for FBM in M FBM are grouped as follows : i N A l i (M k (p i ) M j (p i )) Q (1 f k ), M k M FBM and k j (4.10) Given M j M FBM, we have Eq.(4.10). In addition, the coefficients of I should satisfy the reachability conditions. Therefore, we have the following ILPP to design a PI for M j, which is denoted as the Maximal number of Forbidding FBM Problem 2 (MFFP2). 97

99 4.2. CONTROL PLACE SYNTHESIS FOR FORBIDDING FBM MFFP2 : max f = k N FBM,k j f k sub ject to l i (M l (p i ) M j (p i )) 1, M l M L (4.11) i N A l i (M k (p i ) M j (p i )) Q (1 f k ), M k M FBM and k j (4.12) i N A l i {0, 1, 2,...}, i N A f k {0, 1}, k N FBM and k j The objective function f is used to maximize the number of FBM that are forbidden by I. If MFFP2 for an FBM dose not have a solution, then there does not exist a maximally permissive PI. Theorem 4.2 If MFFP2 for an FBM has no solution, the FBM cannot be forbidden by a maximally permissive PI. Proof : By contradiction, suppose that there exists a maximally permissive PI I that forbids an FBM M. Then, no legal marking in M L is forbidden by I and the coefficients of I satisfy the reachability conditions, i.e., Eq.(4.11). For Eq.(4.12), it can be seen that it always has a solution (for example, f k = 0, k N FBM ). Thus, MFFP2 for M has a solution, which contradicts the condition of the theorem. Now, we analyze the number of constraints and variables in MFFP2. The type of Eq.(4.11) has M L constraints. Since k j, the number of constraints of type (4.12) is M FBM 1. Thus, the total number of the constraints in MFFP2 is M FBM + M L 1. The number of variables l i s (i N A )is P A. Since k N FBM and k j, the number of variables f k s is M FBM 1. Thus, MFFP2 has P A + M FBM 1 variables in total. In Chapter 3, we develop an ILPP (called MCPP) to obtain a supervisor with the minimal number of control places. Table 4.1 compares MFFP1 and MFFP2 with MCPP for a Petri net model in terms of the number of constraints and variables. Table 4.1 shows that the two parameters in MFFP1 are slightly bigger than those in MFFP2, respectively. Thus, the computational overhead 98

100 4.3. DEADLOCK PREVENTION POLICY of MFFP2 is in theory a little smaller than that of MFFP1. This can be verified by the experimental results proposed in Section 4.4. It can also be seen that the number of their constraints and variables is much smaller than that in MCPP. Thus, their computational cost is much smaller than that of MCPP. Tab. 4.1 Comparison of constraints and variables among MFFP1, MFFP2, and MCPP Parameters MFFP1 MFFP2 MCPP No. constraints No. variables M FBM + M L P A + M FBM + 1 M FBM + M L 1 A + M FBM 1 M FBM ( M L + 2 M FBM 1) FBM ( P A + M FBM ) 4.3 Deadlock Prevention Policy This section presents two iterative deadlock prevention policies, each of which can obtain a maximally permissive liveness-enforcing supervisor with a small number of control places. First, we provide an algorithm by using MFFP1. Algorithm 4.1 Deadlock Prevention Policy by Using MFFP1. Input : Petri net model (N, M 0 ) of an FMS with N = (P 0 P A P R, T, F, W). Output : A maximally permissive controlled Petri net system (N 1, M 1 ). 1. Compute the set of FBM M FBM and the set of legal markings M L for (N, M 0 ). 2. Compute the minimal covered set of FBM M FBM and the minimal covering set of legal markings M L for (N, M 0). 3. V M :=. /* V M is used to denote the set of control places to be computed.*/ 4. while M FBM do Design MFFP1 by the method proposed in Section 4.2. Solve MFFP1. Let l i (i N A ) and β be the solution if f 0. Otherwise, exit, as the maximally permissive Petri net supervisor does not exist. Design a PI I and a control place p c by the method in Section 1.2. V M := V M {p c } and M FBM := M FBM F I. 99

101 4.3. DEADLOCK PREVENTION POLICY endwhile 5. Add all control places in V M to (N, M 0 ) and denote the resulting net system as (N 1, M 1 ). 6. Output (N 1, M 1 ). 7. End. This algorithm can obtain a maximally permissive liveness-enforcing supervisor with a small number of control places if at each iteration, f 0. First, the reachability graph of a Petri net model is computed, from which the sets of legal markings and FBM are derived. By using a vector covering approach, we obtain the minimal covering set of legal markings M L and the minimal covered set of FBM M FBM, which are usually much smaller than the sets of legal markings and FBM, respectively. Then, an iterative process is carried out. At each iteration, we design an ILPP, i.e., MFFP1 to obtain a PI that can forbid as many FBM as possible. Once a non-zero solution of MFFP1 is obtained, a PI and a control place are accordingly designed. Then, we remove all the FBM that are forbidden by the computed PI from the minimal covered set of FBM. This process is carried out until the minimal covered set of FBM is empty. Finally, we add all the computed control places to the Petri net model. Thus, all FBM are forbidden and the controlled system cannot enter the deadlock-zone. Theorem 4.3 Algorithm 4.1 can obtain a maximally permissive supervisor for a Petri net model of an FMS if there exists an optimal solution f 0 for MFFP1 at each iteration. Proof : At each iteration, if there exists a non-zero solution that satisfies the reachability conditions, i.e., Eq.(4.5) in MFFP1, then no legal markings are forbidden and a maximally permissive PI is obtained. Only the FBM that are forbidden by the computed PI are removed from the minimal covered set of FBM. At the same time, the PI forbids at least one FBM since f 0. Therefore, all markings in M FBM are forbidden when the iterative process terminates. According to Corollary 2.3, all FBM are forbidden, implying that the controlled system is live since it can never enter the DZ. Finally, the supervisor with the control places derived from all maximally permissive PI is maximally permissive. Next, we develop an algorithm by using MFFP2. It is similar to Algorithm 4.1 except the iteration step, i.e., Step 4. Therefore, only the modified iteration step is provided. 100

102 4.3. DEADLOCK PREVENTION POLICY Algorithm 4.2 Deadlock Prevention Policy by Using MFFP2. Steps 1-3 and 5-7 are the same as those in Algorithm while M FBM do M M FBM, design MFFP2 for M by the method in Section 4.2. Solve MFFP2. Let l i (i N A ) be the solution if it exists. Otherwise, exit, as the maximally permissive Petri net supervisor does not exist. endwhile Design a PI I and a control place p c by the method in Section 1.2. V M := V M {p c } and M FBM := M FBM F I. This algorithm can also obtain a maximally permissive liveness-enforcing supervisor with a small number of control places. Its difference from Algorithm 4.1 is at Step 4. In Algorithm 4.2, an FBM is singled out and MFFP2 is solved to forbid not only the selected FBM but also as many FBM as possible. Once an optimal solution of MFFP2 is obtained, a PI and a control place are accordingly designed. Then, we remove all the FBM that are forbidden by the computed PI from the minimal covered set of FBM. This process is carried out until the minimal covered set of FBM is empty. Finally, we obtain the desired results. Theorem 4.4 Algorithm 4.2 can obtain a maximally permissive supervisor for a Petri net model of an FMS if there exists an optimal solution to MFFP2 at each iteration. Proof : By Corollary 2.4, if there exists a solution that satisfies Eq.(4.11) at each iteration, then a maximally permissive PI is obtained and no legal markings are forbidden. Only the FBM that are forbidden by the computed PI are removed from the minimal covered set of FBM. Therefore, all markings in M FBM are forbidden when the iterative process terminates. According to Corollary 2.3, all FBM are forbidden, implying that the controlled system is live since it can never enter the DZ. Thus, the supervisor derived from all maximally permissive PI is maximally permissive. We discuss the two methods proposed in this chapter and Chapter 3. Compared with the work in Chapter 3, the computational time of both proposed methods is much shorter since the num- 101

103 4.3. DEADLOCK PREVENTION POLICY ber of constraints in MFFP1 or MFFP2 is greatly smaller than that in MCPP. They can obtain a supervisor with a small number of control places but cannot guarantee the minimality of the supervisory structure. However, experimental results show that the number of control places obtained by the proposed methods is equal to or very close to the minimal number obtained in Chapter 3. The number of constraints and variables in MFFP2 is slightly smaller than that in MFFP1. Thus, the computational time of Algorithm 4.2 is shorter than that of Algorithm 4.1. However, at each iteration, MFFP1 is easier to design since it can be obtained just by deleting the constraints for FBM that are forbidden by the PI computed at the last iteration. In summary, Algorithm 4.1 is easy to use and straightforward while Algorithm 4.2 is more efficient. The Petri net model of an FMS shown in Fig.4.1 is used to demonstrate the proposed algorithms. The model has 20 reachable markings, 15 of which are legal and five are FBM. By using a vector covering approach, the minimal covered set of FBM and the minimal covering set of legal markings have three and two elements, respectively. Specifically, we have M FBM = {p 2 + p 5, p 3 + p 5, p 2 + p 6 } and M L = {p 2 + p 3 + p 4, p 5 + p 6 + p 7 }. Fig. 4.1 The Petri net model of an FMS. First, Algorithm 4.1 is considered. At the first iteration, let I 1 be the PI to be computed. I 1 should satisfy the reachability conditions for the two legal markings in M L, i.e., l 2 1+l 3 1+l 4 1 β and l l l 7 1 β. Thus, we have the following two constraints 102

104 4.3. DEADLOCK PREVENTION POLICY l 2 + l 3 + l 4 β and l 5 + l 6 + l 7 β. We introduce three variables f 1, f 2, and f 3 ( f 1, f 2, f 3 {0, 1}) to represent whether I 1 forbids FBM 1 =p 2 + p 5, FBM 2 =p 3 + p 5, and FBM 3 =p 2 + p 6, respectively. Thus, we have the following three constraints, i.e., l 2 + l 5 β + 1 Q (1 f 1 ), l 3 + l 5 β + 1 Q (1 f 2 ), l 2 + l 6 β + 1 Q (1 f 3 ). Finally, we have MFFP1 as below. and MFFP1 : max f = f 1 + f 2 + f 3 sub ject to l 2 + l 3 + l 4 β l 5 + l 6 + l 7 β l 2 + l 5 β + 1 Q (1 f 1 ) l 3 + l 5 β + 1 Q (1 f 2 ) l 2 + l 6 β + 1 Q (1 f 3 ) l i {0, 1, 2,...}, i {2, 3, 4, 5, 6, 7} β {1, 2,...} f k {0, 1}, k {1, 2, 3} The above ILPP has an optimal solution with l 2 = 2, l 5 = 1, l 6 = 1, β = 2, f 1 = 1, f 3 = 1, and all the other variables are equal to zero. Then, a control place p c1 is designed for I 1 :2μ 2 + μ 5 + μ 6 + μ pc1 = 2. As a result, we have M 0 (p c1 ) = β = 2, p c1 = {2t 2, t 7 }, and p c 1 = {2t 1, t 5 }. FBM 1 and FBM 3 are forbidden by I 1, i.e., F I1 = {FBM 1, FBM 3 }. Thus, we have M FBM := M FBM F I 1, i.e., M FBM = {p 3 + p 5 }. At the next iteration, let I 2 be the PI to be computed. The new MFFP1 can be easily obtained by deleting constraints for FBM 1 and FBM 3 from the first MFFP1. As a result, we have 103

105 4.3. DEADLOCK PREVENTION POLICY MFFP1 : max f = f 2 sub ject to l 2 + l 3 + l 4 β l 5 + l 6 + l 7 β l 3 + l 5 β + 1 Q (1 f 2 ) l i {0, 1, 2,...}, i {2, 3, 4, 5, 6, 7} β {1, 2,...} f 2 {0, 1} The above ILPP has an optimal solution with l 3 = 1, l 5 = 1, β = 1, f 2 = 1 and all the other variables are equal to zero. Then, a control place p c2 is designed for I 2 : μ 3 + μ 5 + μ pc2 = 1. As a result, we have M 0 (p c2 ) = β = 1, p c2 = {t 3, t 6 }, and p c 2 = {t 2, t 5 }. Only FBM 2 is forbidden by I 2, i.e., F I2 = {FBM 2 }. Thus, we have M FBM := M FBM F I 2, i.e., M FBM =. Now, Algorithm 4.1 terminates and there are totally two control places obtained for this net. Table 4.2 shows the results, where the first column is the iteration number i, the second shows the computed PI I i, the third, denoted by F Ii, is the number of FBM in M FBM, which are forbidden by I i, the fourth to sixth columns indicate pre-transitions ( p ci ), post-transitions (p c i ), and initial marking (M 0 (p ci )) of control place p ci, respectively, and the last two columns are the numbers of constraints and variables in each MFFP1, denoted by N LP and N var, respectively. Adding the two control places to the original net model, we obtain a live controlled system with 15 legal markings, as shown in Fig.4.2. For this example, the MCPP in Chapter 3 has 18 constraints and 27 variables. Clearly, MFFP1 at the two iterations has much less constraints and variables (see N LP in Table 4.2) and Algorithm 4.1 obtains the same result in Chapter 3, i.e., a supervisor with the minimal number of control places. Now, we consider the application of Algorithm 4.2. At the first iteration, FBM 1 =p 2 + p 5 is selected. Let I 1 be the PI to forbid FBM 1, whose coefficients are l i (i {2, 3, 4, 5, 6, 7}). For the maximally permissive control purpose, I 1 should not forbid any marking in M L. Thus, I 1 should 104

106 4.3. DEADLOCK PREVENTION POLICY Tab. 4.2 Control places computed for the net shown in Fig.4.1 i I i F Ii p ci p c i M 0 (p ci ) N LP N var 1 2μ 2 + μ 5 + μ t 2, t 7 2t 1, t μ 3 + μ t 3, t 6 t 2, t Fig. 4.2 A controlled system of the Petri net in Fig.4.1 by Algorithm

107 4.3. DEADLOCK PREVENTION POLICY satisfy two constraints : l 2 (1 1) + l 3 (1 0) + l 4 (1 0) + l 5 (0 1) + l 6 (0 0) + l 7 (0 0) 1 and l 2 (0 1) + l 3 (0 0) + l 4 (0 0) + l 5 (1 1) + l 6 (1 0) + l 7 (1 0) 1 for the two legal markings p 2 + p 3 + p 4 and p 5 + p 6 + p 7 in M L, respectively. By simplifying them, we have l 3 + l 4 l 5 1 l 2 + l 6 + l 7 1. and We introduce two variables f 2 and f 3 to represent whether I 1 forbids FBM 2 =p 3 + p 5 and FBM 3 =p 2 + p 6, respectively. Thus, we have the two constraints, i.e., l 2 (0 1) + l 3 (1 0) + l 4 (0 0) + l 5 (1 1) + l 6 (0 0) + l 7 (0 0) Q (1 f 2 ) and l 2 (1 1) + l 3 (0 0) + l 4 (0 0) + l 5 (0 1) + l 6 (1 0) + l 7 (0 0) Q (1 f 3 ), where Q is a positive integer constant that must be big enough and f 2 = 1(f 3 = 1) indicates that FBM 2 (FBM 3 ) is forbidden by I 1 and f 2 = 0 ( f 3 = 0) indicates that FBM 2 (FBM 3 ) cannot be forbidden by I 1. By simplifying them, we have l 2 + l 3 Q (1 f 2 ) l 5 + l 6 Q (1 f 3 ). and Finally, MFFP2 for FBM 1 is formulated as follows : MFFP2 : max f = f 2 + f 3 sub ject to l 3 + l 4 l 5 1 l 2 + l 6 + l 7 1 l 2 + l 3 Q (1 f 2 ) l 5 + l 6 Q (1 f 3 ) l i {0, 1, 2,...}, i {2, 3, 4, 5, 6, 7} f k {0, 1}, k {2, 3} The above ILPP has an optimal solution with l 2 = 1, l 3 = 1, l 5 = 2, f 2 = 1, and all the other variables being zero. Then, a control place p c1 is designed for I 1 : μ 2 + μ 3 + 2μ 5 + μ pc1 = 2. As a 106

108 4.3. DEADLOCK PREVENTION POLICY result, we have M 0 (p c1 ) = 2, p c1 = {t 3, 2t 6 }, and p c 1 = {t 1, 2t 5 }. FBM 1 and FBM 2 are forbidden by I 1, i.e., F I1 = {FBM 1, FBM 2 }. Thus, we have M FBM := M FBM F I 1, i.e., M FBM = {p 2 + p 6 }. At the second iteration, we consider the last FBM, FBM 3. Let I 2 be the PI to forbid FBM 3. First, the coefficients of I 2 should satisfy the reachability conditions, i.e., l 3 + l 4 l 6 1 l 2 + l 5 + l 7 1. and Since FBM 3 is the last element in M FBM, no other FBMs in the set need to be forbidden by I 2. In this case, we solve the above integer linear program and obtain a solution with l 2 = 1, l 6 = 1, and all the other variables being zero. Then, a control place p c2 is designed for I 2 : μ 2 + μ 6 + μ pc2 = 2. As a result, we have M 0 (p c2 ) = 1, p c2 = {t 2, t 7 }, and p c 2 = {t 1, t 6 }. Only FBM 3 is forbidden by I 2, i.e., F I2 = {FBM 3 }. Thus, we have M FBM := M FBM F I 1, i.e., M FBM =. Now, Algorithm 4.2 terminates and there are totally two control places obtained for this net. Table 4.3 shows the results, where the selected FBM, denoted by FBM i, is shown in the second column. Adding the two control places to the original net model, we obtain a live controlled net with 15 legal markings, as shown in Fig.4.3. For this example, Algorithm 4.2 also obtains the same result as that in Chapter 3, i.e., a supervisor with the minimal number of control places. Tab. 4.3 Control places computed for the net shown in Fig.4.1 i FBM i I i F Ii p ci p c i M 0 (p ci ) N LP N var 1 p 3 + p 5 μ 2 + μ 3 + 2μ t 3, 2t 6 t 1, 2t p 2 + p 6 μ 2 + μ t 2, t 7 t 1, t From this example, it can be seen that MFFP1 has more constraints and variables than MFFP2. However, MFFP1 at each iteration is similar to the ones at the previous iterations. It can be obtained only by deleting the constraints for the FBM that are forbidden by the PI computed at the last iteration. In summary, Algorithm 4.1 is easy to use and straightforward while Algorithm 4.2 is more efficient from the viewpoint of computational cost. 107

109 4.4. EXPERIMENTAL RESULTS Fig. 4.3 A controlled system of the Petri net in Fig.4.1 by Algorithm Experimental Results This section presents some FMS examples available in the literature to show the experimental results of the proposed methods. All the proposed computational times refer to CPU seconds in a computer in Windows XP operating system with Intel CPU Core 2.8 GHz and 4 GB memory. The Petri net model of an FMS is shown in Fig.4.4, which has been studied in several papers (see [83], [59], [69], [70]). There are 19 places and 14 transitions. The places have the following set partition : P 0 = {p 1, p 8 }, P R = {p 14 p 19 }, and P A = {p 2 p 7, p 9 p 13 }. It has 282 reachable markings, 54 and 205 of which are FBMs and legal ones, respectively. By using a vector covering approach, M FBM and M L have eight and 26 markings, respectively. The applications of Algorithms 4.1 and 4.2 are shown in Tables 4.4 and 4.5, respectively, where the computational time of solving the ILPP at each iteration is shown in the last column, denoted by τ LP. Tab. 4.4 Control places computed for the net shown in Fig.4.4 by Algorithm 4.1, 4t, t, i I i F Ii p ci p c i 4t M 0 (p ci ) 14 N LP 34 N var 20 τ LP (S) < μ 2 + 8μ 3 + 4μ 4 + 5μ 5 + μ t 5, 5t 6, t 12, μ μ μ t t 9, 7t 11 2 μ 2 +2μ 3 +μ 4 +2μ 5 +2μ 6 +3μ 9 + 3μ t 7, 3t 11 t 1, t 2, t 4, 3t <

110 4.4. EXPERIMENTAL RESULTS Fig. 4.4 Petri net model of an FMS. Tab. 4.5 Control places computed for the net shown in Fig.4.4 by Algorithm 4.2 i FBM i I i F Ii p ci p c i M 0 (p ci ) N LP N var τ LP (S) 1 p 2 +p 3 +p 4 μ 2 + 2μ 3 + μ 4 + 2μ t 4, 2t 5, 2t 13 t 1, t 2, 2t <0.01 2μ p 3 + p 5 + p 9 + p 10 μ 2 +2μ 3 +μ 4 +2μ 5 +2μ 6 + 3μ 9 + 3μ t 7, 3t 11 t 1, t 2, t 4, 3t <0.01 For this example, the iterations in both Algorithms 4.1 and 4.2 can be finished in less than 0.02s since the ILPP at each iteration has a small number of constraints and variables. However, for the method proposed in Chapter 3, the ILPP (denoted as MCPP) has 328 constraints and 152 variables, which can be solved in 1.1s. Therefore, the two policies proposed in this work are more efficient than the one proposed in Chapter 2, and more importantly, can obtain a maximally permissive supervisor with two control places, i.e., the minimal number of control places. This example is widely used in the literature. Table 4.6 shows some available results for the example in terms of the numbers of additional places, additional arcs, and reachable markings of the controlled net. Note that the previous work in Chapter 2 obtains a supervisor with two control places and 12 arcs. 109

111 4.4. EXPERIMENTAL RESULTS Algorithm 4.2 obtains the same result and Algorithm 4.1 leads to a supervisor with the minimal number of control places and three more arcs than 12 arcs in Chapter 2. Tab. 4.6 Performance comparison of some deadlock control policies Parameters [83] [59] [69] Cha. 2 Cha. 3 Alg. 4.1 Alg. 4.2 No. monitors No. arcs No. reachable markings Next, the Petri net model of a larger FMS [18] is considered, as shown in Fig.4.5. There are 26 places and 20 transitions. The places have the following set partition : P 0 = {p 1, p 5, p 14 }, P R = {p 20 p 26 }, and P A = {p 2 p 4, p 6 p 13, p 15 p 19 }. It has 26,750 reachable markings, 4,211 and 21,581 of which are FBMs and legal ones, respectively. By using a vector covering approach, M FBM and M L have 34 and 393 markings, respectively. The applications of Algorithms 4.1 and 4.2 are shown in Tables 4.7 and 4.8, respectively. Fig. 4.5 An S 3 PR model in Ezpeleta et al. (1995) [18]. For this example, MCPP proposed in Chapter 3 has 15,640 constraints and 1,700 variables. It 110

112 4.4. EXPERIMENTAL RESULTS Tab. 4.7 Control places computed for the net shown in Fig.4.5 by Algorithm 4.1 i I i F Ii p ci p c i 3t M 0 (p ci ) 196 N LP 427 N var 51 τ LP (S) μ μ 3 + 3μ 6 + 3μ μ t 5, 50t 10, 15t 13, 17μ 9 + 3μ μ μ μ μ 16 + μ μ t 17, 2t 19 1, 14t 3, 44t 8, 3t 9, 15t 11, 50t 15, t 18 2 μ 2 + μ 3 + μ 8 + μ μ μ t 5, 24t 8, 3t 10, t 13, 3μ μ μ μ t 18 t 3, 27t 7, t 11, 6t 15, 3t 16, 9t μ 6 + 6μ 7 + μ 9 + 6μ 11 + μ 12 + μ t 3, t 5, 5t 8, t 9, 6t 19 6t 1, t 4, t 15, 4t 17, t μ μ μ μ 2 + μ 3 + μ t 4, t 13 t 3, t μ 12 + μ t 9, t 17 t 8, t μ 13 + μ t 10, t 16 t 9, t Tab. 4.8 Control places computed for the net shown in Fig.4.5 by Algorithm 4.2 i FBM i I i F Ii p ci p c i 2t M 0 (p ci ) 299 N LP 426 N var 49 τ LP (S) p p 16 8μ 2 + 8μ 3 + 2μ 6 + 2μ t 5, 50t 8, 25t 10, 9μ 8 +9μ 9 +75μ μ μ μ μ 16 +μ 17 + μ t 13, 74t 17, t 19 1, 7t 3, 73t 7, 8t 11, 50t 15, 25t 16 2 p p 16 6μ 2 + 6μ 3 + μ 6 + μ 7 + 7μ 8 + 7μ 9 + μ μ μ μ μ 16 + μ t 5, 20t 9, 19t 10, 6t 13, 39t 17, t 19 t 1, 6t 3, 38t 8, 6t 11, 20t 15, 19t 16, t p 6 + 2p 7 + p 8 + 6μ 2 + 6μ 3 + μ 6 + μ 7 + 7μ t 5, t 8, 27t 10, p 15 + p 16 + p 18 8μ 16 + μ t 19 p 9 + p 11 + p μ 9 + μ μ μ t 13, 19t 16, 8t 17, t 1, 6t 3, 27t 9, 6t 11, 27t 15, t p 2 + 2p 3 μ 2 + μ 3 + μ t 4, t 13 t 3, t p 6 +2p 7 + p μ 6 +6μ 7 +μ 9 +23μ 11 +μ t 3, t 5, 23t 8, t 10, 6t 1, t 4, 17t 7, t 9, p 17 + p 18 μ 15 +μ μ 17 +5μ t 18, 5t 19 t 15, 22t 17 6 p 6 +2p 7 + p p 18 μ 6 + μ 7 + μ 17 + μ t 3, t 7, t 19 t 1, t <

113 4.5. CONCLUSIONS requires about 44 hours to obtain an optimal solution. However, in this work, Algorithms 4.1 and 4.2 can be finished within 2.58s and 0.98s, respectively. This example is also studied in a number of other papers [18], [55], [37], [84], [69]. Table 4.9 shows some classical available results for the example in terms of the numbers of additional places, additional arcs, and reachable markings of the controlled net. It can be seen that the results listed in the last five columns of the table are maximally permissive and the method in Chapter 3 obtains a supervisor with five control places (which is also the minimal number of control places for a maximally permissive supervisor) and 55 arcs. Tab. 4.9 Performance comparison of some deadlock control policies Parameters [18] [55] [37] [84] [69] Cha.2 Cha.3 Alg. 4.1 Alg. 4.2 No. monitors No. arcs No. reachable markings For this example, we have the following conclusions : 1) From the viewpoint of behavioral permissiveness, both Algorithms 4.1 and 4.2 can find an optimal supervisor. 2) As far as computational time is concerned, Algorithms 4.1 and 4.2 are efficient, reducing the CPU time for solving ILPPs from 44 hours in Chapter 3 to 2.58s and 0.98s, respectively. The iterations in Algorithm 4.2 are finished in a shorter time than that in Algorithm ) About structural complexity, on the one hand, both Algorithms 4.1 and 4.2 obtain a supervisor with six control places, which is only one greater than the minimal one obtained in Chapter 3. On the other hand, Algorithm 4.1 obtains a supervisor with only 45 arcs, which is 10 less than the one proposed in Chapter 3. Algorithm 4.2 obtains a supervisor with 58 arcs, which is three greater than the one proposed in Chapter Conclusions This chapter presents two iterative deadlock prevention policies to derive a maximally permissive supervisor with a small number of control places. Both aim to overcome the computational bottleneck of the previous work, i.e., the ILPP in Chapter 3 have too many constraints and variables 112

114 4.5. CONCLUSIONS for complex Petri net models. Though the two methods are iterative, numerical studies show that they can terminate in a few of iterations. Furthermore, the number of constraints in the ILPP at each iteration is greatly reduced. Thus, the total computational time is also reduced. In the writer s opinion, the method proposed in this chapter employs the idea of divide-and-conquer to tackle a complex problem. The performance of a deadlock prevention policy is always evaluated by considering the following criteria : behavioral permissiveness, structural complexity, and computational complexity. For the two proposed methods, in terms of behavioral permissiveness, both are maximally permissive. From the aspect of structural complexity, it can reach or closely reach the smallest number of control places. As for the computational cost, the computational time is drastically reduced compared with that in Chapter 3. However, the computational complexity of the considered problems is in theory NP-hard since both require a complete enumeration of reachable markings and also need to solve ILPP. Another problem is that they in theory cannot guarantee the minimality of the obtained supervisory structure. Our future work focuses on the avoidance of computing a full reachable space and achieves the minimality of the supervisory structure. 113

115 4.5. CONCLUSIONS 114

116 Chapitre 5 Maximally Permissive Supervisor with Lowest Implementation Cost This chapter develops a place invariant based deadlock prevention method to obtain a maximally permissive Petri net supervisor with the lowest implementation cost. A supervisor consists of a set of control places and the arcs connecting control places to transitions. We assign an implementation cost for each control place and control and observation costs for each transition. Based on reachability graph analysis, maximal permissiveness can be achieved by designing place invariants that prohibit all FBMs but no legal markings. By solving an ILPP, a set of optimal control places are obtained and the objective function is used to minimize the implementation cost of the final supervisor. A vector covering approach is used to reduce the number of considered markings, aiming to reduce the computational overhead of the proposed method. Finally, a number of examples are proposed to illustrate the proposed approach. 5.1 Introduction All the methods presented in the previous chapters do not consider the hardware and software costs in the stage of control implementation. Although a simple supervisory structure always means low implementation cost of a supervisor, the situation in the real world is more complex. The reason is that the implementation cost cannot be evaluated only by the number of control places and arcs. In [4], Basile et al. propose a seminal work to design control places to enforce generalized mutual exclusion constraints (GMECs) by considering the implementation cost. A GMEC can represent a specification by limiting the weighted sum of tokens in a subset of places. 115

117 5.1. INTRODUCTION In [4], the implementation cost of a supervisor is minimized by solving an ILPP. The study in [16] describes a branch-and-bound algorithm to design an optimal supervisor with the first minimization of the number of places and the second minimization of the number of the control and observation arcs. However, they do not consider the cost of controlling/observing a single transition. In this chapter, we try to find an optimal supervisor with the lowest implementation cost in detail by considering the cost of controlling and observing a single transition. Not like the work in [4] which designs a supervisor to implement a given GMEC, this chapter obtains an optimal supervisor for a given Petri net model. The implementation cost of a supervisor can be evaluated by two parts : control places and arcs. Fig. 5.1 shows the layout of an FMS and its control unit. A control unit always represents a processing unit such as PLCs, microcontrollers and computers, which can be considered as a control place. The arcs of a supervisor are classified into two sets : control arcs and observation arcs. Control arcs are from control places to transitions and used to control the firing of transitions. Observation arcs are from transitions to control places and used to observe the occurrences of transitions. For example, the control and observation signals in Fig. 5.1 indicate the control and observation arcs, respectively. In this figure, a control signal represents the output of the control unit which is used to control the operation of the system. Similarly, an observation signal indicates the input of the control unit which is used to observe the state of the system. In practice, we assume that each of control (observation) arcs connecting to the same transition has the same implementation cost. Otherwise, the implementation cost for different arcs can be different. In this case, this paper tries to design an optimal supervisor with the lowest implementation cost. A control place is obtained by a PI. An optimal control purpose is achieved by designing PIs such that all legal markings are reachable and all FBMs are forbidden. Then, an ILPP is designed and solved to obtain an optimal supervisor and its objective function is used to minimize the implementation cost of the supervisor. Similar to the study in [4], this work also considers two cases for the implementation cost of an optimal supervisor. A control and observation cost is associated with a transition. Then, two cases are considered to evaluate the implementation cost. The first case is that the implementation costs associated with the control and observation of a transition t depend on the number of arcs going to and coming from t, respectively. In the second 116

118 5.1. INTRODUCTION Fig. 5.1 Layout of an FMS with its control unit. case, the control and observation costs of a transition t depend on whether there exist arcs going to and coming from t, respectively. The first case may make sense if the control and observation actions are associated with physical actions (a material flow and a signal carrying energy, for example). The second case has more intuitive motivation, i.e., the cost to control or observe a transition is associated with the installation cost of a sensor or an actuator [76; 101]. There is no extra cost to use the sensor or actuator. The goal of this research is to design a liveness-enforcing Petri net supervisor for an FMS by considering the optimization of both its behavioral permissiveness and implementation cost. It can be applied to all FMS-oriented classes of Petri net models in the literature. In summary, we have the following statements by comparing the proposed method with the work shown in Chapters 2 and 3. I. In the sense of behavioral permissiveness, the proposed approach and the work in Chapters 2 and 3 can lead to maximally permissive supervisors. II. From the viewpoint of computational complexity, the proposed approach and the work in Chapters 2 and 3 need the complete enumeration of all reachable marking and solving ILPPs. However, the ILPP proposed in Chapter 2 has very small number of constraints and variables. The ILPPs proposed in both this paper and Chapter 3 have too many constraints and variables for large-scale Petri net models. On the other hand, the work in Chapter 2 is an iterative approach but the work proposed both in this paper and Chapter 3 is non-iterative since all control places can be 117

119 5.2. LOWEST IMPLEMENTATION COST SUPERVISOR SYNTHESIS obtained by solving one ILPP. III. In the sense of structural complexity. The best one is the work in Chapter 3 that can obtain the minimal number of control places. The work in Chapter 2 leads to a supervisor with too many control places. The method proposed in this paper can obtain a small number of control places but the minimality cannot be guaranteed. IV. Compared with the previous work Chapters 2 and 3, the most advantage of the proposed method is that the implementation cost is considered and minimized. 5.2 Lowest Implementation Cost Supervisor Synthesis This section presents an approach to obtain an optimal supervisor with the lowest implementation cost. A PI may forbid more than one FBM. Given a PI I j for an FBM M j M FBM, any FBM M k M FBM (k j) is forbidden if M k satisfies the following constraint : l j,i M k (p i ) l j,i M j (p i ) (5.1) i N A i N A where l j,i s (i N A ) are the coefficients of I j. By simplifying Eq.(5.1), we have l j,i (M k (p i ) M j (p i )) 0 (5.2) i N A For I j, we introduce a set of variables f j,k (k N FBM and k j) to represent the relation between I j and markings M k (k N FBM and k j)inm FBM. Then, we have l j,i (M k (p i ) M j (p i )) Q (1 f j,k ), M k M FBM and k j (5.3) i N A where Q is a positive integer constant that must be big enough and f j,k {0, 1}. In Eq.(5.3), f j,k = 1 indicates that M k is forbidden by I j and f j,k = 0 implies that M k cannot be forbidden by I j. Now we introduce another set of variables h j ( j N FBM ) for I j and we have the following constraints : f j,k h j, k N FBM and k j (5.4) where h j = 1 shows that I j is selected to compute control place and h j = 0 indicates that I j is redundant and there is no need to add a control place for it. Eq.(5.4) implies that, if I j is not 118

120 5.2. LOWEST IMPLEMENTATION COST SUPERVISOR SYNTHESIS selected, it cannot forbid any FBM. For FBM M j, we also have h j + f k, j 1 (5.5) k N FBM, k j Eq.(5.5) ensures that any FBM M j in M FBM must be forbidden by at least one PI. Meanwhile, for each legal marking, no PI can prohibit its reachability. Hence, Eq.(2.5) is modified as l i (M (p i ) M(p i )) Q (1 h j ) 1, M M L (5.6) i N A Eq.(5.6) means that, 1) if I j is not selected, we do not restrict its coefficients ; and 2) if I j is selected, every marking in M L is reachable. Eqs.(5.1)-(5.6) are used to forbid multiple FBMs by one PI, as found in Chapter 2, where, however, the implementation cost is not considered. Next, we develop an ILPP to minimize the implementation cost of a supervisor. The arcs of a supervisor are classified into two categories : control arcs and observation arcs. A control arc is from a control place to a transition and an observation arc is from a transition to a control place. First, we introduce a set of variables f j,q c {0, 1} to represent whether there is a control arc from control place p c j to transition t q (t q T). Let [N c ]( j, ) denote the incidence vector of p c j, where [N c ]( j, q) = W(t q, p c j ) W(p c j, t q ). According to Eq.(1.16), [N c ]( j, q) = i N A l j,i [N 0 ](i, q). Thus, we have l j,i [N 0 ](i, q) Q f j,q c (5.7) i N A l j,i [N 0 ](i, q) Q (1 f j,q c ) + 1 (5.8) i N A where Q is a positive integer constant that must be big enough. Eqs.(5.7) and (5.8) imply that if [N c ]( j, q) 1, then f j,q c = 1. That is to say, there exists a control arc from p c j to transition t q.on the other hand, if [N c ]( j, q) 0, f j,q c = 0. Second, we similarly introduce a set of variables f j,q o {0, 1} to represent whether there is an observation arc from transition t q (t q T) to control place p c j. Then, we have l j,i [N 0 ](i, q) Q f j,q o (5.9) i N A l j,i [N 0 ](i, q) Q (1 f j,q o ) + 1 (5.10) i N A 119

121 5.2. LOWEST IMPLEMENTATION COST SUPERVISOR SYNTHESIS Eqs.(5.9) and (5.10) indicate that if [N c ]( j, q) 1, then f j,q o = 1. That is to say, there exists an observation arc from t q to p c j. On the other hand, if [N c ]( j, q) 0, f j,q o = 0. Finally, if I j is not selected to compute a control place, there are no control arc and observation arc. Thus, we have f j,q c h j (5.11) f j,q o h j (5.12) In order to design an optimal supervisor with the lowest implementation cost, we assign a cost value to each control place and each arc. Suppose that the implementation cost for each control place is C pc, then the total costs for all control places are C pc j N FBM h j (5.13) For transition t q, suppose that its control cost and observation cost are Ct c q and Ct o q, respectively. In the following, two cases are considered to evaluate the total implementation cost for all arcs of control places. Case 1) : The implementation costs associated with the control and observation of a transition t depend on the number of arcs going to and coming from t, respectively. In this case, the total implementation cost of arcs in a supervisor is defined as follows : ( C c tq f j,q c + ) Co t q f j,q o j N FBM t q T (5.14) Combining all the above constraints, we have the following ILPP that is denoted as Lowest Implementation Cost Optimal Supervisor Problem 1 (LICOSP1). 120

122 5.2. LOWEST IMPLEMENTATION COST SUPERVISOR SYNTHESIS LICOSP1 : min C = C pc j N FBM h j + j N FBM t q T ( C c tq f j,q c + ) Co t q f j,q o sub ject to l j,i (M l (p i ) M j (p i )) Q (1 h j ) 1, M j M FBM and M l M L (5.15) i N A l j,i (M k (p i ) M j (p i )) Q (1 f j,k ), M j, M k M FBM and j k (5.16) i N A f j,k h j, j, k N FBM and j k (5.17) h j + f k, j 1, j N FBM (5.18) k N FBM, k j l j,i [N p ](i, q) Q f j,q c, j N FBM, t q T (5.19) i N A l j,i [N p ](i, q) Q (1 f j,q c ) + 1, j N FBM, t q T (5.20) i N A l j,i [N p ](i, q) Q f j,q o, j N FBM, t q T (5.21) i N A l j,i [N p ](i, q) Q (1 f j,q o ) + 1, j N FBM, t q T (5.22) i N A f j,q c h j, j N FBM, t q T (5.23) f o j,q h j, j N FBM, t q T (5.24) l j,i {0, 1, 2, }, i N A and j N FBM f j,k {0, 1}, j, k N FBM and j k h j {0, 1}, j N FBM f j,q c, f j,q o {0, 1}, j N FBM, t q T The objective function C is used to minimize the total implementation cost of the final supervisor. Denote its optimal value by C, i.e., the lowest cost of the supervisor. Theorem 5.1 LICOSP1 can lead to an optimal supervisor with the lowest implementation cost in Case 1) if it has an optimal solution. Proof : Eq.(5.15) ensures that each selected PI is maximally permissive since no legal marking is forbidden. According to Definition 1.19, every control place computed by the PI is optimal. In 121

123 5.2. LOWEST IMPLEMENTATION COST SUPERVISOR SYNTHESIS this case, the final supervisor is also optimal. Eqs.(5.16), (5.17), (5.18), and (5.19) guarantee every FBM in M FBM is forbidden by at least one selected PI. Therefore, the controlled system cannot enter into DZ. That is to say, it is live. Eqs.(5.21), (5.22), (5.23), and (5.24) restrict variables f j,q c and f j,q o to represent whether there are a control arc from control place p c j to transition t q and an observation arc from t q to p c j, respectively. Thus, the objective function indicates the total implementation cost of the final supervisor and is used to minimize it. In summary, the conclusion holds. Case 2) : The control and observation costs of a transition t depend on whether there exist arcs going to and coming from t, respectively. In this case, the control (observation) cost of t cannot be linearly expressed by f j,q c ( f j,q o ). Now, we introduce a set of binary variables gc q (t q T) to represent whether there exist control arcs from a control place to t q. Thus, we have f c j,q Q gc q (5.25) j N FBM f c j,q gc q (5.26) j N FBM Eqs.(5.25) and (5.26) ensure that g c q = 1if f j,q = 1 and g c q = 0if f j,q = 0, where j N FBM. That is to say, g c q = 1 indicates that there is at least one control arc from a control place to t q and g c q = 0 means that there is no control arc from a control place to t q. Similarly, we introduce a set of binary variables g o q (t q T) to represent whether there exist observation arcs from t q to a control place. Then, we have j N FBM f o j,q Q go q (5.27) f o j,q go q (5.28) j N FBM According to Eqs.(5.27) and (5.28), g o q = 1 indicates that there is at least one observation arc from t q to a control place and g o q = 0 means that there is no observation arc from t q to a control place. Then, the total implemental cost of all arcs of a supervisor is defined as follows : ( C c tq g c q + Ct o q gq) o t q T (5.29) 122

124 5.2. LOWEST IMPLEMENTATION COST SUPERVISOR SYNTHESIS Adding Eqs.(5.25)-(5.28) to LICOSP1 and modifying the objective function, we have the following ILPP that is denoted as Lowest Implementation Cost Optimal Supervisor Problem 2 (LI- COSP2). LICOSP2 : ( min C = C pc h j + C c tq g c q + Ct o q gq) o j N t FBM q T sub ject to Equations in LICOS P1 f j,q c Q gc q, t q T (5.30) j N FBM j N FBM j N FBM j N FBM f j,q c gc q, t q T (5.31) f j,q o Q go q, t q T (5.32) f j,q o go q, t q T (5.33) l j,i {0, 1, 2, }, i N A and j N FBM f j,k {0, 1}, j, k N FBM and j k h j {0, 1}, j N FBM f j,q c, f j,q o {0, 1}, j N FBM, t q T g c q, g o q {0, 1}, t q T Theorem 5.2 LICOSP2 can lead to an optimal supervisor with the lowest implementation cost in Case 2) if it has an optimal solution. Proof : The proof is similar to that of Theorem 5.1. In LICOSP1, Eqs.(5.23) and (5.24) can be removed since they do not influence the value of C. This fact can be verified as follows. If h j = 0, then Eq.(5.15) does not restrict variables l j,i.asa result, f j,q c and f j,q o are not restricted by Eqs.(5.23) and (5.24). According to the objective function, f j,q c and f j,q o are equal to 0 in the optimal solution. Therefore, we conclude that Eqs.(5.23) and (5.24) 123

125 5.3. AN ILLUSTRATIVE EXAMPLE can be removed from LICOSP1. Similarly, Eqs.(5.23) and (5.24) are also redundant in LICOSP2. The computational time for solving an ILPP greatly depends on the number of constraints and variables in it. We provide the two instances of LICOSP1 and LICOSP2 in Table 5.1 (which does not include the redundant constraints, i.e., Eqs.(5.23) and (5.24)). Tab. 5.1 The number of constraints and variables in LICOSP1 and LICOSP2 type constraint number type constraint number name variable number (5.15) M FBM M L (5.21) M FBM T l j,i M FBM P A (5.16) M FBM ( M FBM 1) (5.22) M FBM T f j,k M FBM ( M FBM 1) (5.17) M FBM ( M FBM 1) (5.30) T h j M FBM (5.18) M FBM (5.31) T f j,q c M FBM T (5.19) M FBM T (5.32) T f j,q o M FBM T (5.20) M FBM T (5.33) T gc q T g o q T LICOSP1 M FBM ( M L + 2 M FBM + 4 T 1) LICOSP1 M FBM ( P A + M FBM + 2 T ) LICOSP2 M FBM ( M L + 2 M FBM + 4 T 1) + 4 T LICOSP2 M FBM ( P A + M FBM + 2 T ) + 2 T Remark 5.1 In fact, a control place always indicates a control unit in PLCs, micro-controllers, and computers. Thus, the implementation cost C pc of a control place can be assigned as the real costs of these devices. A control (observation) arc is used to control (observe) the occurrence of an event. In this case, the implementation cost Ct c q (Ct o q ) of a control (observation) arc on t q can be considered as the cost of the corresponding actuator (sensor) of the event t q. Thus, the obtained implementation cost is the sum of all costs of all the control units, actuators, and sensors, which are used to implement the obtained supervisor. In fact, LICOSP1 also can be used to minimize the number of control places and arcs. For instance, if we set both control and observation cost for each arc to be zero, then we can obtain an optimal supervisor with a minimal number of control places. Similarly, if we set the implementation cost of a control place to be zero and every arc has the same implementation cost, then we can obtain an optimal supervisor with a minimal number of arcs. 5.3 An Illustrative Example This section takes the net shown in Fig. 5.2 as a simple FMS example to show the application of the proposed method. There are 11 places and eight transitions, where places can be considered as the collections of the three subsets : idle place set P 0 = {p 1, p 8 }, activity place set P A = {p 2 p 7 }, 124

126 5.3. AN ILLUSTRATIVE EXAMPLE and resource place set P R = {p 9 p 11 }. The net has 20 reachable markings, in which 15 are legal markings and five are FBMs. By using a vector covering approach, the minimal covered set of FBMs and the minimal covering set of legal markings have three and two elements, respectively. Specifically, we have M FBM = {p 2 + p 5, p 3 + p 5, p 2 + p 6 } and M L = {p 2 + p 3 + p 4, p 5 + p 6 + p 7 }. t1 t8 p9 p2 p7 t2 t7 3 3 p1 p3 p10 p6 p8 t3 t6 p11 p4 p5 t4 t5 Fig. 5.2 Petri net model of an FMS. For FBM 1 = p 2 + p 5, let I 1 be the PI that forbids FBM 1, whose coefficients are l 1,i (i {2, 3, 4, 5, 6, 7}) and h 1 {0, 1} the variable to represent whether I 1 is selected to compute a control place p c1. For an optimal control purpose, I 1 does not forbid any legal marking in M L. Thus, we have l 1,3 + l 1,4 l 1,5 Q (1 h 1 ) 1 l 1,2 + l 1,6 + l 1,7 Q (1 h 1 ) 1. Two variables f 1,2 and f 1,3 ( f 1,2, f 1,3 {0, 1}) are introduced to represent whether I 1 forbids FBM 2 =p 3 + p 5 and FBM 3 =p 2 + p 6, respectively. Thus, we have l 1,2 + l 1,3 Q (1 f 1,2 ) and l 1,5 + l 1,6 Q (1 f 1,3 ). FBM 1 must be forbidden by at least on PI. Thus, we have h 1 + f 2,1 + f 3,1 1 Now, we consider the implementation cost of control place p c1. A set of variables f c 1,q (q {1, 2,...,8}) are introduced to represent whether there is a control arc from p c1 to transition t q.for and instance, for transition t 1,wehave l 1,2 Q f1,1 c l 1,2 Q (1 f1,1 c ) + 1. and 125

127 5.3. AN ILLUSTRATIVE EXAMPLE Similarly, we introduce a set of variables f1,q o (q {1, 2,...,8}) to represent whether there is a control arc from t q to transition p c1. For transition t 1,wehave l 1,2 Q f1,1 o ) l 1,2 Q (1 f1,1 o ) + 1. and space. For control place p c1, we do not provide the conditions for other transitions due to the limit Similarly, for the other two FBMs in M FBM, we accordingly have conditions (which is neither provided due to the limit space). Finally, for Case 1), an objective function is designed to minimize the implementation cost of the final supervisor, as presented below : ( min C = C pc h j + C c tq f j,q c + ) Co t q f j,q o j=1 where C c t q and C o t q are the control cost and observation cost of t q, respectively. j=1 q=1 Combining all the above conditions, we have the following LICOSP1 with 117 constraints and 75 variables, where [N 0 ] is the incidence matrix of the net. LICOSP1 : min C = C pc 3 h j + j=1 3 8 j=1 q=1 ( C c tq f j,q c + ) Co t q f j,q o sub ject to l 1,3 + l 1,4 l 1,5 1 l 1,2 + l 1,6 + l 1,7 1 l 2,2 + l 2,4 l 2,5 1 l 2,3 + l 2,6 + l 2,7 1 l 3,3 + l 3,4 l 3,6 1 l 3,2 + l 3,5 + l 3,7 1 l 1,2 + l 1,3 Q (1 f 1,2 ) l 1,5 + l 1,6 Q (1 f 1,3 ) l 2,2 l 2,3 Q (1 f 2,1 ) 126

128 5.3. AN ILLUSTRATIVE EXAMPLE l 2,2 l 2,3 l 2,5 + l 2,6 Q (1 f 2,3 ) l 3,5 l 3,6 Q (1 f 3,1 ) l 3,2 + l 3,3 + l 3,5 l 3,6 Q (1 f 3,2 ) f j,k h j, j, k {1, 2, 3} and j k h j + f k, j 1, j {1, 2, 3} 7 i=2 7 i=2 7 i=2 k {1,2,3}, k j l j,i [N 0 ](i, q) Q f j,q c, j {1, 2, 3}, q {1, 2,...,8} l j,i [N 0 ](i, q) Q (1 f j,q c ) + 1, j {1, 2, 3}, q {1, 2,...,8} l j,i [N 0 ](i, q) Q f j,q o, j {1, 2, 3}, q {1, 2,...,8} 7 i=2 l j,i [N 0 ](i, q) Q (1 f j,q o ) + 1, j {1, 2, 3}, q {1, 2,...,8} l j,i {0, 1, 2, }, i {2, 3,...,7} and j {1, 2, 3} f j,k {0, 1}, j, k {1, 2, 3} and j k h j {0, 1}, j {1, 2, 3} f j,q c, f j,q o {0, 1}, j {1, 2, 3}, q {1, 2,...,8} where Q is a positive integer constant that must be big enough. Next, we consider Case 2). We introduce a set of binary variables g c q (q {1, 2,...,8}) to represent whether there exist control arcs on t q. For example, for transition t 1,wehave f1,1 c + f 2,1 c + f 3,1 c Q gc 1 f1,1 c + f 2,1 c + f 3,1 c gc 1. Similarly, we introduce a set of binary variables g o q (q {1, 2,...,8}) to represent whether and there exist observation arcs on t q. For transition t 1,wehave f1,1 o + f 2,1 o + f 3,1 o Q go 1 f1,1 o + f 2,1 o + f 3,1 o go 1. and Finally, for Case 2), an objective function is designed to minimize the implementation cost of the final supervisor, as presented below : 3 8 ( min C = C pc h j + C c tq g c q + Ct o q gq) o j=1 q=1 127

129 5.3. AN ILLUSTRATIVE EXAMPLE where C c t q and C o t q are the control cost and observation cost of t q, respectively. Adding all the above conditions to LICOSP1, we have the following LICOSP2 with 149 constraints and 91 variables. LICOSP2 : min C = C pc 3 h j + j=1 3 8 j=1 q=1 ( C c tq f j,q c + ) Co t q f j,q o sub ject to All constraints in LICOSP1 3 f j,q c Q gc q, q {1, 2,...,8} j=1 3 f j,q c gc q, q {1, 2,...,8} j=1 3 f j,q o Q go q, q {1, 2,...,8} j=1 3 f j,q o go q, q {1, 2,...,8} j=1 l j,i {0, 1, 2, }, i {2, 3,...,7} and j {1, 2, 3} f j,k {0, 1}, j, k {1, 2, 3} and j k h j {0, 1}, j {1, 2, 3} f j,q c, f j,q o {0, 1}, j {1, 2, 3}, q {1, 2,...,8} g c q, g o q {0, 1}, q {1, 2,...,8} where Q is a positive integer constant that must be big enough. Now, we assign implementation cost C pc for each control place, and control cost Ct c q and observation cost Ct o q for transition t q. By solving LICOSP1 (LICOSP2), once an optimal solution C is obtained, we can find an optimal supervisor with the lowest implementation cost C for Case 1) (Case 2)). Table 5.2 shows the experimental results for Cases 1) and 2) by varying the implementation cost : C pc, Ct c q, and Ct o q, where q {1, 2,...,8}. In this table, control (observation) cost for transitions are organized as a 1 T matrix [C c ]([C o ]), where [C c ](q) = Ct c q ([C o ](q) = Ct o q ), which are shown in the first column. N pc and N arc indicate the number of control places and arcs in the 128

130 5.4. EXPERIMENTAL RESULTS final supervisor, respectively. p c, p c, and M 0 (p c ) show the preset, poset, and initial marking of the control place for each selected PI, respectively. C shows the optimal value of the implementation cost. Tab. 5.2 Experimental results for the net shown in Fig. 5.2 in Cases 1) and 2) C pc [C c ], [C o LICOSP1 LICOSP2 ] N pc N arc p c, p c, M 0 (p c ) C N pc N arc p c, p c, M 0 (p c ) C 100 [1,1,1,1,1,1,1,1], [1,1,1,1,1,1,1,1] 2 8 {t 3, 2t 6 }, {t 1, 2t 5 }, 2 {t 2, t 7 }, {t 1, t 6 }, {t 3, 2t 6 }, {t 1, 2t 5 }, 2 {2t 2, t 7 }, {2t 1, t 6 }, [10,1,1,1,1,10,1,1], [1,1,10,1,1,1,10,1] 2 8 {t 4, 2t 6 }, {t 3, 2t 5 }, 2 {3t 2, t 8 }, {3t 1, t 5 }, {t 4, 3t 6 }, {t 1, 3t 5 }, 3 {3t 2, t 8 }, {3t 1, t 5 }, [1,2,2,1,1,2,2,1], [1,2,2,1,1,2,2,1] 2 8 {t 4, 3t 6 }, {t 1, 3t 5 }, 3 {3t 2, t 8 }, {3t 1, t 5 }, {t 4, 3t 6 }, {t 1, 3t 5 }, 3 {3t 2, t 8 }, {3t 1, t 5 }, [10,1,10,1,10,1,10,1], [1,10,1,10,1,10,1,10] 2 8 {2t 3, t 7 }, {2t 2, t 5 }, 2 {2t 2, t 7 }, {2t 1, t 5 }, {t 3, 2t 6 }, {t 1, 2t 5 }, 2 {t 3, 2t 7 }, {t 1, 2t 6 }, Table 5.2 reaches the following conclusions. 1) In the first row, implementation cost of each arc is set to be 1, which is much less than that of a control place. In Case 1), the resulting supervisor is first optimized in the number of control places and second optimized in the number of arcs. 2) For the second row, we increase the control cost of transitions t 1 and t 6, and the observation cost of transitions t 3 and t 7. Then, the final supervisor has only one control arc to t 1 and no observation arc from t 3 and t 7. Thus, it can be seen that the obtained supervisor tries to have as less control arcs to transitions with high control cost and less observation arcs from transitions with high observation cost as possible. This can reduce the total implementation cost of the resulting supervisor in order to find an optimal supervisor with lowest implementation cost. 3) For the third and fourth rows, we greatly reduce the implementation cost of a control place. However, both final supervisors have two control places and eight arcs, which are the same as the first two ones. The reason is that, for this example, both the numbers of control places and arcs are minimal already. 5.4 Experimental Results In this section, a Petri net model of an FMS is used to illustrate the proposed method, as shown in Fig This is a well-known example that is studied in several papers ([6], [7], [59], and [83]). 129

131 5.4. EXPERIMENTAL RESULTS There are 19 places and 14 transitions. The places have the following set partition : P 0 = {p 1, p 8 }, P R = {p 14 p 19 }, and P A = {p 2 p 7, p 9 p 13 }. It has 282 reachable markings, 54 and 205 of which are FBMs and legal ones, respectively. By using a vector covering approach, M FBM and M L have eight and 26 markings, respectively. For this example, LICOSP1 (LICOSP2) has 776 (832) constraints and 376 (404) variables. t 14 t 1 p 13 p 2 t 13 t 2 t3 p 15 p 3 p 4 p 14 p 12 t 12 t 5 t 4 6 p 8 p 11 p p p t 11 t 6 p 17 p 16 p 10 p 6 t 10 p 9 p 19 t 7 p 7 t 9 t 8 Fig. 5.3 A Petri net model of an FMS. Tables 5.3 and 5.4 show the experimental results of the proposed method by varying the implementation cost C pc of a control place, control cost Ct c q for each transition, and observation cost Ct c q for each transition in Cases 1) and 2), respectively. In the tables, the last column T LP represents the CPU time (seconds) for solving the corresponding ILPP, which refers to an ILPP tool, LINGO [61], on a Windows XP operating system with Intel CPU Core 2.8 GHz and 4 GB memory. Tab. 5.3 Experimental results for the net shown in Fig. 5.3 in Case 1) C pc [C c ], [C o ] N pc N arc p c, p c, M 0 (p c ) C T LP (S ) 100 [1,2,1,1,2,2,2,1,1,2,2,2,2,1], [1,2,1,1,2,2,2,1,1,2,2,2,2,1] 2 12 {2t 7, 3t 11 }, {t 1, t 2, t 4, 3t 9 }, 9 {t 4, 2t 5, 2t 13 }, {t 1, t 2, 2t 11 }, [10,9,1,6,2,2,2,1,10,2,2,2,2,1], [1,2,1,1,2,2,9,1,1,2,9,2,2,1] 2 13 {t 3, t 4, 2t 5, t 12, 2t 14 }, {2t 1, 3t 11, }, 4 {2t 8, 5t 11 }, {t 1, t 2, t 4, 5t 9 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1], [1,2,1,1,2,2,2,1,1,2,2,2,2,1] 2 12 {t 4, 2t 5, 2t 14 }, {t 1, t 2, 2t 11 }, 3 {2t 8, 5t 11 }, {t 1, t 2, t 4, 5t 9 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1], [1,2,1,1,2,2,2,1,1,2,2,2,2,1] 2 12 {t 4, 2t 5, 2t 14 }, {t 1, t 2, 2t 11 }, 3 {2t 8, 5t 11 }, {t 1, t 2, t 4, 5t 9 }, In Table 5.3, for the first two rows, the cost of a control place is much more expensive than that 130

132 5.4. EXPERIMENTAL RESULTS Tab. 5.4 Experimental results for the net shown in Fig. 5.3 in Case 2) C pc [C c ], [C o ] N pc N arc p c, p c, M 0 (p c ) C T LP (S ) 100 [1,2,1,1,2,2,2,1,1,2,2,2,2,1], [1,2,1,1,2,2,2,1,1,2,2,2,2,1] 2 12 {2t 8, 5t 11 }, {t 1, t 2, t 4, 5t 9 }, 13 {t 4, 2t 5, 2t 14 }, {t 1, t 2, 2t 11 }, [10,11,1,10,2,2,2,1,9,2,2,2,2,1], [1,2,1,10,9,2,2,10,1,2,8,2,2,10] 2 13 {3t 6, t 12, 3t 13 }, {2t 1, t 2, t 4, 4t 11 }, 6 {2t 7, 3t 11 }, {t 1, t 2, t 4, 3t 9 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1], [1,2,1,1,2,2,2,1,1,2,2,2,2,1] 2 12 {t 4, 2t 5, 2t 14 }, {t 1, t 2, 2t 11 }, 3 {2t 8, 5t 11 }, {t 1, t 2, t 4, 5t 9 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1], [1,2,1,1,2,2,2,1,1,2,2,2,2,1] 2 12 {t 4, 2t 5, 2t 14 }, {t 1, t 2, 2t 11 }, 3 {2t 8, 5t 11 }, {t 1, t 2, t 4, 5t 9 }, of each arc. Thus, we can easily obtain an optimal supervisor with a small, in fact the minimal, number of control places. Note that the supervisor in the second row has 13 arcs. It has more arcs than that in the first row since the control cost of t 2 and observation cost of t 7 is increased in the second row. Thus, compared with the first, the second has less control arcs to t 2 and observation arcs to t 7, aiming to achieve the lowest implementation cost purpose. For the last two rows, we only decrease the cost of a supervisor. Then, we obtain the same supervisor with two control places since they are the minimal number of control places. In Table 5.4, compared with the first row, we increase the observation cost of transition t 4, t 5, t 8, t 11, and t 14. Then, we obtain a supervisor that has no observation arc from t 4, t 5, t 8, t 11, and t 14 for the minimal implementation cost purpose. In summary, every row in the two tables shows an optimal supervisor with the lowest implementation cost according to the corresponding cost value in the second column. The example has been widely used in the literature. Table 5.5 shows some classical results for this example. It can be seen that both the proposed method and the work in Chapter 2 can lead to the minimal number of control places. The supervisor obtained by the proposed method has 12 or 13 arcs, that is the smallest number or closed to the minimal number of control places. Note that only the proposed method considers the minimization of the implementation cost. Tab. 5.5 Performance comparison of some deadlock control policies Parameters [83] [59] [69] Chap. 2 Chap. 3 Proposed Method No. monitors No. arcs No. states Next, we consider a complex example, as shown in Fig There are 29 places and 20 transitions. The places have the following set partition : P 0 = {p 1, p 5, p 14 }, P R = {p 20 p 29 }, and 131

133 u _ ` l i x a v d g o r G S D A P w 5.4. EXPERIMENTAL RESULTS P A = {p 2 p 4, p 6 p 13, p 15 p 19 }. It has 6085 reachable markings, 806 and 5278 of which are FBMs and legal ones, respectively. By using a vector covering approach, M FBM and M L have eight and 90 markings, respectively. For this example, LICOSP1 (LICOSP2) has 1480 (1560) constraints and 512 (552) variables. \ ] ^ 8 9 : B C ' ( ( ; < = j k { } p q / 0 E F ) * y z e f H I Y Z [, -. J K L ~ s t 3 4 m n! " Q R M N O b c h h T U # $ V W X % & Fig. 5.4 A Petri net model of an FMS. Tables 5.6 and 5.7 show the experimental results of the proposed method by varying the implementation cost C pc of a control place, control cost Ct c q for each transition, and observation cost Ct c q for each transition in Cases 1) and 2), respectively. In the tables, the last column T LP represents the CPU time (minutes) for solving the corresponding ILPP on a Windows XP operating system with Intel CPU Core 2.8 GHz and 4 GB memory. In Table 5.6, in the first two rows, the cost of a control place is much more expensive than that of each arc. Thus, we obtain an optimal supervisor with the minimal number of control places. The supervisor in the second row has 19 arcs, which has two more arcs than that in the first row. Compared with the first row, the control cost of t 15 and the observation costs of t 5, t 8, and t 10 are increased. Thus, the supervisor in the second row has less control arcs to t 15 and no observation arcs from t 5, t 8, and t 10, which can achieve the lowest implementation cost purpose. For the last two rows, only the cost of a control unit is descreased. Then, we obtain the same supervisor with four control places, which are the minimal number of control places. In Table 5.7, compared with the first row, the observation costs of transitions t 10 and t 17 are increased in the second row. Then, 132

134 5.4. EXPERIMENTAL RESULTS Tab. 5.6 Experimental results for the net shown in Fig. 5.4 in Case 1) C pc [C c ], [C o ] N pc N arc p c, p c, M 0 (p c ) C T LP (min) {t 5, t 17 }, {t 3, t 15 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1,1,2,2,1,2,1], [1,2,1,1,2,2,2,1,1,2,1,2,2,1,2,2,1,2,1,2] 4 17 {t 14 }, {t 11 }, 1 {t 10, t 17 }, {t 8, t 15 }, {8t 3, t 6, 8t 8, 8t 19 }, {9t 1, 3t 15, 5t 17 }, 42 {9t 6, 18t 17, t 19 }, {2t 1, 7t 5, 7t 8, 19t 15 }, [1,2,6,1,2,2,2,8,1,2,2,2,2,1,9,2,2,1,2,1], [1,2,1,1,7,2,2,8,1,9,1,2,2,1,2,2,8,2,1,2] 4 19 {2t 4, t 6, 2t 18 }, {3t 3, 2t 15 }, 7 {t 14 }, {t 11 }, {t 3, t 9, 2t 19 }, {t 1, 2t 17 }, 8 {t 5, t 17 }, {t 3, t 15 }, 3 1 [1,2,1,1,2,2,2,1,1,2,2,2,2,1,1,2,2,1,2,1], [1,2,1,1,2,2,2,1,1,2,1,2,2,1,2,2,1,2,1,2] 4 17 {t 14 }, {t 11 }, 1 {t 10, t 17 }, {t 8, t 15 }, {8t 3, t 6, 8t 8, 8t 19 }, {9t 1, 3t 15, 5t 17 }, 42 {t 5, t 15 }, {t 3, t 17 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1,1,2,2,1,2,1], [1,2,1,1,2,2,2,1,1,2,1,2,2,1,2,2,1,2,1,2] 4 17 {t 14 }, {t 11 }, 1 {t 10, t 17 }, {t 8, t 15 }, {8t 3, t 6, 8t 8, 8t 19 }, {9t 1, 3t 15, 5t 17 }, 42 Tab. 5.7 Experimental results for the net shown in Fig. 5.4 in Case 2) C pc [C c ], [C o ] N pc N arc p c, p c, M 0 (p c ) C T LP (min) {t 5, t 17 }, {t 3, t 15 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1,1,2,2,1,2,1], [1,2,1,1,2,2,2,1,1,2,1,2,2,1,2,2,1,2,1,2] 4 18 {t 14 }, {t 11 }, 1 {6t 3, t 5, 6t 8, t 10, 6t 19 }, {7t 1, 2t 15, 4t 17 }, {t 10, t 17 }, {t 8, t 15 }, 3 {8t 3, t 6, 8t 8, 8t 19 }, {9t 1, 3t 15, 5t 17 }, [1,2,8,1,2,2,2,7,1,2,2,2,2,1,1,2,9,1,2,1], [1,2,1,1,2,2,2,1,1,6,1,2,2,1,2,2,8,2,1,2] 4 19 {2t 5, t 18 }, {2t 3, t 15 }, 5 {t 14 }, {t 11 }, {t 6, 2t 9, 2t 18 }, {t 5, 3t 8, 2t 15 }, 7 {t 5, t 17 }, {t 3, t 15 }, 3 1 [1,2,1,1,2,2,2,1,1,2,2,2,2,1,1,2,2,1,2,1], [1,2,1,1,2,2,2,1,1,2,1,2,2,1,2,2,1,2,1,2] 4 18 {t 14 }, {t 11 }, 1 {6t 3, t 5, 6t 8, t 10, 6t 19 }, {7t 1, 2t 15, 4t 17 }, {t 10, t 17 }, {t 8, t 15 }, 3 {t 14 }, {t 11 }, [1,2,1,1,2,2,2,1,1,2,2,2,2,1,1,2,2,1,2,1], [1,2,1,1,2,2,2,1,1,2,1,2,2,1,2,2,1,2,1,2] 4 19 {t 3, t 8, t 19 }, {t 1, t 17 }, 4 {t 10, t 17 }, {t 8, t 15 }, {8t 5, t 8, t 10, 8t 17, t 19 }, {2t 1, 6t 3, 9t 15 },

135 5.5. CONCLUSIONS we obtain a supervisor that has no observation arc from t 10 and t 17 for the minimal implementation cost purpose. Every supervisor in the two tables shows an optimal supervisor with the lowest implementation cost according to the corresponding cost value in the second column. 5.5 Conclusions This chapter aims to design an optimal Petri net supervisor with the lowest implementation cost for an FMS. From the viewpoint of implementation cost, a supervisor contains two parts : control places and arcs. For all arcs in a supervisor, we classify them into two parts : control arcs and observation arcs. Then, by assigning a control cost and an observation cost for each transition, and an implementation cost for a control place, the implementation cost of a supervisor can be evaluated. Two ILPPs are developed to minimize the implementation cost of the supervisor for two cases. However, there is a problem in the proposed method, i.e., computational complexity. First, it is based on reachability graph analysis of a Petri net model, which suffers from state explosion problem. Second, the proposed ILPPs, namely LICOSP1 and LICOSP2, have too many constraints and variables for large-scale Petri net models, which makes them inapplicable to complex systems. Our future work will focus on the two issues. 134

136 Deuxième partie Nonpure Optimal Supervisors 135

137

138 Chapitre 6 Maximally Permissive Supervisors with Self-loops This chapter illustrates that Petri nets with self-loops are more powerful than pure nets in modeling and control of FMSs. A self-loop in a Petri net cannot be mathematically represented by its incidence matrix. This chapter presents a mathematical method to design a maximally permissive Petri net supervisor that is expressed by a set of control places with self-loops. A control place with a self-loop can be represented by a constraint and a self-loop associated with a transition whose firing may lead to an illegal marking. The constraint is designed to ensure that all legal markings are reachable and the self-loop is used to prevent the system from reaching illegal markings by disabling the transition at a specific marking. A marking reduction approach is developed in order to cut down the considered markings, which can greatly decrease the computational overhead of the proposed method. An integer linear programming model is developed to compress the number of control places, aiming to reduce the structural complexity of the resulting supervisors. Finally, illustrative examples are used to validate the proposed method and to demonstrate that it can obtain an optimal supervisor for some cases that cannot be optimally controlled by pure net supervisors. 6.1 Introduction All the methods presented in the previous chapters are in the framework of pure, i.e., self-loopfree, Petri nets. A self-loop in a Petri net means that there exist two arcs (p, t) and (t, p) connecting a place p and a transition t. Numerous important research work on self-loops is reviewed as follows. In [64], self-loops are considered for the reduction of Petri net structures. In [78], Tarek and Lopez- 137

139 6.1. INTRODUCTION Benitez propose a method to find a legal firing sequence of a Petri net, which is applicable to Petri nets with self-loops. In [17], Das et al. develop a reflexive incidence matrix to represent selfloops in a Petri net. In [87], Wang et al. use self-loops to do system synthesis based on Petri net models. In [85], self-loops are used to reduce the structure of Petri net models for FMSs, aiming to improve the efficiency of their deadlock prevention policy. Also, in [92], Wu and Zhou propose a resource-oriented Petri net (ROPN) model to avoid deadlocks in FMSs, where self-loops are also used in the model. In ROPN model, self-loops are allowed and used to model the materials handling process [93]. In this chapter, self-loops are mainly used to improve the control power of the Petri net supervisors. Experimental results show that Petri net supervisors with self-loops can optimally control the proposed net models that cannot be optimally controlled by a pure net supervisor. Though self-loops have been widely studied in the literature, no enough work can be found to apply them to design Petri net supervisors. Generally, a self-loop cannot be mathematically represented by the incidence matrix of a Petri net. It can be represented by two matrices : input and output incidence matrices. This makes it hard to design a control place by a PI-based method [100]. However, Petri nets with self-loops are more powerful in the sense of modeling and control of a system than pure nets. For instance, Fig. 6.1(a) shows a Petri net model that cannot be optimally controlled by a pure net supervisor. This fact can be verified by the theory of regions [31], [83] as follows : The net has 15 reachable states, 11 of which are legal. Its reachability graph is shown in Fig. 6.2(a). There are four MTSIs : (M 1, t 4 ), (M 2, t 1 ), (M 3, t 4 ), (M 6, t 1 ). None of them has an optimal monitor solution by the methods presented in [31] and [83]. Therefore, the methods proposed in [6], [31], and [83] cannot provide an optimal pure net supervisor for this example. This means that the Petri net model does not have an optimal pure Petri net supervisor expressed by a set of control places. However, there indeed exists an optimal net supervisor with self-loops, which can lead to a live controlled system with all the 11 legal markings, as shown in Fig. 6.1(b). In this figure, p c1 is used to forbid the firing of t 4 at M 1 and M 3 and all the 11 legal markings are reachable. Similarly, it is obvious that p c2 can forbid the firing of t 1 at M 2 and M 6 but no legal marking is forbidden. Thus, the final controlled system is live with all legal markings, i.e., it is maximally permissive. The reachability graph of the controlled system is shown in Fig. 6.2(b). In the light of the above statements, this chapter aims to design an optimal Petri net supervisor 138

140 6.1. INTRODUCTION (a) (b) Fig. 6.1 (a) A Petri net without an optimal pure net supervisor and (b) an optimal supervisor with self-loops. t 3 M 0 t 1 t 4 t 6 t 2 M 1 M 4 t 1 t4 t 1 M 2 t 5 M 7 t 1 M 8 t 1 t 3 t 2 t 3 M 12 M 3 t 4 M 5 t 1 t 4 M 9 M 10 t 4 t 1 M 13 t 4 t 6 t 4 t 1 M 6 t 5 t 6 t 4 M 14 M 11 t 1 t 3 M 0 t 1 t 4 t 2 M 1 M 2 t 5 M 4 M 7 t 1 t t 4 3 t 6 t 4 t 2 M 3 M 6 t 5 t 6 good marking dangerous marking M 8 t 3 t 6 t 4 M 11 bad marking dead marking t 1 M 12 M 14 (a) (b) Fig. 6.2 (a) The reachability graph of the net in Fig. 6.1(a) and (b) the reachability graph of the controlled net in Fig. 6.1(b). 139

141 6.2. COMPUTATION OF OPTIMAL CONTROL PLACES WITH SELF-LOOPS where self-loops are admissible. The existence of self-loops implies that the controlled net system is non-pure and cannot be expressed by the incidence matrix. A control place with a self-loop can be divided into two parts : apiandaself-loop associated with a transition. The goal is to optimally implement an MTSI by disabling the firing of the transition of an MTSI at the corresponding marking and make all legal markings reachable. Meanwhile, we propose a marking reduction approach to lessen the number of considered markings, aiming to reduce the computational overhead of the proposed method. Finally, we propose an ILPP to design a control place to implement as many MTSIs as possible, which makes the obtained supervisor structurally simple. In summary, this study makes the following contributions : 1) A mathematical approach is proposed to design optimal control places with self-loops. The computed control places can disable transitions at specific markings and make all legal markings reachable. 2) The reduction of considered markings is proposed. It can cut down the number of constraints and variables in the proposed ILPP. Thus, the computational burden is compressed. Meanwhile, we also propose a method to reduce the number of considered MTSIs, which can greatly reduce the number of iterations of the proposed deadlock control policy and the number of control places in the resulting supervisor. 3) We formulate an ILPP to design a control place with a self-loop and its objective function can maximize the number of MTSIs that are implemented by the control place. As a result, the computed supervisor may have less control places. At the best case, we can obtain an optimal supervisor whose control places are bounded by the number of the transitions in a plant net. 4) A deadlock prevention policy is proposed, which is applicable to all FMS-oriented classes of Petri net models in the literature, such as PPN [3], [34], [97], S 3 PR [18], ES 3 PR [80], S 4 PR [81], S PR [19], S 2 LSPR [65], S 3 PGR 2 [66], and S 3 PMR [38]. 6.2 Computation of Optimal Control Places with Self-loops This section proposes a mathematical method to obtain an optimal control place with selfloops. Eq.(1.12) is a constraint that only limits the tokens in places. In order to optimally implement an MTSI (M, t), we need to disable the transition t at the marking M. In this case, we extend 140

142 6.2. COMPUTATION OF OPTIMAL CONTROL PLACES WITH SELF-LOOPS the constraint of Eq.(1.12) to include the firing of a transition. Suppose that the control goal is to enforce a plant to satisfy the constraints containing both markings and enabled function, as presented below : n l i μ i + w q t β (6.1) i=1 where w is a positive integer and q t {0, 1} represents whether transition t T is enabled. Specially, q t = 1 indicates that t is enabled and q t = 0 means that t is not enabled. Eq.(6.1) is more general than Eq.(1.12). Next, we design a control place to implement this constraint. First, Eq.(6.1) is divided into two parts : 1) n i=1 l i μ i cannot be greater than β and 2) once n i=1 l i μ i is bigger than β w, t is disabled. For case 1), we have n l i μ i β (6.2) i=1 The above constraint is the same as Eq.(1.12). Therefore, it can be implemented by introducing a slack variable μ s to form a PI, as shown in Eq.(1.13). For case 2), according to Eq.(1.13), n i=1 l i μ i >β wmeans that μ s < w. That is to say, if μ s < w, t should be disabled. In this case, we introduce a self-loop between p s and t, as shown in Fig. 6.3, where w is set to be the weight of the arcs in the self-loop. It can be verified that once t is enabled and fires, it does not change the tokens in p s. Hence, the addition of the self-loop is used to control the firing of t only and does not influence the PI defined by Eq.(1.13). Fig. 6.3 A control place p s with a self-loop associated with transition t. Next, we develop a technique to design a control place with a self-loop, which can optimally implement an MTSI. Let G(N, M 0 ) be the reachability graph of an FMS s Petri net model, [N] the incidence matrix of N, M L the set of legal markings, and Ω the set of MTSIs. An optimal supervisor can be obtained by designing control places such that (M, t) Ω, t is disabled at M and no legal marking is forbidden. Let p s be the control place to implement (M, t), where p s is 141

143 6.2. COMPUTATION OF OPTIMAL CONTROL PLACES WITH SELF-LOOPS associated with a PI as defined in Eq.(1.13) and there is a self-loop between p s and t with its arc weight w as shown in Fig.6.3. In fact, according to Eq.(1.16), the PI defined by Eq.(6.2) may add a new arc to transition t if n i=1 l i [N](p i, t) 0, as shown in Fig In this case, the new arc may influence the firing condition of t. In the following, we design p s by considering the two cases : 1) n i=1 l i [N](p i, t) = 0 and 2) n i=1 l i [N](p i, t) 0. Fig. 6.4 A self-loop associated with transition t and an arc generated by a PI. First, we consider Case 1) : n i=1 l i [N](p i, t) = 0. In this case, the PI defined by Eq.(6.2) does not add a new arc to t. In order to make all legal markings reachable, the addition of p s should not forbid any legal marking. Hence, we have n l i M l (p i ) β, M l M L (6.3) i=1 Eq.(6.3) is called the reachability condition. For (M, t), transition t should be disabled by p s at marking M. Thus, we have M(p s ) < w. Since M(p s ) and β are integers, M(p s ) < w can be written as M(p s ) w 1. According to Eq.(1.13), we have M(p s ) = β n i=1 l i M(p i ). Thus, (M, t) can be implemented by p s if n l i M(p i ) β w + 1 (6.4) i=1 Eq.(6.4) is called the disabled condition. For transition t, not all dangerous markings can reach illegal markings by firing t. Thus, legal markings (including dangerous and good markings) can be classified into two parts, as shown in the following definition. Definition 6.1 Let M be a legal marking and t a transition. M is called a t-good marking if t is not enabled at M, or M with M[t M is a legal marking. M is called a t-dangerous marking if M 142

144 6.2. COMPUTATION OF OPTIMAL CONTROL PLACES WITH SELF-LOOPS with M[t M is an illegal marking. The sets of t-good and t-dangerous markings are denoted by G t and D t, respectively. In fact, t may be enabled at some t-good markings. For an optimal deadlock control purpose, p s should not disable t at any t-good marking. In this case, for transition t, all good markings are classified into two sets : t-enabled markings and t-disabled markings, as defined below. Definition 6.2 Let t be a transition and M a t-good marking. M is called a t-enabled good marking if M[t. Otherwise, M is called a t-disabled good marking. The sets of t-enabled and t-disabled good markings are denoted by E t and E t, respectively. Property 6.1 G t = E t E t and M L = G t D t. For every marking M k in E t, p s should not disable transition t. Thus, we have n l i M k (p i ) β w, M k E t (6.5) i=1 Eq.(6.5) is called the enabled condition. Eqs.(6.3), (6.4), and (6.5) can be combined into an integer linear program to determine l i s (i = 1, 2,...,n), β, and w. Then, p s can be computed by Eq.(1.13) with an additional self-loop associated with t. Second, we consider Case 2) : n i=1 l i [N](p i, t) 0. In this case, the PI defined by Eq.(6.2) adds a new arc to t. There are two subcases for the addition of the new arc : 2.1) W(p s, t) = w + n i=1 l i [N](p i, t) and 2.2) W(t, p s ) = w n i=1 l i [N](p i, t), as shown in Figs. 6.5 and 6.6, respectively. Fig. 6.5 A self-loop and an additional arc with W(p s, t) = w + n i=1 l i [N](p i, t). The new arc does not influence the reachability condition Eq.(6.3). However, it may influence the disabled condition Eq.(6.4) and enabled condition Eq.(6.5). We first consider Case 2.1) : 143

145 6.2. COMPUTATION OF OPTIMAL CONTROL PLACES WITH SELF-LOOPS Fig. 6.6 A self-loop and an additional arc with W(t, p s ) = w n i=1 l i [N](p i, t). W(p s, t) = w + n i=1 l i [N](p i, t). Since the disabled and enabled conditions of t are related to W(p s, t), Eqs.(6.4) and (6.5) are modified, respectively, as follows : n l i M(p i ) β (w + i=1 n l i [N](p i, t)) + 1 (6.6) i=1 n n l i M k (p i ) β (w + l i [N](p i, t)), M k E t (6.7) i=1 i=1 Simplifying the above conditions, we have n l i (M(p i ) + [N](p i, t)) β w + 1 (6.8) i=1 n l i (M k (p i ) + [N](p i, t)) β w, M k E t (6.9) i=1 Theorem 6.1 Let (M, t) be an MTSI. If l i s (i {1, 2,..., and n}) satisfy Eqs.(6.3) and (6.6), then w + n i=1 l i [N](p i, t) 1. Proof : Since M is a legal marking, according to Eq.(6.3), we have n i=1 l i M(p i ) β. According to Eq.(6.6), we have w + n i=1 l i [N](p i, t) β + 1 n i=1 l i M(p i ) 1. The conclusion holds. Theorem 6.1 indicates that we can use W(p s, t) = w + n i=1 l i [N](p i, t) instead of W(p s, t) = w to design the resulting control place p s. The theorem is important to ensure that we can choose Case 2.1) as a proper style to design p s. Next, we consider Case 2.2) : W(t, p s ) = w n i=1 l i [N](p i, t). In this case, the new arc does not influence W(p s, t). Therefore, we do not need to modify Eqs.(6.4) and (6.5). However, there is a problem in this case since we cannot ensure that w n i=1 l i [N](p i, t) 0. If w n i=1 l i [N](p i, t) < 0, it means that we must modify W(p s, t) asw(p s, t) = w (w n i=1 l i [N](p i, t)) = 144

146 6.3. REDUCTION OF CONSIDERED LEGAL MARKINGS ni=1 l i [N](p i, t). In this case, we have W(p s, t) > w (since w n i=1 l i [N](p i, t) < 0), which makes Eq.(6.5) infeasible. That is to say, it cannot ensure that t is enabled at any marking in E t. Therefore, in this work, Case 2.1) is selected to design an optimal control place with a self-loop. Eqs.(6.4) and (6.5) are the special cases of Eqs.(6.8) and (6.9), respectively. Thus, Eqs.(6.8) and (6.9) are more general. Now, Eqs.(6.3), (6.8), and (6.9) can determine l i s (i = 1, 2,..., and n), β, and w, which are used to compute control place p s. 6.3 Reduction of Considered Legal Markings Similar to Uzam and Zhou s work [85], only the tokens in operation places are considered to construct a PI. Accordingly, we develop a marking reduction technique to reduce the number of considered markings in M L and E t. A technique is also proposed to reduce the number of considered MTSIs. In the following, N A denotes {i p i P A } for an expedient description. For an MTSI (M, t), Eqs.(6.3), (6.8), and (6.9) are modified, respectively, as follows : i N A l i M l (p i ) β, M l M L (6.10) i N A l i (M(p i ) + [N](p i, t)) β w + 1 (6.11) i N A l i (M k (p i ) + [N](p i, t)) β w, M k E t (6.12) Corollary 2.4 indicates that if a PI does not forbid any marking in M L, no legal marking is forbidden. As a result, we only consider markings in M L to guarantee the optimality of the computed control places. Therefore, Eq.(6.10) can be reduced as : i N A l i M l (p i ) β, M l M L (6.13) For an MTSI (M, t), we develop an approach to reduce the considered t-enabled good markings in the following. Theorem 6.2 Let (M, t) be an MTSI, E t the set of t-enabled good markings, and M 1 and M 2 two markings in E t with M 1 A M 2.Ift is enabled at M 2, t is enabled at M

147 6.3. REDUCTION OF CONSIDERED LEGAL MARKINGS Proof : According to Eq.(6.12), if t is enabled at M 2,wehave i N A l i (M 2 (p i )+[N](p i, t)) β w. Since M 1 A M 2, then p P A, M 1 (p) M 2 (p). Thus, we have i N A l i (M 1 (p i ) + [N](p i, t)) i N A l i (M 2 (p i ) + [N](p i, t)), i.e., i N A l i (M 1 (p i ) + [N](p i, t)) i N A l i (M 2 (p i ) + [N](p i, t)) β w. Hence, t is enabled at M 1. Definition 6.3 Let E t be a subset of t-good markings. E t is called a minimal covering set of t-enabled good markings if the following two conditions are satisfied : 1) M E t, M E t s.t. M A M; 2) M E t, M E t s.t. M A M and M M. Corollary 6.1 If a transition t is enabled at every marking in E t, t is enabled at all markings in E t. Proof : It follows immediately from Theorem 6.2. Corollary 6.1 indicates that when we design a control place with a self-loop associated with transition t, only markings in E t are required to be considered. Therefore, the enabled condition Eq.(6.12) can be reduced as follows. l i (M k (p i ) + [N](p i, t)) β w, M k E t (6.14) i N A Definition 6.4 Let t be a critical transition and D t the set of t-dangerous markings. (M, t) is called a t-critical MTSI. The set of t-critical MTSIs is denoted as Ω t. According to Definition 6.4, the set Ω t of t-critical MTSIs can be computed as follows : Ω t = {(M, t) M D t } (6.15) A control place with a self-loop associated with t may implement more than one MTSI in Ω t. Thus, we do not need to compute a control place with a self-loop associated with t for each MTSI in Ω t. Theorem 6.3 Let (M 1, t) and (M 2, t) be two MTSIs in Ω t with M 1 A M 2.If(M 1, t) is implemented by a control place with a self-loop associated with t, then (M 2, t) is implemented by the control place. 146

148 6.3. REDUCTION OF CONSIDERED LEGAL MARKINGS Proof : Since (M 1, t) is implemented by a control place with a self-loop associated with t, according to Eq.(6.11), we have i N A l i (M 1 (p i )+[N](p i, t)) β w+1. Since M 1 A M 2, then p P A, M 2 (p) M 1 (p). Thus, we have i N A l i (M 2 (p i ) + [N](p i, t)) i N A l i (M 1 (p i ) + [N](p i, t)) β w + 1. This means that t is disabled at M 2. That is to say, (M 2, t) is also implemented by the control place. Definition 6.5 Let Ω t be a subset of t-critical MTSIs. Ω t is called a minimal covered set of t- critical MTSIs if the following two conditions are satisfied : 1) (M, t) Ω t, (M, t) Ω t s.t. M A M; 2) (M, t) Ω t, (M, t) Ω t s.t. M A M and M M. Corollary 6.2 If all MTSIs in Ω t are implemented by control places with self-loops associated with t, then all MTSIs in Ω t are implemented by the control places. Proof : It follows immediately from Theorem 6.3. Corollary 6.2 indicates that, for a transition t, only MTSIs in Ω t are required to be considered, which can greatly reduce the computational overhead and the number of resulting control places. A control place with a self-loop associated with a transition t may implement more than one MTSI in Ω t, as defined below. Definition 6.6 Let t be a transition, Ω t the minimal covered set of t-critical MTSIs, and p s a control place with a self-loop associated with t. The set of MTSIs that are implemented by p s is defined as Ω ps = {(M, t) Ω t i N A l i (M(p i ) + [N](p i, t)) β w + 1}. For an MTSI (M, t) inω t, we can use Eqs.(6.13), (6.14), and (6.11) to obtain a solution for variables l i (i N A ), β, and w. Then, we can compute a control place with a self-loop associated with t by Eq.(1.13) to implement (M, t). Once all MTSIs in Ω t are implemented by control places, all t-critical MTSIs are implemented. Repeat the process for each transition that has critical MTSIs, then all MTSI of the Petri net are implemented. As a result, the resulting controlled net system is live and keeps all legal markings. In general, M L, E t, and Ω t are much smaller than M L, E t, and Ω t, respectively. Therefore, the reduction approach can greatly reduce the computational overhead of each control place and the total number of computed control places. 147

149 6.4. REDUCTION OF SUPERVISORY STRUCTURES 6.4 Reduction of Supervisory Structures As presented in the previous section, a control place with a self-loop associated with a transition t may implement more than one MTSI in Ω t. In this section, we propose a method to design a control place with a self-loop associated with t, which can implement as many MTSIs as possible. Thus, the final supervisor may have less control places. Given a transition t and the minimal covered set of its critical MTSIs Ω t, let N t denote { j (M j, t) Ω t }. We introduce a set of variables f j s ( j N t ) to represent whether an MTSI (M j, t) Ω t is implemented by a control place p c with a self-loop associated with t. The disabled condition for (M j, t) is rewritten as : l i (M j (p i ) + [N](p i, t)) Q (1 f j ) + β w + 1, (M j, t) Ω t (6.16) i N A where Q is a positive integer constant that must be big enough and f j {0, 1} ( j N t ). In Eq.(6.16), f j = 1 indicates that (M j, t) is implemented by p c and f j = 0 indicates that (M j, t) is not implemented. For a transition t T c, we have Eqs.(6.13), (6.14), and (6.16). Therefore, the following ILPP is developed to design an optimal control place p c with a self-loop associated with t, which is denoted as the Maximal number of MTSIs Problem (MMP). MMP(t): max f = j N t f j sub ject to i N A l i M l (p i ) β, M l M L (6.17) i N A l i (M k (p i ) + [N](p i, t)) β w, M k E t (6.18) i N A l i (M j (p i ) + [N](p i, t)) Q (1 f j ) + β w + 1, (M j, t) Ω t (6.19) l i {0, 1, 2,...}, i N A β, w {1, 2, 3,...} f j {0, 1}, j N t 148

150 6.4. REDUCTION OF SUPERVISORY STRUCTURES The objective function f is used to maximize the number of MTSIs that are implemented by control place p c. Denote its optimal value by f.if f = 0, we have f j = 0, j N t, implying that no MTSI in Ω t can be implemented by p c. In this case, the proposed method cannot obtain an optimal control place with a self-loop associated with t. If f = Ω t,wehave f j = 1, j N t, implying that only one control place with a self-loop associated with t is required to implemented all MTSIs in Ω t.if f = Ω t for each t in T c, then we can obtain an optimal supervisor such that the number of control places is not greater than T c, as presented below. Theorem 6.4 The number of control places in the obtained supervisor is equal to T c if f = Ω t for each t in T c, where T c T. Proof : If f = Ω t for each t in T c, then only one control place is computed to implement all MTSIs in Ω t. Thus, the total number of the computed control places is equal to T c that is less than or equal to T. The conclusion holds. As known, an ILPP is NP-hard. The computational time for solving an ILPP greatly depends on the number of constraints and variables in it. In this case, we discuss MMP(t) from the viewpoint of the number of constraints and variables. The numbers of constraints in Eqs.(6.17), (6.18), and (6.19) are M L, E t, and Ω t, respectively. Thus, the total number of constraints in MMP(t) is M L + E t + Ω t. Next, we consider the number of variables in it. The number of variables l i s (i N A )is P A. Since j N t, the number of variables f j s is Ω t. Finally, by considering variables β and w, MMP has P A + Ω t + 2 variables in total. The number of the two instances in MMP(t) is summarized in Table 6.1. Tab. 6.1 The numbers of constraints and variables in MPP(t) constraint type constraint number variable name variable number (6.17) M L l i P A (6.18) E t f j Ω t (6.19) Ω t β 1 w 1 total M L + E t + Ω t total P A + Ω t

151 6.5. DEADLOCK PREVENTION POLICY 6.5 Deadlock Prevention Policy This section develops a deadlock prevention policy based on the results proposed in the previous sections, which can obtain an optimal Petri net supervisor with self-loops. A simple example is also provided to illustrate the proposed approach. Algorithm 6.1 Computation of optimal control places with self-loops. Input : Petri net model (N, M 0 ) of an FMS with N = (P 0 P A P R, T, F, W). Output : an optimally controlled Petri net system (N α, M0 α). 1. Compute the set of legal markings M L and the set of MTSIs Ω for (N, M 0 ). 2. Compute the set of critical transitions T c and the minimal covering set of legal markings M L for (N, M 0). 3. V M :=. /* V M is used to denote the set of control places to be computed.*/ 4. foreach t T c do Derive the set G t of t-good markings and the set D t of t-dangerous markings from the set of legal markings. Derive the set E t of t-enabled good markings from G t and the minimal covering set E t of t-enabled good markings. Compute the set Ω t of t-critical MTSIs according to D t and the minimal covered set Ω t of t-critical MTSIs. while {Ω t } do Solve MMP(t). If f = 0, exit, as no control place can be obtained. Let l i (i N A ), β, and w be the solution. Compute control place p c with a self-loop associated with t by the method in Section 6.2. endwhile V M := V M {p c } and Ω t := Ω t Ω pc. 150

152 6.5. DEADLOCK PREVENTION POLICY 5. Add all control places in V M to (N, M 0 ) and denote the resulting net system as (N α, M α 0 ). 6. Output (N α, M α 0 ). 7. End. Algorithm 6.1 computes the reachability graph of a Petri net only once. Markings in M L are considered only to keep all legal markings reachable. For a transition t in T c, only markings in E t are considered to satisfy the enabled conditions. Also, we do not need to consider all MTSIs but only the ones in Ω t. The above reduction techniques can greatly reduce the number of constraints in the ILPPs to compute control places. Now we discuss the computational complexity of Algorithm 6.1. First, it is based on reachability graph analysis of a Petri net model, which suffers from the state explosion problem since the number of reachable markings increases exponentially with respect to the size of a Petri net model. Second, we need to solve ILPPs, which are NP-hard in theory. However, the computational time to solve an ILPP greatly depends on the number of constraints and variables. Thus, we propose a marking reduction technique to reduce the number of constraints in the ILPPs, aiming to reduce the computational burden of the proposed method. In summary, the computational complexity of the proposed method is still NP-hard. Theorem 6.5 Algorithm 6.1 can obtain a maximally permissive net supervisor for a Petri net model of an FMS if there exists a solution that satisfies Eqs.(6.13), (6.14), and (6.11) for each MTSI in Ω t, where t T c. Proof : According to Corollary 2.4, Eq.(6.13) can ensure that each computed control place does not forbid any legal marking. By Corollary 6.1, if a transition t T c is enabled at a good marking, Eq.(6.14) is used to ensure that the additional self-loop does not disable its firing. And, according to Corollary 6.2, if all MTSIs in Ω t are implemented, all MTSIs in Ω t are implemented. Finally, for each t T c, its critical MTSIs are implemented. Then, all MTSIs are implemented. That is to say, the final controlled system is live and all legal markings are kept, i.e., the conclusion holds. Next, the Petri net model of an FMS shown in Fig.6.7 is used to illustrate the proposed approach. The places have the following set partition : P 0 = {p 1, p 8 }, P R = {p 9 p 11 }, and P A = {p 2 p 7 }. The model has 39 reachable markings, 23 of which are legal. Its reachability 151

153 6.5. DEADLOCK PREVENTION POLICY graph is shown in Fig By using a vector covering approach, the minimal covering set of legal markings have two elements. Specifically, we have M L = {2p 5 + p 6 + p 7, 2p 2 + p 3 + p 4 }. The model has 10 MTSIs and two critical transitions t 1 and t 5, i.e., T c = {t 1, t 5 }. In this case, all MTSIs are classified into two sets : Ω t1 = {(M 2, t 1 ), (M 6, t 1 ), (M 7, t 1 ), (M 14, t 1 ), (M 23, t 1 )} and Ω t5 = {(M 1, t 5 ), (M 3, t 5 ), (M 4, t 5 ), (M 8, t 5 ), (M 16, t 5 )}. By using the reduction technique, the two sets are reduced to be Ω t 1 = {(M 2, t 1 ), (M 7, t 1 )} and Ω t 5 = {(M 1, t 5 ), (M 4, t 5 )}. Fort 1, there are seven t 1 -enabled good markings, i.e., E t1 = {M 0, M 1, M 4, M 8, M 10, M 17, M 27, M 33 }. By using the reduction technique, there are only one element in E t 1, i.e., E t 1 = {M 33 }. Similarly, we have E t5 = {M 0, M 2, M 7, M 14, M 15, M 24, M 32, M 36 } and E t 5 = {M 36 }. Specially, we have E t 1 = {M 33 = p 2 + p 3 + p 4 } and E t 5 = {M 36 = p 5 + p 6 + p 7 }. Fig. 6.7 Petri net model of an FMS. First, we design a control place p c1 with a self-loop associated with t 1.Wehave 7 i=2 l i [N](p i, t 1 ) = l 2. No legal marking is forbidden by p c1. Therefore, considering the two legal 2l 2 + l 3 + l 4 β and 2l 5 + l 6 + l 7 β. Control place p c1 should not disable the firing of t 1 at its enabled good marking. Thus, for E t 1, we have 2l 2 + l 3 + l 4 β w. 152

154 6.5. DEADLOCK PREVENTION POLICY Fig. 6.8 The reachability graph of the net in Fig Two binary variables f j s ( j {2, 7}) are introduced to represent whether p c1 implements the two MTSIs (M 2, t 1 ) and (M 7, t 1 ), respectively. Hence, we have l 2 + l 5 Q (1 f 2 ) + β w + 1 l 2 + l 6 Q (1 f 7 ) + β w + 1. and An objective function is to maximize the number of MTSIs that are implemented by p c1,as presented below : max f = f 2 + f 7. By summarizing the above constraints, we have an ILPP, MMP(t 1 ), as follows : MMP(t 1 ): max f = f 2 + f 7 sub ject to 2l 2 + l 3 + l 4 β 2l 5 + l 6 + l 7 β 2l 2 + l 3 + l 4 β w l 2 + l 5 Q (1 f 2 ) + β w

155 6.5. DEADLOCK PREVENTION POLICY l 2 + l 6 Q (1 f 7 ) + β w + 1 l i {0, 1, 2,...}, i {2, 3, 4, 5, 6, 7} β, w {1, 2, 3,...} f 2, f 7 {0, 1} The above ILPP has an optimal solution with l 5 = l 6 = 1, β = w = 3, and f = 2. Then we can design a control place p c1 with a self-loop associated with t 1, where p c1 satisfies constraint : μ 5 + μ 6 3 and 3 is the weight of the self-loop. That is to say, p c1 = {3t 1, t 7 }, p c 1 = {3t 1, t 5 }, and M 0 (p c1 ) = 3. Similarly, we consider a control place p c2 with a self-loop associated with t 5.Wehave 7 i=2 l i [N](p i, t 5 ) = l 5. Then, the ILPP, MMP(t 5 ) is presented below. MMP(t 5 ): max f = f 1 + f 4 sub ject to 2l 2 + l 3 + l 4 β 2l 5 + l 6 + l 7 β 2l 5 + l 6 + l 7 β w l 2 + l 5 Q (1 f 2 ) + β w + 1 l 3 + l 5 Q (1 f 7 ) + β w + 1 l i {0, 1, 2,...}, i {2, 3, 4, 5, 6, 7} β, w {1, 2, 3,...} f 1, f 4 {0, 1} The above ILPP has an optimal solution with l 2 = l 3 = 1, β = w = 3, and f = 2. Then we can design a control place p c2 with a self-loop associated with t 5, where p c2 satisfies constraint : μ 2 + μ 3 3 and 3 is the weight of the self-loop. That is to say, p c2 = {t 3, 3t 5 }, p c 2 = {t 1, 3t 5 }, and M 0 (p c2 ) = 3. Finally, two control places are obtained, which can make the net model live with all 23 legal markings. The final optimally controlled system is shown in Fig

156 6.6. EXPERIMENTAL RESULTS Fig. 6.9 Optimal Petri net supervisor for the net in Fig For this example, the existing work cannot design an optimal Petri net supervisor by the theory of regions [31; 83]. The reason is that the net model has no optimal pure Petri net supervisor. However, the proposed method can provide a non-pure optimal supervisor with self-loops, which has two control places. The final controlled system has all 23 legal markings. Thus, it can be seen that Petri net supervisors with self-loops are more powerful than pure supervisors. 6.6 Experimental Results In this section, two Petri net models of FMSs are used to illustrate the proposed method. In practice, a desktop computer is used based on a Windows operating system with an Intel Core 2.8 GHz CPU and 4 GB memory. We can use INA [77] to generate the reachability graph of a Petri net model and develop software based on C++ program to find the minimal covered set of t-critical MTSIs Ω t, the minimal covering set of legal markings M L, and the minimal covering set of t-enabled good markings E t. Also, a C++ program is developed to generate the ILPP, MMP(t), for each critical transition t and Lingo [61] is used as an ILPP solver to find an optimal solution for MMP(t). Finally, we use INA to verify the liveness and optimality of the controlled system. A Petri net model is shown in Fig It is an S 4 PR from [82]. There are nine places and seven transitions. It has the following place set partition : P 0 = {p 10, p 20 }, P R = {p 31, p 32 }, and 155

157 6.6. EXPERIMENTAL RESULTS P A = {p 11, p 12, p 13, p 21, p 22 }. It has 20 reachable markings, 13 of which are legal ones. By using the vector covering approach, M L has three markings only, i.e., M L = {p 11+p 12, 2p 21 +p 22, 2p 11 + p 13 }. The net has seven MTSIs and three critical transitions t 1, t 2, and t 5. Table 6.2 shows the application of the proposed policy, where t i is a critical transition, N con and N var indicate the number of constraints and variables in MMP(t i ), respectively, E ti, E t i, Ω ti, and Ω t i represent the numbers of markings in E ti, E t i, Ω ti, and Ω t i, respectively, I i is the computed PI, w indicates the weight of the self-loop associated with t i, and p c, p c, and M 0 (p c ) in the eighth to tenth columns show the preset, poset, and initial marking of the computed control place p c, respectively. t 1 t 7 p 10 4 p 11 t 2 p 12 p 31 R1 p p 22 t6 p 21 p 20 4 t 3 p 13 2 R2 t 5 t 4 Fig A Petri net model in Tricas et al. (2005). Tab. 6.2 Experimental results for the net shown in Fig t i N con N var E ti / E t i Ω ti / Ω t i I i w p c p c M 0 (p c ) t /2 2/1 μ t 1, t 6 t 1, t 5 2 t /1 1/1 μ t 3 t 2 1 t /1 4/2 μ 11 + μ t 3, t 5 t 1, t 5 2 Note that in the second row, we obtain an optimal solution with w = 0. This means that for this transition, we do not need to add a self-loop associated with t 2. Finally, there are totally three control places to be added and the resulting net is live with 13 reachable markings that represent the maximally permissive behavior. In fact, the net does not have an optimal pure Petri net supervisor since we cannot obtain a solution by using the theory of regions in [31; 83] or the methods proposed in Chapters 2 and 156

158 6.6. EXPERIMENTAL RESULTS 3. However, applying the proposed method to this net model, we find an optimal supervisor with self-loops. This shows that the proposed method can deal with the example that cannot be dealt with by the work in [31; 83], and Chapters 2 and 3. In [82], Tricas et al. add four control places to this model and the controlled model has 10 reachable markings. However, considering our solution to this problem, we obtain an optimal supervisor with three control places, which is structurally simpler and the controlled system has more permissive behavior. Table 6.3 shows the performance comparison of these two policies for this example. Tab. 6.3 Performance comparison of deadlock control policies for the S 4 PR in Fig Parameters [82] Proposed Method No. monitors 4 3 No. states Next, the Petri net model of another FMS shown in Fig is considered. This is a wellknown example that is studied in several papers (see [59; 69; 70; 83]). There are 19 places and 14 transitions. The places have the following set partition : P 0 = {p 1, p 8 }, P R = {p 14 p 19 }, and P A = {p 2 p 7, p 9 p 13 }. It has 282 reachable markings, 205 of which are legal ones. By using a vector covering approach, M L has only eight markings. The net has 59 MTSIs and five critical transitions t 1, t 2, t 4, t 9, and t 11. Table 6.4 shows the application of the proposed method. For this example, the number of control places is equal to T c since the optimal solution of MM(t) is equal to Ω t for each t in T c (see Theorem 6.4). Finally, five control places are added to the net model, which can lead to all 205 legal markings. Tab. 6.4 Experimental results for the net shown in Fig t i N con N var E ti / E t i Ω ti / Ω t i I i w p c p c t /8 24/3 3μ 3 + 4μ 4 + μ 6 + μ 9 + μ t 1, 4t 4, 3t 5, 4t 1 M 0 (p c ) 10 3μ t 7, t 11, 3t 13, 3t 2, 4t 3, t 6, t 9, 3t 12 t /3 1/1 μ 6 + μ 9 + μ t 2, t 7, t 11 t 2, t 6, t 9 3 t /5 3/2 μ 3 + μ 6 + 2μ 9 + 2μ t 4, t 5, t 7,2t 11 t 2, t 4, t 6,2t 9 5 t /15 9/4 μ 2 + 2μ 3 + μ 4 + 2μ 5 + 2μ t 7, 3t 9, 3t 11 t 1, t 2, t 4, 9 3μ t 9, 3t 10 t /2 22/2 μ 3 + μ t 5, t 11, t 13 t 2, t 11, t 12 1 Table 6.5 shows the performance comparison of some policies for this example. It can be seen that the proposed method can obtain an optimal solution with f = Ω t for each critical 157

159 6.7. CONCLUSIONS t 14 t 1 p 13 p 2 t 13 t 2 t3 p 15 p 3 p 4 p 14 p 12 t 12 t 5 t 4 6 p 8 p 11 p p p t 11 t 6 p 17 p 16 p 10 p 6 t 10 p 9 p 19 t 7 p 7 t 9 t 8 Fig Petri net model of an FMS. transition t. Thus, Theorem 6.4 is true for this example. In this sense, we can conclude that the monitor solution ensures that the number of control places is bounded by T. Note that the obtained supervisor is only greater than the minimal structure proposed in Chapter 3. However, the work in Chapter 3 can lead to an optimal supervisor with the minimal number of control places but cannot claim that the number of the obtained control places is bounded by T. Tab. 6.5 Performance comparison of some deadlock control policies Parameters [83] [59] [69] Chapter 2 Chapter 3 Proposed Method No. monitors No. states Conclusions This paper aims to design optimal Petri net supervisors for FMSs. For an MTSI, it designs an optimal control place to separate bad markings from the reachability graph by disabling the transition in the MTSI at the corresponding marking. Compared with the work in [31; 83] and Chapters 2 and 3, the advantage of the proposed method is that the obtained supervisor can have self-loops. In this case, the supervisors with self-loops have more control ability than pure Petri nets. Also, experimental results show that the proposed method can find optimal Petri net supervisor for some 158

160 6.7. CONCLUSIONS net models that cannot be optimally controlled by pure Petri net supervisors. However, there is a problem in the proposed method, i.e., computational complexity. First, it is based on reachability graph analysis of a Petri net model, which suffers from the state explosion problem. For this issue, we can use the Binary Decision Diagrams (BDDs) based method proposed in [6] to overcome the state explosion problem. Second, it is necessary to solve ILPPs that are NP-hard in theory. In this case, we propose a marking reduction technique to reduce the number of constraints in the ILPPs, aiming to reduce the computational burden of the proposed method. Whatever, the computational complexity of the proposed method is still NP-hard. In the future, we will focus on avoiding the full enumeration of reachable markings. Another problem of the proposed method is that the computed supervisors do not admit the minimal structure in the sense of the number of control places. This is also a future topic. 159

161 6.7. CONCLUSIONS 160

162 Chapitre 7 Optimal Supervisory Control by a Set Classification Approach Supervisory control is usually considered as an external control mechanism to a system by controlling the occurrences of its controllable events. There exist Petri net models whose legal reachability spaces are non-convex. In this case, they cannot be optimally controlled by the conjunctions of linear constraints. For Petri net models of flexible manufacturing systems, this chapter presents a method to classify the legal markings into several subsets. Each subset is associated with a linear constraint that can forbid all first-met bad markings. Then, the disjunctions of the obtained constraints can make all legal markings reachable and forbid all first-met bad markings, i.e., the controlled net is live and maximally permissive. An ILPP is formulated to minimize the number of the constraints. A supervisory structure is also proposed to implement the disjunctions of the constraints. Finally, examples are provided to illustrate the proposed method. 7.1 Introduction A supervisor consists of a set of control places, which always enforces the conjunctions of constraints to a system to be controlled. Hence, one cannot find an optimal supervisor if the legal state space of a Petri net model is non-convex. For instance, Fig. 7.1(a) shows a Petri net model that cannot be optimally controlled by a set of conjunctive constraints. This fact can be verified by the theory of regions [31; 83] as follows. The net model has 15 reachable states, 11 of which are legal. Its reachability graph is shown in Fig. 7.1(b). There are four MTSIs : (M 1, t 4 ), (M 2, t 1 ), (M 3, t 4 ), and (M 6, t 1 ). None of them has an optimal monitor solution by the methods in [31; 83]. Therefore, 161

163 7.1. INTRODUCTION all the methods proposed in [6; 31; 83] cannot provide an optimal pure net supervisor for this example. Note that a pure Petri net means that it has no self-loops. That is to say, the Petri net model does not have an optimal pure Petri net supervisor expressed by a set of control places. The reason is that its legal state space is non-convex, as shown in Fig. 7.2(a). M 0 M 4 t 1 M 8 t 1 t 3 t 1 t M 4 t 6 1 M 2 t 2 t t 4 t 5 1 t M M t t 4 3 t 6 M 3 M t 4 6 t t 1 t 2 4 t t 5 4 t 1 M 11 t M 9 3 M10 t 6 t 4 t 1 t 4 M 12 M 13 M 14 deadlock-zone M 0 =3p 1 +3p 6 +2p 7 +2p 8 M 1 =2p 1 +p 2 +3p 6 +p 7 +2p 8 M 2 =3p 1 +p 4 +2p 6 +2p 7 +p 8 M 3 =p 1 +2p 2 +3p 6 +2p 8 M 4 =2p 1 +p 3 +3p 6 +2p 7 M 5 =2p 1 +p 2 +p 4 +2p 6 +p 7 +p 8 M 6 =3p 1 +2p 4 +p 6 +2p 7 M 7 =3p 1 +p 5 +2p 6 +2p 8 M 8 =p 1 +p 2 +p 3 +3p 6 +p 7 M 9 =p 1 +2p 2 +p 4 +2p 6 +p 8 M 10 =2p 1 +p 2 +2p 4 +p 6 +p 7 M 11 =3p 1 +p 4 +p 5 +p 6 +p 8 M 12 =2p 2 +p 3 +3p 6 M 13 =p 1 +2p 2 +2p 4 +p 6 M 14 =3p 1 +2p 4 +p 5 legal marking first-met bad marking dead marking (a) (b) Fig. 7.1 (a) A Petri net without an optimal pure net supervisor and (b) its reachability graph. It can be seen that there are two legal markings M 3 = 2p 2 and M 6 = 2p 4 and an FBM M 5 = p 2 + p 4. Since the legal space is non-convex, we cannot make the two legal markings reachable and the FBM unreachable by linear constraints. However, the legal space can be classified into two subsets : M L1 and M L2 as shown in Fig. 7.2(b), which are associated with the linear constraints : μ 2 = 0 and μ 4 = 0, respectively, where μ 2 (μ 4 ) denotes the marking of p 2 (p 4 ). Since every legal marking satisfies μ 2 = 0orμ 4 = 0, and each constraint can forbid all FBMs. Thus, the optimal control purpose can be enforced by the disjunctions of the two constraints. Fig. 7.2(c) shows an optimal supervisor to implement the disjunctions of the constraints, which can make the net live with all legal markings. In [40], Iordache and Antsaklis provide a structural solution for labeled Petri nets to enforce disjunctive constraints, where the supervisor includes not only the added control places but also some added transitions. In [41], they extend the results by considering the firing vector. However, the supervisor proposed in [40; 41] contains arcs connecting the added transitions to the places in the original net. In this case, the supervisor may change the states of the net model. A supervisor is always used to decide to disable or enable a transition at every marking. Thus, traditionally, the 162

164 7.1. INTRODUCTION M(p 4 ) 2 1 M(p 2 ) legal marking illegal marking (a) M(p 4 ) 2 1 L1 L2 M(p 2 ) legal marking illegal marking (b) t1 t6 p7 2 p2 p5 2 p1 3 t2 t5 p6 3 2 p8 p3 p4 2 ps1 t3 ps2 t tf1 pf1 t f1 t f2 pf2 tf2 pf (c) Fig. 7.2 (a) the non-convex legal space, (b) its set classification, and (c) an optimally controlled system. supervisor should control the transitions of a Petri net but not change its states. According to the above remarks, this chapter aims to optimally design a Petri net supervisor for an FMS. If the legal state space is non-convex, we cannot restrict the model running in the legal space by the enforcement of conjunctive constraints. In this case, we classify the set of legal markings into several subsets. Each subset can be implemented by a linear constraint while all FBMs are forbidden by it. Then, the optimal control purposes can be implemented by the disjunctions of the constraints. An ILPP is also proposed to classify the set of legal markings into as few subsets as possible, aiming to obtain the minimal number of constraints. Hence, the supervisory structure can be kept simple. In summary, this chapter presents the following contributions : 1) For a Petri net model of an FMS, an optimal control mechanism is proposed by considering the classification of legal markings. We first divide the set of legal markings into multi-subsets. Then, a linear constraint is designed for each subset, where all markings in the subset satisfy the constraint but each FBM does not. Then, the system is optimally controlled by the disjunctions of the constraints for all subsets of legal markings. Experimental results show that it can optimally control the Petri net models whose legal spaces are non-convex. 2) An ILPP is formulated to obtain a set of constraints, where each constraint can forbid all FBMs and every legal marking satisfies at least one constraint. That is to say, the disjunctions of all obtained constraints can make all the legal markings reachable and all FBMs unreachable. 163

165 7.2. OPTIMAL CONTROL BY CLASSIFYING LEGAL MARKINGS The objective function is to minimize the number of constraints. Meanwhile, a vector covering approach is applied to reduce the number of considered markings, aiming to lessen the computational overhead of the proposed method. 3) A Petri net supervisory structure is proposed for the disjunctions of linear constraints. Added transitions are included in the supervisor but there is no arc between the added transitions and the places in the original net. This means that the supervisor only controls the transitions in the original net but does not change its states. A modified ILPP is proposed to obtain a set of constraints whose disjunctions can be implemented by the proposed supervisory structure. 4) The proposed method is general since it is applicable to all FMS-oriented classes of Petri net models in the literature, which include PPN [3; 34; 97], S 3 PR [18], ES 3 PR [80], S 4 PR [81], S PR [19], S 2 LSPR [65], S 3 PGR 2 [66], and S 3 PMR [38]. 7.2 Optimal Control by Classifying Legal Markings This section proposes a technique to optimally control an FMS by classifying M L into a number of subsets where each subset is associated with a linear constraint. Then, the optimal control purpose can be achieved by the disjunctions of these constraints. Suppose that the control goal is to enforce the disjunctions of the linear constraints, as presented below : n c n l j,i μ i β j (7.1) j=1 i=1 where n c is the number of constraints and l j,i s and β j s are non-negative integers. Eq.(7.1) indicates that at least one of the constraints must be satisfied. Let (L j,β j ) denote the jth constraint : L j μ p β j, where L j is a 1 n vector with L j (i) = l j,i, i {1, 2,...,n}. Definition 7.1 Let R(N, M 0 ) be the set of reachable markings of a net (N, M 0 ) and (L j,β j ) a linear constraint. The set of reachable markings under constraint (L j,β j ) is defined as R(L j,β j, M 0 ) = {M R(N, M 0 ) L j M β j }. Theorem 7.1 All markings in n c j=1 R(L j,β j, M 0 ) are reachable if Eq.(7.1) is enforced. Proof : The proof is trivial. 164

166 7.2. OPTIMAL CONTROL BY CLASSIFYING LEGAL MARKINGS Definition 7.2 Let R(N, M 0 ) be the set of reachable markings of a net (N, M 0 ) and (L j,β j ) a linear constraint. The set of forbidding markings under constraint (L j,β j ) is defined as F(L j,β j, M 0 ) = {M R(N, M 0 ) L j M >β j }. Theorem 7.2 All markings in n c j=1 F(L j,β j, M 0 ) are forbidden if Eq.(7.1) is enforced. Proof : The proof is trivial. Take the net in Fig. 7.1(a) as an example to demonstrate the above statements. Suppose that there are two constraints (L 1,β 1 ):μ 2 = 0 and (L 2,β 2 ):μ 4 = 0. According to Definition 7.1, we have R(L 1,β 1, M 0 ) = {M 0, M 2, M 6, M 7, M 11, M 14 } and R(L 2,β 2, M 0 ) = {M 0, M 1, M 3, M 4, M 8, M 12 }. By Definition 7.2, we have F(L 1,β 1, M 0 ) = {M 1, M 3, M 5, M 8, M 9, M 10, M 12, M 13 } and F(L 2,β 2, M 0 ) = {M 2, M 5, M 6, M 9, M 10, M 11, M 13, M 14 }. Since M L = R(L 1,β 1, M 0 ) R(L 2,β 2, M 0 ) and M FBM = F(L 1,β 1, M 0 ) F(L 2,β 2, M 0 ), by Theorems 7.1 and 7.2, the disjunctions of (L 1,β 1 ) and (L 2,β 2 ) can make all legal markings reachable and all FBMs unreachable. Hence, by combining the two theorems, we have the following result on the optimal control of a net. Theorem 7.3 Let M L and M FBM be the sets of legal markings and FBMs of a net (N, M 0 ), respectively, and (L j,β j ) s ( j = 1, 2,...,n c ) linear constraints. Eq.(7.1) can enforce optimal liveness-enforcing control if the following conditions are satisfied : 1) M L = n c j=1 R(L j,β j, M 0 ) ; and 2) M FBM = n c j=1 F(L j,β j, M 0 ). Proof : By Theorem 7.1 and Condition 1), Eq.(7.1) can ensure that all legal markings are reachable, i.e., it is maximally permissive. Similarly, according to Theorem 7.2, Condition 2) can ensure that all FBMs are forbidden by Eq.(7.1), i.e., the controlled net is live. Hence, Eq.(7.1) can enforce an optimal liveness-enforcing control purpose if Conditions 1) and 2) are satisfied. According to Condition 1) in Theorem 7.3, a marking is reachable if it satisfies at least one of the constraints. For the optimal control purposes, any legal marking M l must be reachable. Therefore, we have n l j,i M l (p i ) β j, M l M L, j {1, 2,...,n c } (7.2) i=1 165

167 7.3. REDUCTION OF CONSIDERED MARKINGS Eq.(7.2) is called the optimal control condition. By Condition 2) in Theorem 7.3, a marking is forbidden if it is forbidden by every constraint. For the liveness control purposes, all FBMs must be forbidden. Therefore, we have n l j,i M k (p i ) β j + 1, M k M FBM, j {1, 2,...,n c } (7.3) i=1 Eq.(7.3) is called the liveness control condition. According to Theorem 7.3, if a set of constraints (L j,β j ) s ( j = 1, 2,...,n c ) satisfy Eqs.(7.2) and (7.3), then Eq.(7.1) can achieve an optimal control purpose. However, Eq.(7.2) cannot be directly considered as a constraint for an ILPP. In this case, we introduce a set of binary variables f j,l s ( f j,l {0, 1}) to represent the relation between each legal marking M l and each constraint (L j,β j ). Specially, f j,l = 1 indicates that M l satisfies (L j,β j ) and f j,l = 0 implies that M l does not satisfy (L j,β j ). Then, Eq.(7.2) is rewritten as : n l j,i M l (p i ) Q (1 f j,l ) + β j, M l M L, j {1, 2,...,n c } (7.4) i=1 where Q is a positive constant that must be big enough. From Eq.(7.4), if f j,l = 1, it becomes ni=1 l j,i M l (p i ) β j. While, if f j,l = 0, it is n i=1 l j,i M l (p i ) Q + β j, implying that this constraint does not restrict l j,i s and β j. Since M l must satisfy at least one constraint, we have n c j=1 f j,l 1, M l M L (7.5) Combining Eqs.(7.3) (7.5), we can obtain an ILPP to determine l j,i s and β j s. Then, Eq.(7.1) can be used to achieve the optimal control purposes. However, there are too many constraints in the ILPP if all legal markings and all FBMs are considered. In the next section, a vector covering approach [6] is applied to remarkably reduce the legal markings and FBMs that must be considered. 7.3 Reduction of Considered Markings This paper considers the Petri net models of FMSs, where the places can be classified into three categories : idle, operation, and resource places whose sets are denoted as P 0, P A, and P R, respectively [18; 66; 79; 102]. Tokens in an idle place represent the maximal number of concurrent 166

168 7.3. REDUCTION OF CONSIDERED MARKINGS operations that may happen in a production sequence. An operation place represents an operation to be processed for a part in a production sequence and initially has no token. Resource places represent the resources in an FMS and their initial tokens represent the number of available resource units. In Uzam and Zhou s work [85], only the tokens in operation places are considered to construct a PI. Accordingly, we develop a marking reduction technique [6] to reduce the number of the markings in M L and M FBM, which must be considered. In the following, N A denotes {i p i P A } for an expedient description and a multiset formalism is used to represent the marking M for the sake of simplicity, i.e., M = i N A M(p i )p i. Since only the operation places are considered, the disjunctions of constraints, i.e., Eq.(7.1), is rewritten as : n c j=1 l j,i μ i β j (7.6) i N A Similarly, Eqs.(7.3) and (7.4) are modified, respectively, as follows : i N A l j,i M k (p i ) β j + 1, M k M FBM, j {1, 2,...,n c } (7.7) i N A l j,i M l (p i ) Q (1 f j,l ) + β j, M l M L, j {1, 2,...,n c } (7.8) Next, the vector covering approach from Chapter 2 is introduced to reduce the markings that need to be considered, aiming to reduce the computational overheads of the presented method. Definition 2.1 indicates the relationship of any two different markings. Accordingly, we have the following result. Theorem 7.4 Let M and M be two markings in R(N, M 0 ) with M A M. Then 1) if M satisfies Eq.(7.7), M satisfies Eq.(7.7) ; 2) if M satisfies Eq.(7.8), M satisfies Eq.(7.8). Proof : We first prove Case 1). Since M A M, then p P A, M(p) M (p) holds. Thus, we have i N A l j,i M(p i ) i N A l j,i M (p i ). Since M satisfies Eq.(7.7), we have i N A l j,i M (p i ) β j +1. Hence, i N A l j,i M(p i ) β j + 1, i.e., M satisfies Eq.(7.7). Case 1) holds. 167

169 7.3. REDUCTION OF CONSIDERED MARKINGS Similarly, we can prove Case 2) as follows. Since M satisfies Eq.(7.8), we have i N A l j,i M(p i ) Q (1 f j,l )+β j. According to M A M, we obtain i N A l j,i M (p i ) i N A l j,i M(p i ) Q (1 f j,l ) + β j, i.e., M satisfies Eq.(7.8). Case 2) holds. By Theorem 7.4, not all FBMs and legal markings are required to satisfy Eqs.(7.7) and (7.8), respectively. For example, there are two legal markings M 1 = p 2 and M 8 = p 2 + p 3 in Fig. 7.1(b). According to Definition 2.1, we have M 8 A M 1. By Theorem 7.4, if M 8 satisfies Eq.(7.8), i.e., l 2 + l 3 Q (1 f j,l ) + β j, then M 1 satisfies Eq.(7.8) since l 2 l 2 + l 3. Similarly, consider two FBMs M 5 = p 2 + p 4 and M 9 = 2p 2 + p 4.IfM 5 satisfies Eq.(7.7), M 9 satisfies Eq.(7.7) since 2l 2 + l 4 l 2 + l 4. Thus, a marking reduction approach is introduced below, which is presented in Chapter 2. Corollary 2.3 indicates that we can consider markings in M FBM only, instead of M FBM, to guarantee the liveness control condition. Therefore, Eq.(7.7) can be reduced as : l j,i M k (p i ) β j + 1, M k M FBM, j {1, 2,...,n c} (7.9) i N A Corollary 2.4 indicates that we need to consider markings in M L only, instead of M L,to guarantee the optimal control purposes. Therefore, Eq.(7.8) can be reduced as : l j,i M l (p i ) Q (1 f j,l ) + β j, M l M L, j {1, 2,...,n c} (7.10) i N A Accordingly, Eq.(7.5) is reduced as : n c j=1 f j,l 1, M l M L (7.11) By considering the example in Fig. 7.1(a), there are only one and two markings in M FBM and M L, respectively. Specially, we have M FBM = {M 5 = p 2 + p 4 } and M L = {M 12 = 2p 2 + p 3, M 14 = 2p 4 + p 5 }.IfM 5 satisfies Eq.(7.7), all FBMs satisfy Eq.(7.7). Similarly, if M 8 and M 11 satisfy Eq.(7.8), all legal markings satisfy Eq.(7.8). Eqs.(7.9) (7.11) can determine variables l j,i s and β j s ( j {1, 2,...,n c }, i N A ). Then, Eq.(7.6) can keep the maximally permissive behavior of the system to be controlled. However, there is still a problem that we do not know the number of constraints required for a net. That is to say, we cannot obtain the proper value of n c. In the next section, we propose an ILPP to find the minimal value of n c. 168

170 7.4. OPTIMAL CLASSIFICATION OF THE SET OF LEGAL MARKINGS 7.4 Optimal Classification of the Set of Legal Markings As stated in the previous section, we do not know that how many constraints are needed. In the worst case, each legal marking in M L is associated with a constraint. That is to say, 1 n c M L. In fact, the number of constraints to be computed is much less than the cardinality of M L. Suppose that there are n c constraints initially. Next, we select the minimal number of constraints in the n c constraints. A variable h j (h j {0, 1}, j {1, 2,...,n c }) is introduced for each constraint (L j,β j ) and we have the following constraints : f j,l h j, M l M L, j {1, 2,...,n c} (7.12) where h j = 1 implies that (L j,β j ) is selected and h j = 0 indicates that (L j,β j ) is redundant and there is no need to add it as a constraint in Eq.(7.6). Eq.(7.12) indicates that, if (L j,β j ) is not selected, no legal marking necessarily satisfies it. Finally, we formulate the following ILPP to find the minimal number of constraints whose disjunctions can optimally control a Petri net model, which is denoted as the Minimal Number of Disjunctive Constraints (MNDC) problem. MNDC : n c min h = j=1 h j sub ject to l j,i M k (p i ) β j + 1, M k M FBM, j {1, 2,...,n c} (7.13) i N A l j,i M l (p i ) Q (1 f j,l ) + β j, M l M L, j {1, 2,...,n c} (7.14) i N A n c f j,l 1, M l M L (7.15) j=1 f j,l h j, j {1, 2,...,n c }, M l M L (7.16) l j,i {0, 1, 2,...}, j {1, 2,...,n c }, i N A f j,l {0, 1}, j {1, 2,...,n c }, M l M L h j {0, 1}, j {1, 2,...,n c } 169

171 7.4. OPTIMAL CLASSIFICATION OF THE SET OF LEGAL MARKINGS β j {0, 1, 2,...}, j {1, 2,...,n c } The objective function h is used to minimize the number of constraints that are selected. Denote its optimal value by h. If MNDC has an optimal solution, then we can claim that the considered Petri net model can be optimally controlled by the disjunctions of constraints and the minimal number of constraints is h, as stated below. Theorem 7.5 Given a Petri net model, if MNDC has an optimal solution h, then the net can be optimally controlled by the disjunctions of the minimal number h of constraints. Proof : Eq.(7.13) ensures that every obtained constraint can forbid all FBMs in M FBM. By Corollary 2.3, every constraint can forbid all FBMs of the net. According to Eqs.(7.14) and (7.15), every legal marking in M L satisfies at least one obtained constraint. By Corollary 2.4, every legal marking of the net model satisfies at least one constraint. Hence, by Theorem 7.3, the disjunctions of all obtained constraints, i.e., Eq.(7.6), can optimally control the net. In addition, the objective function ensures that the minimal number of constraints is selected, which equals the optimal solution h. In summary, the conclusion holds. It is well-known that an ILPP is NP-hard. The computational time for finding an optimal solution of an ILPP greatly depends on the number of the constraints and variables in it. Therefore, we discuss MNDC in the sense of the number of its constraints and variables. The numbers of the constraints in Eqs.(7.13), (7.14), (7.15), and (7.16) are n c M FBM, n c M L, M L, and n c M L, respectively. Thus, the total number of the constraints in MNDC is n c ( M FBM + 2 M L ) + M L. Next, we consider the number of its variables. The number of variables l j,i s ( j {1, 2,...,n c }, i N A )isn c P A. The number of variables f j,l s for each legal marking M l M L is n c M L. The number of both variables h j s and β j s ( j {1, 2,...,n c } is n c. Finally, MNDC has n c ( P A + M L + 2) variables in total. The number of the two instances in MNDC is summarized in Table 7.1. Now we discuss the initial value of n c. Suppose that there exist the minimal number of constraints whose disjunctions can optimally control a given Petri net model and denote the number as n c.if n c is too small, i.e., n c < n c, MNDC has no solution and we cannot find the minimal number of disjunctive constraints. In this case, we can increase n c and solve it again. Therefore, the proper 170

172 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS Tab. 7.1 The numbers of constraints and variables in MNDC constraint type No. constraints variable No. variables (7.13) n c M FBM l j,i n c P A (7.14) n c M L f j,l n c M L (7.15) M L h j n c (7.16) n c M L β j n c total n c ( M FBM + 2 M L ) + M L total n c ( P A + M L + 2) range for n c is from n c to M L. The closer the given n c is to n c, the more efficient the proposed method is. The best case is that n c initially happens to be n c. Then a minimal number of constraints can be obtained and MNDC has a small number of constraints and variables. However, given a net model, we do not know the exact value of n c before solving MNDC. That is to say, it is hard to set n c initially. One simple solution is varying n c from 1 to M L and the process terminates once MNDC has an optimal solution. The other solution is to set n c initially by experiences. Once MNDC has no solution, we can increase n c until it has one. In fact, it is possible that MNDC has no solution with n c = M L. In this case, the given net cannot be optimally controlled by disjunctive constraints. The reason is that the state space of its FBMs is non-convex. Each of the constraints must forbid all FBMs. That is to say, every FBM should satisfy the liveness control condition, i.e, Eq.(7.3), which indicates that it can be considered as the conjunctions of linear constraints. Thus, one cannot forbid all FBMs without removing legal markings by Eq.(7.3) if the state space of FBMs is non-convex. This situation is similar to the case that one cannot optimally control a net by the conjunctions of linear constraints if the state space of its legal markings is non-convex. 7.5 Supervisory Structure for Disjunctions of Constraints This section develops a supervisory structure for the disjunctions of linear constraints. Just as stated in Section 1.2, each constraint (L j,β j ) in Eq.(7.6) can be implemented by a control place p s j, i.e., l j,i μ i + μ s j = β j (7.17) i N A where μ s j denotes the marking of p s j. In order to implement the disjunctions of constraints, we introduce an additional structure for p s j, as shown in Fig

173 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS t f j p sj w j p f j w j t f j Fig. 7.3 An additional structure for a control place p s j. Now, we analyze the additional structure in detail. In Fig. 7.3, w j is an integer constant that must be no less than the upper bound of i N A l j,i μ i. The upper bound can be easily computed from a Petri net model of an FMS since the tokens in each operation place is limited by the capacity of the resources required by the operation. In the additional structure of a control place, t f j is called the release transition of p s j. Once t f j fires, it puts w j tokens in p s j and one token in p f j. Then it does not disable any transition of the net model to be controlled since it has enough tokens. In this case, p s j cannot enforce the jth constraint i N A l j,i μ i β j. t f j is called the restriction transition of p s j. Once t f j is enabled and fires, it removes w j tokens from p s j and one token from p f j. In this case, p s j can enforce the jth constraint again. p f j is 1-bounded and called the flag place of p s j. The fact that it has one token in p f j means that the jth constraint is not enforced and no token in p f j indicates that the jth constraint is enforced. According to Eq.(7.1), at least one of the constraints must be satisfied. Thus, at least one flag place is empty, which can be represented by n c j=1 μ f j n c 1 (7.18) where μ f j is the marking of place p f j. The constraint can be easily transformed into a PI by introducing a control place p f : n c j=1 μ f j + μ f = n c 1 (7.19) where μ f denotes the marking of p f. By using the PI based method in Section 1.2, we can obtain the control place p f, as shown in Fig An algorithm to design the supervisory structure for the disjunctions of constraints is presented below. 172

174 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS t f1 p s1 w 1 p f1 w 1 t f1 t f2 p s2 w 2 p f2 n c -1 p f w 2 t f2 p s nc w nc t f nc w nc p f nc t f nc Fig. 7.4 Supervisory control structure for the disjunctions of constraints. Algorithm 7.1 Design of a supervisory structure for the disjunctions of constraints. Input : A set of constraints (L j,β j ) s and their upper bounds w j s, j = {1, 2,...,n c }. Output : A Petri net supervisory structure N M = (P M, T M, F M, MM 0 ) for the disjunctions of the set of constraints (L j,β j ) s, j = {1, 2,...,n c }. 1. P M := and T M =. /* P M and T M denote the sets of added places and transitions, respectively. */ 2. foreach j {1, 2,...,n c } do Design a control place p s j for (L j,β j ) by the method in Section 1.2. Add a release transition t f j and a restriction transition t f j for p s j with p s j = p s j {w j t f j } and p s j = p s j {w j t f j }. /* w j t f j denotes that the weight of arc (p s j, t f j ) is w j.*/ T M := T M {t f j, t f j }. Add a flag place p f j (1-bounded) for p s j with p f j = t f j, p f j = {t f j }, and M 0 M (p f j ) = 0. /* M 0 M (p f j ) denotes the initial marking of p f j.*/ P M := P M {p s j, p f j }. 173

175 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS 3. Add a control place p f with p f = {t f 1, t f 2,...,t f nc }, p f = {t f1, t f2,...,t fnc }, and MM 0 (p f ) = n c 1. P M := P M {p f }. /* MM 0 (p f ) denotes the initial marking of p f.*/ 4. Output the resulting supervisory structure N M = (P M, T M, F M, MM 0 ). 5. End. Take the net in Fig. 7.1(a) as an example. The net can be optimally controlled by the disjunctions of two constraints : μ 2 = 0 and μ 4 = 0. The supervisory structure can be obtained by Algorithm 7.1, as shown in Fig. 7.2(c). It can be verified that the controlled net is live with 17 markings that include all the 11 legal markings and six extra markings generated by the added supervisory structure. The results verify that the proposed method can optimally control the net that cannot be dealt with by the theory of regions [31; 83] and the work presented in Chapters 2 and 3. However, the proposed supervisory structure may have a problem that it cannot transform the feasibility of one constraint to the other immediately by the firing of a transition. It can be explained in detail as follows. Suppose that (L 1,β 1 ) and (L 2,β 2 ) are two disjunctive constraints and a legal marking M satisfies (L 2,β 2 ) but not (L 1,β 1 ). Let t be a transition that is enabled at M with M[t M.IfM satisfies (L 1,β 1 ) but not (L 2,β 2 ), then t is disabled by the proposed supervisory structure since it cannot transform the feasibility of (L 2,β 2 )to(l 1,β 1 ) immediately by firing t. A simple example is used to illustrate the problem as follows. A Petri net is shown in Fig. 7.5(a), where there are two constraints (L 1,β 1 ):μ 2 0 and (L 2,β 2 ):μ 3 0. The upper bounds of the two constraints are one since both p 2 and p 4 can have at most one token. The supervisory structure to enforce the disjunctions of the two constraints are shown in Fig. 7.5(b). There exists a reachable marking M = (110010) T in Fig. 7.5(a), at which t 2 is enabled. Once t 2 fires, it yields a new marking M = (101001) T. It can be seen that M satisfies (L 2,β 2 ) but not (L 1,β 1 ), while M satisfies (L 1,β 1 ) but not (L 2,β 2 ). Thus, M should be a legal marking reachable from M by firing t, i.e., M[t M. However, the proposed supervisor disables t at M, as shown in Fig. 7.5(c). Note that the two disjunctive constraints in this example can be transformed into a linear constraint μ 2 + μ 3 1. In the light of the above remarks, we provide a sufficient condition to avoid this problem. Since the problem arises when the firing of a transition can transform the feasibility of a constraint 174

176 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS t 1 t1 tf1 t1 tf1 p 2 p2 ps1 pf1 p2 ps1 pf1 t 2 t2 t f1 pf t2 t f1 pf p 1 p 5 p3 p 6 p1 p5 p3 p6 ps2 tf2 p1 p5 p3 p6 ps2 tf2 t3 pf2 t3 pf2 t 3 p 4 p4 p4 t f2 t f2 t 4 t4 t4 (a) (b) (c) Fig. 7.5 (a) A simple example, (b) the supervisor for μ 2 0 μ 3 0, and (c) a marking at which t 2 is disabled. to another constraint. Thus, a sufficient condition is that a transition that is an input transition of a control place is not an output transition of another control places. Let V M be the set of control places. A formal representation of the condition is presented below, where T is the set of transitions of a net. V M V M T = (7.20) Eq.(7.20) also can be written as t t V M =, t T (7.21) Theorem 7.6 The proposed supervisory structure (see Fig. 7.4) can optimally control a given net model by enforcing a set of disjunctive constraints if V M V M T =, where V M denotes the set of control places. Proof : First, we prove that the proposed supervisory structure can ensure that at least one of the constraints must be satisfied. From the supervisory structure, once t f j fires, it puts w j tokens in p s j and one token in p f j. Then p s j does not disable any transition of the original net model since it has enough tokens. In this case, p s j cannot enforce the jth constraint i N A l j,i μ i β j. Once t f j is enabled and fires, it removes w j tokens from p s j and one token from p f j. In this case, p s j can enforce the jth constraint again. Thus, if p f j has one token, the jth constraint is not enforced and 175

177 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS no token in p f j indicates that the jth constraint is enforced. According to Eq.(7.18), place p f can ensure that at least one constraint is satisfied. In summary, the proposed supervisory structure can enforce the disjunctions of constraints. Next, we prove that any legal marking is reachable. It is obvious that the initial marking M 0 is reachable. Let M 1 and M 2 be two legal makings with M 1 [t M 2 (t T) in the original net. Suppose that M 1 is reachable. Now we prove that the presented supervisor does not disable t at M 1, i.e., M 2 is reachable. Since M 1 is a legal marking, it satisfies at least one constraint. Suppose that M 1 satisfies constraints (L 1,β 1 ) whose according control place is p s1. Since V M V M T =, there are two subcases : 1) t p s 1, and 2) t p s 1 and t V M. For Case 1), since M 1 satisfies (L 1,β 1 ), we have M 1 (p f1 ) = 0. Therefore, we can let M 1 (p f j ) = 1( j {2, 3,...,n c }). Then, no control places in {p s2, p s3,...,p snc } can disable t since each of them can have enough tokens. Considering t p s 1, p s1 does not disable t. Thus, t can fire at M 1. For Case 2), if p s1 does not disable t, it is similar to Case 1), i.e., no control places can disable t. We assume that p s1 disables t at M 1. This means that once t fires at M 1, the new marking, M 2, does not satisfy (L 1,β 1 ). Since M 2 is also a legal marking, it must satisfy at least one constraint. Suppose that M 2 satisfies (L 2,β 2 ). Since t V M, i.e., t p s2, the firing of t does not add any token in p s2. Thus, M 1 also satisfies (L 2,β 2 ). That is to say, t f 2 can fire at M 1, which leads to a marking M with M (p f2 ) = 0. In this case, t f1 can fire. Once it fires, we have a new marking M with M (p f1 ) = 1 and there are enough tokens in p s1. That is to say, t can fire at M, i.e., M 2 is reachable from M 1. Thus, we can claim that the presented supervisory structure can make all legal markings reachable. Finally, we show that all FBMs are forbidden by the supervisory structure. Since each FBM is forbidden by all constraints and the presented supervisory structure ensures that at least one constraint must be satisfied at any marking, all FBMs are forbidden by the presented supervisory structure. In summary, the conclusion holds. Eq.(7.20) (or Eq.(7.21)) indicates that for each transition t q T, q {1, 2,...,m}, it is in either V M or V M. Let (L j,β j ) be a constraint and p s j the control place to implement it. According to Eq.(1.16), we have [N c ](p s j, t q ) = i N A l j,i [N](p i, t q ). Since [N c ](p s j, t q ) > 0 implies t q p s j 176

178 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS and [N c ](p s j, t q ) < 0 indicates t q p s j, according to Eq.(7.21), we have l j,i [N](p i, t q ) 0, j {1, 2,...,n c } (7.22) i N A or l j,i [N](p i, t q ) 0, j {1, 2,...,n c } (7.23) i N A where Eq.(7.22) indicates that t q V M and Eq.(7.23) implies t q V M. Since either Eqs.(7.22) or (7.23) is satisfied, which cannot be added directly into MNDC, a binary variable g q {0, 1} is introduced for t q to represent whether Eq.(7.22) or Eq.(7.23) is true. Hence, Eqs.(7.22) and (7.23) are rewritten as l j,i [N](p i, t q ) Q (1 g q ), j {1, 2,...,n c } (7.24) i N A and l j,i [N](p i, t q ) Q g q, j {1, 2,...,n c } (7.25) i N A where g q = 1 indicates that Eq.(7.22) is true and g q = 0 implies that Eq.(7.23) is true, i.e., t q V M and t q V M, respectively. For each transition t q T, we have Eqs.(7.24) and (7.25). Thus, by considering all transitions, we have and l j,i [N](p i, t q ) Q (1 g q ), j {1, 2,...,n c }, t q T (7.26) i N A l j,i [N](p i, t q ) Q g q, j {1, 2,...,n c }, t q T (7.27) i N A By adding Eqs.(7.26) and (7.27) to MNDC, we have the following ILPP that is denoted as the Compressed Number of Disjunctive Constraints (CNDC) problem. CNDC : n c min h = j=1 h j sub ject to Eqs.(7.13) (7.16) 177

179 7.5. SUPERVISORY STRUCTURE FOR DISJUNCTIONS OF CONSTRAINTS l j,i [N](p i, t q ) Q (1 g q ), j {1, 2,...,n c }, t q T (7.28) i N A l j,i [N](p i, t q ) Q g q, j {1, 2,...,n c }, t q T (7.29) i N A l j,i {0, 1, 2,...}, j {1, 2,...,n c }, i N A f j,l {0, 1}, j {1, 2,...,n c }, M l M L h j {0, 1}, j {1, 2,...,n c } β j {0, 1, 2,...}, j {1, 2,...,n c } g q {0, 1}, t q T The objective function h is used to minimize the number of the constraints that are selected. Denote its optimal value by h. If CNDC has an optimal solution, we can obtain h constraints. Then, the proposed supervisory structure can optimally control the system by enforcing the disjunctions of the obtained constraints. The optimal value of CNDC is no less than that of MNDC due to the addition of Eqs.(7.28) and (7.29). On the other hand, they can ensure that no transition is in both preset and postset of the obtained control places. Both Eqs.(7.28) and (7.29) have n c T constraints. As a result, CNDC has n c ( M FBM + 2 M L + 2 T ) + M L constraints. The number of variables g q s ( t q T)is T. Thus, CNDC has n c ( P A + M L + 2) + T variables. Corollary 7.1 The proposed supervisory structure can optimally control a given Petri net model by enforce a set of disjunctive constraints if CNDC has an optimal solution. Proof : If CNDC has an optimal solution, then we can obtain a set of disjunctive constraints. According to Eqs.(7.28) and (7.29), we have V M V M T =. By Theorem 7.6, the proposed supervisory structure can optimally control a given Petri net model. Now we discuss the structural complexity of the proposed supervisor. From Fig. 7.4, the proposed supervisor has 2n c + 1 places and 2n c transitions. Thus, the structural complexity greatly depends on n c. In this case, an ILPP, namely CNDC, is proposed to minimize n c, which can greatly reduce the size of the supervisory structure. Note that, the supervisor in [40] has 3n c +1 places and the number of the added transitions is bounded by T. Also, the work in [41] provides a supervisor in which the number of places is bounded by 2n c + T. However, as stated in [41], the number of the added transitions is of 2 n c in the worst case. The advantage of the work in [40; 41] is that it can 178

180 7.6. AN ILLUSTRATIVE EXAMPLE be applied to any Petri nets but this work focuses on the Petri net models of FMSs. 7.6 An Illustrative Example This section presents a simple example to illustrate the proposed method in detail. The Petri net model of an FMS is shown in Fig Its places can be classified as : P 0 = {p 1, p 8 }, P R = {p 9 p 11 }, and P A = {p 2 p 7 }. The net has 39 reachable markings, nine and 23 of which are FBMs and legal markings, respectively. By using a vector covering approach, the minimal covered set of FBMs and the minimal covering set of legal markings have three and two elements, i.e., M FBM = {p 3 + p 5, p 2 + p 5, p 2 + p 6 } and M L = {2p 5 + p 6 + p 7, 2p 2 + p 3 + p 4 }. Since 1 n c 2, we initially set n c = 2. Suppose that the two constraints are (L 1,β 1 ): i N A l 1,i μ i β 1 and (L 2,β 2 ): i N A l 2,i μ i β 2, where N A = {2, 3, 4, 5, 6, 7}. Fig. 7.6 Petri net model of an FMS. First, all FBMs in M FBM should be forbidden by each of the constraints. Thus, for (L 1,β 1 ) and (L 2,β 2 ), we have l 1,3 + l 1,5 β 1 + 1, l 1,2 + l 1,5 β 1 + 1, l 1,2 + l 1,6 β 1 + 1, and and 179

181 7.6. AN ILLUSTRATIVE EXAMPLE respectively. l 2,3 + l 2,5 β 2 + 1, l 2,2 + l 2,5 β 2 + 1, l 2,2 + l 2,6 β 2 + 1, and We introduce a set of binary variables f j,l s ( j {1, 2}) for each legal marking M l M L to represent whether it is forbidden by (L j,β j ). Hence, we have and 2l 1,2 + l 1,3 + l 1,4 Q (1 f 1,1 ) + β 1 2l 1,5 + l 1,6 + l 1,7 Q (1 f 1,2 ) + β 1 and for (L 1,β 1 ) and (L 2,β 2 ), respectively. 2l 2,2 + l 2,3 + l 2,4 Q (1 f 2,1 ) + β 2 2l 2,5 + l 2,6 + l 2,7 Q (1 f 2,2 ) + β 2 and Two binary variables h 1 and h 2 are introduced to represent whether the two constraints (L 1,β 1 ) and (L 2,β 2 ) are selected, respectively. Hence, we have f 1,1 h 1, f 1,2 h 1, f 2,1 h 2, f 2,2 h 2. and By combining all the above constraints, an ILPP is obtained as follows : MNDC : min h = h 1 + h 2 sub ject to l 1,3 + l 1,5 β l 1,2 + l 1,5 β l 1,2 + l 1,6 β l 2,3 + l 2,5 β l 2,2 + l 2,5 β

182 7.6. AN ILLUSTRATIVE EXAMPLE l 2,2 + l 2,6 β l 1,2 + l 1,3 + l 1,4 Q (1 f 1,1 ) + β 1 2l 1,5 + l 1,6 + l 1,7 Q (1 f 1,2 ) + β 1 2l 2,2 + l 2,3 + l 2,4 Q (1 f 2,1 ) + β 2 2l 2,5 + l 2,6 + l 2,7 Q (1 f 2,2 ) + β 2 f 1,1 h 1 f 1,2 h 1 f 2,1 h 2 f 2,2 h 2 l j,i {0, 1, 2,...}, i {2, 3, 4, 5, 6, 7}, j {1, 2} β 1,β 2 {0, 1, 2, 3,...} f 1,1, f 1,2, f 2,1, f 2,2 {0, 1} The above MNDC has an optimal solution with l 1,5 = l 1,6 = l 2,2 = l 2,3 = 1, β 1 = β 2 = 0, and h = 2. Then we can obtain two disjunctive constraints (L 1,β 1 ):μ 5 + μ 6 0 and (L 2,β 2 ): μ 2 + μ 3 0, respectively. It can be verified that R(L 1,β 1, M 0 ) = R(L 2,β 2, M 0 ) = 12 and M L = R(L 1,β 1, M 0 ) R(L 2,β 2, M 0 ). In this case, we can claim that M L is classified into two subsets R(L 1,β 1, M 0 ) and R(L 2,β 2, M 0 ). Then, all legal markings can be reached by the enforcement of the two disjunctive constraints. Note that M L = R(L 1,β 1, M 0 ) + R(L 2,β 2, M 0 ) + 1 since the initial marking satisfies both constraints, i.e., R(L 1,β 1, M 0 ) R(L 2,β 2, M 0 ) = {M 0 }. Two control places p s1 and p s2 are designed for two constraints, where p s1 = {t 7 }, p s 1 = {t 5 }, M 0 (p s1 ) = 0, p s2 = {t 3 }, p s 2 = {t 1 }, and M 0 (p s2 ) = 0. It can be seen that {p s1, p s2 } {p s1, p s2 } T =. Hence, we can use the control structure proposed in Section 7.5 to enforce the disjunctions of the two constraints. Of course, we can formulate CNDC by adding constraints (Eqs.(7.28) and (7.29)) to MNDC. Here we do not provide CNDC for this example due to the limited space. For this net, we can easily obtain that the capacities of places p 2, p 3, p 5, and p 6 are 2, 1, 2, and 1, respectively. Thus, we can compute the upper bounds w 1 and w 2 of the two constraints (L 1,β 1 ) and (L 2,β 2 ), respectively, i.e., w 1 = w 2 = 3. Then, a Petri net supervisory structure is designed to implement the disjunctions of the two constraints by Algorithm 7.1. The controlled net is shown 181

183 7.7. EXPERIMENTAL RESULTS in Fig. 7.7, which can make the net model live with all 23 legal markings. In fact the controlled net is live with 29 reachable markings, where six extra markings are generated by the added places and transitions. t 1 t 8 p 9 2 p 2 2 p 7 t 2 t 7 p p 3 p 10 p 6 p 8 t 3 t 6 2 p 11 p s2 p 4 p 5 2 p s1 t 4 t t f2 t f2 t f1 p f1 t f1 p f2 p f Fig. 7.7 Optimal Petri net supervisor for the net in Fig The existing work cannot design an optimal Petri net supervisor by the theory of regions [31; 83] for this net. The reason is that the legal space of the net model is non-convex. Thus, it cannot be optimally controlled by the conjunctions of constraints. However, the proposed method can classify the legal markings into two subsets, each of which is associated with a linear constraint. Then, we provide an optimal supervisor that allows all legal behavior. Thus, it can be verified that the proposed method can provide an optimal Petri net supervisor for the net that cannot be optimally controlled by the conjunctions of constraints. 7.7 Experimental Results This section provides two Petri net models of FMSs to illustrate the proposed method. A desktop computer is used based on a Windows operating system with an Intel Core 2.8 GHz CPU and 4 GB memory. INA [77] is used to generate the reachability graph of a Petri net model and C++ programs are developed to find M FBM and M L. Also, a C++ program is developed to 182

184 7.7. EXPERIMENTAL RESULTS generate the ILPPs and Lingo [61] is used as an ILPP solver. A Petri net model is shown in Fig. 7.8, which is an S 4 PR from [82]. It has nine places and seven transitions and the places have the following set partitions : P 0 = {p 10, p 20 }, P R = {p 31, p 32 }, and P A = {p 11, p 12, p 13, p 21, p 22 }. It has 20 reachable markings, six and 13 of which are FBMs and legal markings, respectively. By using the marking reduction approach, either of M FBM and M L has three markings only, i.e., M FBM = {p 12, p 12 + p 21, p 11 + p 21 } and M L = {p 11 + p 12, 2p 21 + p 22, 2p 11 +p 13 }. Thus, 1 n c 3. Let n c = 1, the CNDC has no solution. Then, let n c = 2 and solve the CNDC. An optimal solution can be found and the obtained constraints are shown in Table 7.2, where the first column j denotes the constraint number (L j,β j ) and w j represent the jth constraint and its upper bound, respectively, and p s j, p s j, and M 0 (p s j ) in the fourth to sixth columns show the preset, postset, and initial marking of the computed control place p s j, respectively. Here we do not show the supervisory structure for the disjunctions of the obtained constraints since it can be easily designed by Algorithm 7.1. t 1 t 7 p 10 4 p 11 t 2 p 12 p 31 R1 p p 22 t6 p 21 p 20 4 t 3 p 13 2 R2 t 5 t 4 Fig. 7.8 A Petri net model in [82]. Tab. 7.2 Experimental results for the net shown in Fig. 7.8 j (L j,β j ) w j p s j p s j M 0 (p s j ) 1 μ 11 + μ t 3 t μ μ t 3, 2t 5 t 2, 2t 6 1 The obtained supervisor has five places and four transitions. After adding the supervisor to the 183

185 7.7. EXPERIMENTAL RESULTS original net model, the controlled net is live with 19 markings that include the 13 legal markings of the original net and six extra markings generated by the added places and transitions. In fact, we cannot obtain a solution for this example by using the theory of regions in [31; 83] or the methods proposed in the previous work [6; 7]. However, by using the proposed method, we find an optimal supervisor that can make the system live with all the legal markings. This shows that the proposed method can deal with the net model that cannot be dealt with by the work in [31; 83; 6; 7]. Next, the Petri net model of an FMS shown in Fig. 7.9 is considered, which is a weighted version of a net from [38]. It has 16 places and 13 transitions. The places can be considered as P 0 = {p 1, p 8 }, P R = {p 13 p 16 }, and P A = {p 2 p 7, p 9 p 12 }. The net has 169 reachable markings, 27 and 125 of which are FBMs and legal markings, respectively. By using the vector covering approach, M FBM and M L have five and 12 elements, respectively. Thus, 1 n c 12. Let n c = 1, the CNDC has no solution. Then, let n c = 2. Solving the CNDC, an optimal solution can be found, as shown in Table 7.3. t 1 2 t 9 p 2 R1 p 13 2 p 12 t 2 t 5 t 10 8 p 1 p 3 t 3 p 16 R4 p 4 p 11 p 14 t 6 R2 8 t 11 p 8 p 5 p 6 p 10 t 4 t 7 2 t 12 2 p 7 t 8 2 R3 p 15 p 9 t 13 Fig. 7.9 Petri net model of an FMS. For this example, two constraints are obtained. Then, the obtained supervisor has five places and four transitions. After coupling the supervisor with the original net model, the controlled net is live with 167 markings that include 125 legal markings of the original net and 42 extra markings generated by the added places and transitions. It can be verified that the theory of regions in 184

186 7.8. CONCLUSIONS Tab. 7.3 Experimental results for the net shown in Fig. 7.9 j (L j,β j ) w j p s j p s j M 0 (p s j ) 1 μ 9 + 3μ μ t 10 t 13, 2t μ 2 + μ 3 + μ t 3, t 6 t 1 0 [31; 83] or the methods proposed in the previous work [6; 7] cannot find an optimal supervisor for this example. However, by using the proposed method, we find an optimal supervisor that can make the system live with all the legal markings. This also validates that the proposed method can deal with the net models that cannot be dealt with by the work in [6; 7; 31; 83]. 7.8 Conclusions This work aims to optimally control the Petri net models of FMSs by considering the disjunctions of constraints. Given a net model, it develops a method to compute a set of constraints, whose disjunctions can make all legal markings reachable while prohibit deadlock from occurring. An ILPP is proposed to minimize the number of disjunctive constraints and a vector covering approach is used to reduce the number of the markings that must be considered, which can greatly reduce the computational burden. Finally, a supervisory control structure is proposed to enforce the disjunctive constraints and a modified ILPP is provided to compute them. The proposed method is general since it is applicable to all FMS-oriented Petri net models. Experimental results show that the proposed method can find optimal supervisors for the Petri net models that cannot be dealt with by the work in [6; 7; 31; 83]. On the other hand, there are some shortcomings in the proposed method. The first is its computational complexity. It is based on the reachability graph analysis of a Petri net model, which suffers from the state explosion problem. Also, we need to solve ILPPs, which are NP-hard. Though a marking reduction technique is used to reduce the number of the constraints in ILPPs, which can reduce the computational burden of the proposed method, its computational complexity is still NP-hard. Thus, the proposed method cannot be applied to large-scale Petri net models if there are too many constraints and variables in the proposed ILPPs. Second, the proposed supervisory control structure can introduce extra states. Deciding how to reduce them is an open topic. In the 185

187 7.8. CONCLUSIONS future, we will also study how to avoid the full enumeration of reachable markings to reduce the computational overheads. 186

188 Chapitre 8 Maximally Permissive Supervisor with Interval Inhibitor Arc This chapter presents a Petri net structure, namely an interval inhibitor arc, and its application to the optimal supervisory control of Petri nets. An interval inhibitor arc is an arc from a place to a transition labeled with an integer interval. The transition is disabled by the place if the number of tokens in the place is between the labeled interval. The formal definition and the firing rules of Petri nets with interval inhibitor arcs are developed. Then, an optimal Petri net supervisor based on the interval inhibitor arcs is designed to prevent a system from reaching illegal markings. Two techniques are presented to simplify the supervisory structure by compressing the number of control places. The proposed approaches are general since they can be applied to any bounded Petri net models. A marking reduction approach is also introduced if they are applied to Petri net models of flexible manufacturing systems. Finally, a number of examples are provided to demonstrate the proposed approaches and the experimental results show that they can obtain optimal Petri net supervisors for some net models that cannot be optimally controlled by pure net supervisors. Furthermore, the obtained supervisor is structurally simple. 8.1 Introduction An interval inhibitor arc is an arc from a place p to a transition t with an integer interval [a, b] labeled on the arc. Transition t is disabled by p at a marking M if a M(p) b. Ift is enabled and fires, it does not change the tokens in p. Based on this novel Petri net structure, we propose approaches to design optimal supervisors. Meanwhile, the supervisory structure is also 187

189 8.1. INTRODUCTION compressed. Experimental results show that it can optimally control some net models that have no pure optimal net supervisor. It can even lead to an optimal supervisor with only one control place, which is rather structurally simple. Compared with the work in [6; 7; 10; 31; 69; 70; 84], and [85], the proposed method can obtain maximally permissive Petri net supervisors with simpler structures. In summary, this chapter presents the following contributions. 1) A novel Petri net structure is proposed, namely an interval inhibitor arc. Its formal definition and graphical representation are first provided. Meanwhile, we propose the enable and firing rules of a net system with interval inhibitor arcs. We also show that an interval inhibitor is a more general case of inhibitor arcs and self-loops. 2) We propose a method to design a control place with an interval inhibitor arc associated with a transition t for an MTSI (M, t). The obtained control place can optimally prevent an MTSI in the sense that t is disabled at M and all legal markings are reachable. Experimental results show that the supervisors with interval inhibitor arcs can optimally control some net models that have no optimal pure net supervisor. 3) An ILPP, namely MNTMP(t q ) (the maximal number of t q -critical MTSIs problem), is developed to design a control place with an interval inhibitor arc associated with t q. The objective function is used to maximize the number of t q -critical MTSIs (an MTSI (M, t q ) is called a t q -critical MTSI) prevented by the control place. Once all MTSIs are prevented, we can obtain an optimal supervisor with a small number of control places. 4) Another ILPP, namely MNMP (the maximal number of MTSIs problem), is proposed to compute a control place that has an interval inhibitor arc for each critical transition (a transition t is said to be critical if there exists a marking M such that (M, t) is an MTSI). An objective function is provided to maximize the number of MTSIs prevented by the control place. In this case, the supervisory structure is greatly compressed. Experimental results show that the MNMP can even find an optimal supervisor with only one control place for some examples that have no optimal pure net supervisor. 5) Finally, two deadlock prevention policies based on the two proposed ILPPs are developed to obtain optimal supervisors with interval inhibitor arcs. The proposed approaches are general since they can be applied to any kind of bounded Petri net models. Furthermore, the computational 188

190 8.2. INTERVAL INHIBITOR ARC burden can be reduced if they are applied to net models of FMSs. 8.2 Interval Inhibitor Arc An inhibitor arc from a place p to a transition t means that the transition is disabled by the place if the place is marked. In this section, we extend the concept of inhibitor arcs to a more general case by proposing a novel Petri net structure, called interval inhibitor arcs. We claim that an interval inhibitor arc is a more general case of self-loops and inhibitor arcs. Thus, it is more powerful in modeling and controlling a net system. Definition 8.1 An interval inhibitor arc is an arc from a place p to a transition t labeled by an integer interval [a, b], denoted as Å(p, t) = [a, b], where a and b are nonnegative integers with a b. It is graphically represented by an inhibitor arc from p to t with a label [a, b] on it, as shown in Fig Fig. 8.1 An interval inhibitor arc. The enable and firing rules of an interval inhibitor arc are defined as follows : Definition 8.2 Let p be a place and t a transition with Å(p, t) = [a, b]. Transition t is disabled by Å(p, t) at a marking M if a M(p) b ; otherwise, it is enabled. Once t is enabled, its firing does not change the tokens in p. Given a Petri net with interval inhibitor arcs, a transition can be disabled by an interval inhibitor arc or a normal arc. Thus, we define the following enable and firing rules for Petri nets with interval inhibitor arcs. Definition 8.3 Let N = (P, T, F, W, A) be a Petri net with interval inhibitor arcs, where A is a set of interval inhibitor arcs. (a). A transition t is disabled at a marking M if p t, M(p ) < W(p, t) or Å(p, t) = [a, b] A such that a M(p) b; 189

191 8.2. INTERVAL INHIBITOR ARC (b). Once a transition t is enabled at a marking M, its firing yields a new marking M with M (p) = M(p) W(p, t) + W(t, p), p P. Fig. 8.2 shows some examples of the Petri nets with interval inhibitor arcs to illustrate the proposed firing policies. In Fig. 8.2(a), t is disabled at a marking M if 4 M(p) 5 and t is enabled at M if M(p) < 4orM(p) > 5. Once t is enabled, its firing does not change the tokens in p. In Fig. 8.2(b), t is disabled at a marking M if M(p) < 2or4 M(p) 5, and t is enabled at M if 2 M(p) < 4orM(p) > 5. Once t is enabled, its firing removes two tokens from p. In Fig. 8.2(c), t is disabled at a marking M if 4 M(p) 5 and t is enabled at M if M(p) < 4orM(p) > 5. Once t is enabled, its firing adds two tokens to p. In Fig. 8.2(d), t is disabled at a marking M if M(p) 5, and t is enabled at M if M(p) > 5. Once t is enabled, its firing removes four tokens from p. In Fig. 8.2(e), t is disabled at a marking M if M(p) < 7, and t is enabled at M if M(p) 7. Once t is enabled, its firing removes seven tokens from p. (a) (b) (c) (d) (e) Fig. 8.2 Simple examples of Petri nets with interval inhibitor arcs. Interval inhibitor arcs are a generalization of inhibitor arcs. An inhibitor arc from a place p to a transition t means that t is disabled by p at a marking M if M(p) 1, which is equivalent to Å(p, t) = [1, + ). Property 8.1 An inhibitor arc can be represented by an interval inhibitor arc Å(p, t) = [a, b] with a = 1 and b K p, where K p is the bound of p. For a transition t, if there are both a normal arc W(p, t) = w or W(t, p) = w and an interval inhibitor arc Å(p, t) = [a, b], they can be represented in a compact way, as shown in Fig

192 8.2. INTERVAL INHIBITOR ARC (a) (b) Fig. 8.3 The simplified representations for (a) W(p, t) = w and Å(p, t) = [a, b], and (b) W(t, p) = w and Å(p, t) = [a, b]. For the cases in Fig. 8.3, we have the following firing policies. 1) Fig. 8.3(a) : 1.1) t is disabled by p at a marking M if M(p) < w or a M(p) b ; and 1.2) t is enabled if M(p) w and it is not disabled by Å(p, t) = [a, b] (M(p) < a or M(p) > b). Once t is enabled and fires, it yields a new marking M with M (p) = M(p) w. 2) Fig. 8.3(b) : 2.1) t is disabled by p at a marking M if a M(p) b ; and 2.2) t is enabled if it is not disabled by Å(p, t) = [a, b] (M(p) < a or M(p) > b). Once t is enabled and fires, it yields a new marking M with M (p) = M(p) + w. In some special cases, an interval inhibitor arc can have the same disabled function as an arc W(p, t). Then, the interval inhibitor arc can be ignored, as stated as follows. Property 8.2 Suppose that there is an arc from a place p to a transition t with W(p, t) = w. An interval inhibitor arc Å(p, t) = [a, b] is redundant if a = 0 and b w 1. If an interval inhibitor arc is redundant, we do not need to add it to the net model. Thus, the structure is simplified, as shown in Fig. 8.4 as an example with a = 0 and b = w 1. Fig. 8.4 The simplification of a redundant interval inhibitor arc. 191

193 8.2. INTERVAL INHIBITOR ARC Interval inhibitor arcs are also a more general case of self-loops. A self-loop with a weight w between a place p and a transition t means that the transition is disabled by the place if the number of tokens in the place is less than w and its firing does not change the tokens in p. That is to say, t is disabled by p at a marking M if M(p) < w, which is equivalent to Å(p, t) = [0, w 1]. Property 8.3 A selfloop with a weight w can be replaced by an interval inhibitor arc Å(p, t) = [a, b] with a = 0 and b = w 1. The special case of a self-loop replaced by an interval inhibitor arc is shown in Fig Similarly, interval inhibitor arcs can also represent a more general non-pure net structure. Suppose that there is a loop between a place p and a transition t with W(p, t) = w 1 and W(t, p) = w 2. W(p, t) = w 1 means that the transition is disabled at a marking M by p if M(p) < w 1. Once t fires at a marking M with M(p) w 1, it yields a new marking M with M (p) = M(p) w 1 + w 2. That is to say, a loop with W(p, t) = w 1 and W(t, p) = w 2 is equivalent to an interval inhibitor arc Å(p, t) = [0, w 1 1] and a normal arc W(p, t) = w 1 w 2 (w 1 w 2 > 0) or W(t, p) = w 2 w 1 (w 1 w 2 < 0). Fig. 8.5 The special case of a self-loop replaced by an interval inhibitor arc. Property 8.4 A loop with W(p, t) = w 1 and W(t, p) = w 2 can be replaced by an interval inhibitor arc Å(p, t) = [0, w 1 1] and a normal arc W(p, t) = w 1 w 2 (w 1 w 2 > 0)orW(t, p) = w 2 w 1 (w 1 w 2 < 0). The special case of a loop replaced by a net structure with an interval inhibitor arc is shown in Fig Fig. 8.6 The special case of a loop with W(p, t) = w 1 and W(t, p) = w 2 replaced by an interval inhibitor arc Å(p, t) = [0, w 1 1] and a normal arc. 192

194 8.3. OPTIMAL CONTROL PLACE SYNTHESIS WITH INTERVAL INHIBITOR ARCS 8.3 Optimal Control Place Synthesis with Interval Inhibitor Arcs This section proposes the design of control places with interval inhibitor arcs for the optimal supervisory control of a Petri net model. Let G(N, M 0 ) be the reachability graph of a Petri net model, [N] the incidence matrix of N, M L the set of legal markings, and Ω the set of MTSIs. An optimal supervisor can be obtained by designing control places such that (M j, t q ) Ω, t q is disabled at M j and no legal marking is forbidden. Let (M j, t q ) be an MTSI and p s a control place satisfying Eq.(1.13). Meanwhile, there is an interval inhibitor arc Å(p s, t q ) = [a, b]. Next, we develop a technique to design p s that can optimally prevent (M j, t q ), i.e., determine the values of variables l i s, β, a, and b such that the obtained p s can disable t q at M j with all legal markings reachable. First, p s should not forbid any legal marking. Hence, we have n l i M l (p i ) β, M l M L (8.1) i=1 Eq.(8.1) is called the reachability condition. For (M j, t q ), transition t q should be disabled by p s at marking M j. Thus, we have M j (p s ) < W(p s, t q )ora M j (p s ) b. According to Eq.(1.13), we have W(p s, t q ) = n i=1 l i [N](p i, t q ) 1. Since M j (p s ) and W(p s, t q ) are integers, M j (p s ) < W(p s, t q ) can be written as M j (p s ) W(p s, t q ) 1. According to Eq.(1.13), we have M j (p s ) = β n i=1 l i M j (p i ). Thus, M j (p s ) W(p s, t q ) 1 indicates β n l i M j (p i ) i=1 n l i [N](p i, t q ) 1 (8.2) i=1 Simplifying Eq.(8.2), we have n l i ((M j (p i ) + [N](p i, t q )) β + 1 (8.3) i=1 The condition a M j (p s ) b is represented as n a β l i M j (p i ) b (8.4) i=1 1 Note that it is possible n i=1 l i [N](p i, t q ) < 0. In this case, W(p s, t q ) = n i=1 l i [N](p i, t q ) means W(t q, p s ) = n i=1 l i [N](p i, t q ). If W(p s, t q ) = n i=1 l i [N](p i, t q ) < 0, then M j (p s ) < W(p s, t q ) cannot hold. Thus, t q cannot be disabled by p with W(p s, t q ). The reason is that the weight on the arc is W(t q, t q ) = n i=1 l i [N](p i, t q ) > 0, i.e., the place p cannot disable t q since t is an input transition of p s. Thus, it is indisputable to use W(p s, t q ) = n i=1 l i [N](p i, t q ) here without considering that whether it is nonnegative or not. 193

195 8.3. OPTIMAL CONTROL PLACE SYNTHESIS WITH INTERVAL INHIBITOR ARCS Since t q is disabled by p s at M j if Eq.(8.3) or Eq.(8.4) is satisfied. The disjunction of Eqs.(8.3) and (8.4) cannot be directly represented as constraints in an ILPP. In this case, we introduce a binary variable f j {0, 1} into the two equations. Then, Eq.(8.3) is modified as : n l i (M j (p i ) + [N](p i, t q )) Q f j + β + 1 (8.5) i=1 where Q is a positive integer constant that must be big enough. In Eq.(8.5), f j = 0 indicates that Eq.(8.3) is satisfied, and f j = 1 indicates that Eq.(8.3) can either be satisfied or not since Eq.(8.5) does not give any restriction on the variables l i s and β. Next, Eq.(8.4) is modified as : n Q (1 f j ) + a β l i M j (p i ) Q (1 f j ) + b (8.6) i=1 In Eq.(8.6), f j = 1 indicates that Eq.(8.4) is satisfied, and f j = 0 indicates that Eq.(8.4) can either be satisfied or not since Eq.(8.6) does not give any restriction on the variables l i s and β. By combining Eqs.(8.5) and (8.6), we conclude that f j = 0 implies that Eq.(8.3) holds, and f j = 1 indicates that Eq.(8.4) is true. Therefore, Eqs.(8.5) and (8.6) can ensure that at least one of the two equations, Eqs.(8.3) and (8.4), is satisfied. As a result, t q is disabled by p s at M j since M j (p s ) < W(p s, t q )ora M j (p s ) b. At any marking M k E tq, the interval inhibitor arc of p s should not disable transition t q. Hence, we have M k (p s ) a 1orM k (p s ) b + 1, i.e., n n β l i M k (p i ) a 1orβ l i M k (p i ) b + 1, M k E tq (8.7) i=1 i=1 Eq.(8.7) is called the enabled condition. It can be seen that the enabled condition cannot be directly considered as constraints in ILPPs. We introduce a set of binary variables g k s {0, 1} for each marking M k in E tq. Then, Eq.(8.7) is modified as : and n β l i M k (p i ) Q g k + a 1, M k E tq (8.8) i=1 n β l i M k (p i ) Q (1 g k ) + b + 1, M k E tq (8.9) i=1 Eqs.(8.8) and (8.9) can ensure that β n i=1 l i M k (p i ) a 1ifg k = 0 and β n i=1 l i M k (p i ) b + 1ifg k = 1. Hence, Eqs.(8.8) and (8.9) can be used to represent the enabled condition Eq.(8.7). 194

196 8.4. REDUCTION OF SUPERVISORY STRUCTURES Eqs.(8.1), (8.5), (8.6), (8.8), and (8.9) can be combined into an integer linear program to determine l i s (i = 1, 2,...,n), β, a, and b. Then, p s can be computed by Eq.(1.13) with an interval inhibitor arc Å(p s, t q ) = [a, b]. In this case, the obtained control place p s can optimally prevent (M j, t), i.e., all legal markings are reachable and t q is disabled at M j. If all MTSIs are optimally prevented by a set of control places, then we can obtain an optimal supervisor. However, if we design a control place for each MTSI, the obtained supervisory structure is too complex. In the next section, we consider to simplify the supervisory structure by lessening the number of the obtained control places. 8.4 Reduction of Supervisory Structures This section focuses on the reduction of supervisory structures. We first propose a method to design a control place with an interval inhibitor arc associated with a critical transition t q to prevent as many t q -critical MTSIs as possible. Then, the obtained supervisor has a small number of control places. In the best case, the number of the obtained control places is the same as that of the critical transitions, which is bounded by the number of the transitions in a net model. Second, we develop an approach to design a control place with an interval inhibitor arc for each critical transition. Then, an ILPP is proposed to compute a control place with multiple interval inhibitor arcs to prevent as many MTSIs as possible. In the some cases, we can find only one control place to make the net model live with all legal markings Simple Supervisory Structures An MTSI (M, t q ) is disabled by a control place p s if it satisfies the disabled condition. In fact, there may exist another MTSI (M j, t q )(M j M) that satisfies the same disabled condition. In this case, p s can prevent both (M, t q ) and (M j, t q ). That is to say, a control place p s with an interval inhibitor arc associated with t q may prevent more than one MTSI in Ω tq. Thus, we do not need to compute a control place for each MTSI in Ω tq. Next, we propose an approach to design a control place p s with Å(p s, t q ) = [a, b] which can prevent as many t q -critical MTSIs as possible. An MTSI (M j, t q ) Ω tq is prevented if M j satisfies Eqs.(8.2) or (8.4). According to Eq.(8.5), a binary variable f j {0, 1} is used to represent whether Eq.(8.2) holds or not. 195

197 8.4. REDUCTION OF SUPERVISORY STRUCTURES Similar to Eq.(8.6), we introduce a binary variable d j {0, 1} to represent whether Eq.(8.4) holds or not. Eq.(8.4) is modified as : n Q (1 d j ) + a β l i M j (p i ) Q (1 d j ) + b (8.10) i=1 In Eq.(8.10), d j = 1 means that Eq.(8.4) holds and d j = 0 implies that Eq.(8.4) is not ensured to be true and does not restrict the variables in this equation. By considering Eqs.(8.5) and (8.10), we conclude that (M j, t q ) is prevented if f j +d j 1. Thus, we need a binary variable h j to represent whether (M j, t q ) is prevented or not. We have f j + d j = h j (8.11) In Eq.(8.11), h j = 1 means that (M j, t q ) is prevented and h j = 0 implies that (M j, t q ) is not prevented. Now, we have the following objective function to maximize the number of t q -critical MTSIs prevented by p s : max h = M j D tq h j (8.12) For each MTSI (M j, t q ) Ω tq, we have Eqs.(8.5), (8.10), and (8.11). Combining them with Eqs.(8.1), (8.8), (8.9), and (8.12), we can formulate an ILPP to design an optimal control place to prevent as many t q -critical MTSIs as possible, which is denoted as the maximal number of t q -critical MTSIs problem (MNTMP(t q )) : MNTMP(t q ): max h = M j D tq h j sub ject to n l i M l (p i ) β, M l M L (8.13) i=1 β β n l i M k (p i ) Q g k + a 1, M k E tq (8.14) i=1 n l i M k (p i ) Q (1 g k ) + b + 1, M k E tq (8.15) i=1 n l i (M j (p i ) + [N](p i, t q )) Q (1 f j ) + β + 1, M j D tq (8.16) i=1 196

198 8.4. REDUCTION OF SUPERVISORY STRUCTURES n Q (1 d j ) + a β l i M j (p i ) Q (1 d j ) + b, M j D tq (8.17) i=1 f j + d j = h j, M j D tq (8.18) l i {0, 1, 2,...}, i {1, 2,...,n} β, a, b {0, 1, 2, 3,...} g k {0, 1}, M k E tq f j, d j, h j {0, 1}, M j D tq The objective function h can maximize the number of t q -critical MTSIs that are prevented by control place p s. Denote its optimal value by h.ifh = 0, we have h j = 0, M j D tq, implying that no MTSI in Ω tq can be prevented by p s. In this case, the proposed method cannot obtain an optimal control place with an interval inhibitor arc Å(p s, t q ) = [a, b]. If h = Ω tq,wehaveh j = 1, M j D tq, implying that only one control place is required to prevented all MTSIs in Ω tq.if h = Ω tq for each t q in T c, then we can obtain an optimal supervisor such that the number of control places is equal to T c. Theorem 8.1 The control places p s obtained by MNTMP(t q ) cannot prevent any MTSI in Ω tq if h = 0. Proof : If h = 0, we have h j = 0, M j D tq. According to Eqs.(8.16), (8.17), and (8.18), no MTSI in Ω tq can be prevented by p s. The conclusion holds. Theorem 8.2 The control places p s obtained by MNTMP(t q ) is maximally permissive and can prevent some MTSIs in Ω tq if h > 0. Proof : Eq.(8.13) can ensure that each computed control place does not forbid any legal marking. If a transition t q T c is enabled at a good marking, Eqs.(8.14) and (8.15) are used to ensure that the added interval inhibitor arc does not disable its firing at the marking. Thus, p s is maximally permissive. Since h > 0, we conclude that M j D tq, h j = 1. Then, Eqs.(8.16), (8.17), and (8.18) indicate that the MTSI (M j, t q ) is prevented by p s. The conclusion holds. Theorem 8.3 The number of control places in the supervisor obtained by MNTMP(t q ) is equal to T c if h = Ω tq for each t q in T c, where T c T. 197

199 8.4. REDUCTION OF SUPERVISORY STRUCTURES Proof : If h = Ω tq,wehaveh j = 1, M j D tq. Thus, only one control place is computed to prevent all MTSIs in Ω tq. As a result, the total number of the computed control places is equal to T c that is less than or equal to T. The conclusion holds. The computational time to solve an ILPP greatly depends on the number of constraints and variables in it. In this case, we discuss MNTMP(t q ) from the viewpoint of the number of constraints and variables, as shown in Table 8.1. Tab. 8.1 The numbers of constraints and variables in MNTMP(t q ) Eq. number of constraints variable number of variables (8.13) M L l i n = P (8.14) E tq g k E tq (8.15) E tq f j D tq (8.16) D tq d j D tq (8.17) 2 D tq h j D tq (8.18) D tq β, a, b total M L + 2 E tq + 4 D tq total P + E tq + 3 D tq Compressed Supervisory Structures A control place can pertain to multiple interval inhibitor arcs associated with multiple transitions. Then, a control place can prevent MTSIs that have different critical transitions. In this section, we design a control place with an interval inhibitor arc associated with each critical transition. Then, an ILPP is developed to ensure that the obtained control place can prevent as many MTSIs as possible. As a result, the obtained supervisor has a very small number of control places. In the best case, only one control place is obtained to prevent all MTSIs, i.e., the minimal supervisory structure. Let p s be a control place with an interval inhibitor arc for each critical transition, i.e., Å(p s, t q ) = [a q, b q ], t q T c. For an optimal control purpose, Å(p s, t q ) = [a q, b q ] should not disable a critical transition t q T c at any marking M k E tq. Hence, we have M k (p s ) a 1orM k (p s ) b+1. Similar to Eqs.(8.8) and (8.9), we introduce a set of binary variable g k,q s {0, 1} ( M k E tq, t q T c ). Then, the enabled conditions are modified as : β n l i M k (p i ) Q g k,q + a q 1, M k E tq (8.19) i=1 198

200 8.4. REDUCTION OF SUPERVISORY STRUCTURES and n β l i M k (p i ) Q (1 g k,q ) + b q + 1, M k E tq (8.20) i=1 It can be seen that g k,q = 0 means M k (p s ) a q 1 and g k,q = 1 indicates that M k (p s ) b q + 1. Thus, Eqs.(8.19) and (8.20) can ensure that t q T c, t q is not disabled by the interval inhibitor arc Å(p s, t q ) = [a q, b q ]atanyt q -enabled good marking. For each MTSI (M j, t q ), we introduce a binary variable f j,q {0, 1} to represent whether equation M j (p s ) < W(p s, t q ) holds or not, i.e., n l i (M j (p i ) + [N](p i, t)) Q (1 f j,q ) + β + 1 (8.21) i=1 It can be seen that f j,q = 1 means that equation M j (p s ) < W(p s, t q ) holds and f j,q = 0 implies that the equation is not ensured to be true and does not restrict the variables in the equation. Similar to Eq.(8.10), we introduce a binary variable d j,q {0, 1} to represent whether equation a q M j (p s ) b q holds or not, i.e., Q (1 d j,q ) + a q β n l i M j (p i ) Q (1 d j,q ) + b q (8.22) i=1 In Eq.(8.22), d j,q = 1 means that equation M j (p s ) < W(p s, t q ) holds and d j,q = 0 implies that the equation is not ensured to be true and does not restrict the variables in it. By considering Eqs.(8.21) and (8.22), (M j, t q ) is prevented if f j,q + d j,q 1. Thus, we need a binary variable h j,q to represent whether (M j, t q ) is prevented or not. We have f j,q + d j,q = h j,q (8.23) Due to Eq.(8.23), h j,q = 1 means that (M j, t q ) is prevented and h j,q = 0 implies that (M j, t q )is not prevented. Now, we have the following objective function to maximize the number of MTSIs prevented by p s : max h = h j,q (8.24) (M j,t q ) Ω For each MTSI (M j, t q ) Ω, we have Eqs.(8.21), (8.22), and (8.23). Combining them with Eqs.(8.1), (8.19), (8.20), and (8.24), we can obtain an ILPP to design an optimal control place to 199

201 8.4. REDUCTION OF SUPERVISORY STRUCTURES prevent as many MTSIs as possible, which is denoted as the maximal number of MTSIs problem (MNMP) : MNMP : max h = (M j,t q ) Ω h j,q sub ject to n l i M l (p i ) β, M l M L (8.25) i=1 β β n l i M k (p i ) Q g k,q + a q 1, M k E tq, t q T c (8.26) i=1 n l i M k (p i ) Q (1 g k,q ) + b q + 1, M k E tq, t q T c (8.27) i=1 n l i (M j (p i ) + [N](p i, t q )) Q (1 f j,q ) + β + 1, (M j, t q ) Ω (8.28) i=1 Q (1 d j,q ) + a q β n l i M j (p i ) Q (1 d j,q ) + b q, (M j, t q ) Ω (8.29) i=1 f j,q + d j,q = h j,q, (M j, t q ) Ω (8.30) l i {0, 1, 2,...}, i {1, 2,...,n} β {0, 1, 2, 3,...} a q, b q {0, 1, 2, 3,...}, t q T c g k,q {0, 1}, M k E tq, t q T c f j,q, d j,q, h j,q {0, 1}, (M j, t q ) Ω The objective function h is used to maximize the number of MTSIs that are prevented by control place p s. Denote its optimal value by h.ifh = 0, we have h j,q = 0, (M j, t q ) Ω, implying that no MTSI in Ω can be prevented by p s. In this case, the proposed method cannot obtain an optimal control place with interval inhibitor arcs Å(p s, t q ) = [a q, b q ]. If h = Ω, we have h j,q = 1, (M j, t q ) Ω, implying that only one control place is required to prevented all MTSIs in Ω. Theorem 8.4 The control places p s obtained by MNMP cannot prevent any MTSI in Ω if h =

202 8.5. REDUCTION OF CONSIDERED LEGAL MARKINGS FOR FMSS Proof : If h = 0, we have h j,q = 0, (M j, t q ) Ω. According to Eqs.(8.28), (8.29), (8.30), no MTSI in Ω can be prevented by p s. Theorem 8.5 The control places p s obtained by MNMP is maximally permissive and can prevent some MTSIs in Ω if h > 0. Proof : Eq.(8.25) can ensure that each computed control place does not forbid any legal marking. If a transition t q T c is enabled at a good marking, Eqs.(8.26) and (8.27) are used to ensure that the added interval inhibitor arc does not disable its firing at the marking. Thus, p s is maximally permissive. Since h > 0, we conclude that (M j, t q ) Ω, h j,q = 1. Then, Eqs.(8.16), (8.17), and (8.18) indicate that the MTSI (M j, t q ) is prevented by p s. The conclusion holds. Theorem 8.6 The supervisor obtained by MNMP has only one control place if h = Ω. Proof : If h = Ω,wehaveh j,q = 1, (M j, t q ) Ω, implying that every MTSI is prevented by the obtained control place p s. Then, the conclusion holds. Finally, we summarize the numbers of the constraints and variables in MNMP in Table 8.2. Tab. 8.2 The numbers of constraints and variables in MNMP Eq. number of constraints variable number of variables (8.25) M L l i n = P (8.26) t q T c E tq g k,q t q T c E tq (8.27) t q T c E tq f j,q Ω (8.28) Ω d j,q Ω (8.29) 2 Ω h j,q Ω (8.30) Ω a q T c b q β 1 total M L + 2 t q T c E tq + 4 Ω total P + t q T c E tq +3 Ω +2 T c +1 T c 8.5 Reduction of Considered Legal Markings for FMSs The problem considered in Section 8.4 are NP-hard since we need to solve ILPPs. The two ILPPs proposed in Section 8.4 cannot be applied to large-scale Petri net models if they have too 201

203 8.5. REDUCTION OF CONSIDERED LEGAL MARKINGS FOR FMSS many constraints and variables. In fact, if we focus on the Petri net models of FMSs, the number of constraints can be reduced. In this section, we briefly recall a marking reduction approach in [6] for Petri net models of FMSs to reduce the number of markings to be considered. In the case, the computational overhead can be reduced. For the Petri net model of an FMS, its places can be classified into three categories : idle, operation (activity), and resource places whose sets are denoted as P 0, P A, and P R, respectively [18; 66; 79; 102]. In Uzam and Zhou s work [85], only the tokens in operation places are considered to construct a PI associated with a control place. In this case, we introduce a marking reduction technique that is originally from [6], aiming to reduce the number of considered markings in M L. In the following, N A denotes {i p i P A } for an expedient description. Then, the reachability condition, Eq.(8.1), is modified as follows : i N A l i M l (p i ) β, M l M L (8.31) Corollary 2.4 indicates that if a PI does not forbid any marking in M L, no legal marking is forbidden. As a result, we only consider the markings in M L conditions. Therefore, Eq.(8.31) can be reduced as : to guarantee the reachability i N A l i M l (p i ) β, M l M L (8.32) Now, we can use Eq.(8.32) to replace the reachability conditions in MNTMP(t) and MNMP, i.e., Eqs.(8.13) and (8.25), respectively. Similarly, for all other constraints in MNTMP(t q ) and MNMP, we only consider the places in P A. In this case, the number of constraints and variables in the two ILPPs can be reduced. Due to the limited space, we do not show the two reduced ILPPs since they can be easily obtained by using P A instead of P. The numbers of constraints and variables in the two reduced ILPPs for FMSs are shown in Table 8.3. Note that P A P. Thus, the number of variables are also reduced. On the other hand, if we do not consider net models of FMSs, we must add a reachability condition for each legal marking. Then, the two ILPPs can be used to design an optimal supervisor for any bounded Petri net model but they may have too many constraints. 202

204 8.6. DEADLOCK PREVENTION POLICIES Tab. 8.3 The numbers of constraints and variables in MNTMP(t q ) and MNMP for FMSs ILPP number of constraints number of variables MNTMP(t q ) M L + 2 E t q + 4 D tq P A + E tq + 3 D tq + 3 MNMP M L +2 t q T c E tq +4 Ω P A + t q T c E tq + 3 Ω + 2 T c Deadlock Prevention Policies This section develops two deadlock prevention policies based on the two ILPPs proposed in the previous sections, which can obtain optimal Petri net supervisors with interval inhibitor arcs. A simple example is also provided to illustrate the proposed approaches. Let p s be a control place with interval inhibitor arcs and Ω ps denotes the set of MTSIs that are prevented by p s, i.e., Ω ps = {(M, t) Ω (M, t) is prevented by p s } (8.33) Next, we propose the two deadlock control policies as follows : Algorithm 8.1 Computation of optimal control places by MNTMP(t). Input : a Petri net model (N, M 0 ) with N = (P, T, F, W). Output : an optimally controlled Petri net system (N α, M0 α). 1. Compute the set M L of legal markings and the set Ω of MTSIs for (N, M 0 ). /* If(N, M 0 ) models an FMS, we also compute the minimal covering set M L of legal markings from M L.*/ 2. Compute the set T c of critical transitions. 3. V M :=. /* V M is used to denote the set of control places to be computed.*/ 4. for each t q T c do Derive the set G tq of t q -good markings and the set D tq of t q -dangerous markings from the set of legal markings. Derive the set E tq of t q -enabled good markings from G tq. Compute the set Ω tq of t q -critical MTSIs by D tq. while {Ω tq } do Solve MNTMP(t q ). 203

205 8.6. DEADLOCK PREVENTION POLICIES if {h = 0} then Exit, as no control place can be obtained. else Let l i s (i {1, 2,...,n}), β, a, and b be the solution. Compute control place p s with an interval inhibitor arc Å(p s, t q ) = [a, b]. V M := V M {p s } and Ω tq :=Ω tq \ Ω ps. endif endwhile 5. Add all control places in V M to (N, M 0 ) and denote the resulting net system as (N α, M0 α). 6. Output (N α, M0 α). 7. End. Algorithm 8.2 Computation of optimal control places by MNMP. Input : a Petri net model (N, M 0 ) with N = (P, T, F, W). Output : an optimally controlled Petri net system (N α, M0 α). 1. Compute the set M L of legal markings and the set Ω of MTSIs for (N, M 0 ). /* If(N, M 0 ) models an FMS, we also compute the minimal covering set M L of legal markings from M L.*/ 2. Compute the set of critical transitions T c. 3. V M :=. /* V M is used to denote the set of control places to be computed.*/ 4. for each t q T c do Derive the set G tq of t q -good markings and the set D tq of t q -dangerous markings from the set of legal markings. Derive the set E tq of t q -enabled good markings from G tq. 5. while {Ω } do Solve MNMP. if {h = 0} then 204

206 8.6. DEADLOCK PREVENTION POLICIES Exit, as no control place can be obtained. else Let l i s (i {1, 2,...,n}), β, a q s, and b q s (t q T c ) be the solution. Compute control place p s with an interval inhibitor arc Å(p s, t q ) = [a q, b q ] for each t q T c. V M := V M {p s } and Ω := Ω\ Ω ps. endif endwhile 6. Add all control places in V M to (N, M 0 ) and denote the resulting net system as (N α, M0 α). 7. Output (N α, M0 α). 8. End. Both Algorithms 8.1 and 8.2 require to compute the reachability graph of a net model only once. At each iteration, an optimal control place is designed to prevent some MTSIs. The process carries out until all MTSIs are prevented. Then, the obtained supervisor can make the net model live with all its legal markings, i.e., it is maximally permissive. The difference is that the ILPP in Algorithm 8.1 has less constraints than the one in Algorithm 8.2 but Algorithm 8.2 can lead to an optimal supervisor with less number of control places than Algorithm 8.1. That is to say, Algorithm 1 is computationally more efficient but Algorithm 2 can lead to structurally simpler supervisors. Thus, given a net model, we can use Algorithm 2 first since it can lead to more compact supervisory structures. Once Algorithm 2 fails due to too many constraints and variables in the ILPPs, we can use Algorithm 1 since it is computationally more efficient. Now we discuss the computational complexity problems of Algorithms 8.1 and 8.2. First, they are based on reachability graph analysis that always suffers from the state explosion problem since the number of reachable markings increases exponentially with respect to the size of a Petri net model. Second, we need to solve ILPPs, which are NP-hard. The computational time to solve an ILPP greatly depends on the number of constraints and variables. For the net models of FMSs, we propose a marking reduction technique to reduce the number of constraints in the ILPPs, aiming to reduce the computational burden of the proposed methods. In summary, the computational 205

207 8.6. DEADLOCK PREVENTION POLICIES complexity of the proposed methods is still NP-hard. Theorem 8.7 Algorithm 8.1 can obtain a maximally permissive net supervisor for a Petri net model if MNTMP(t q ) has a solution with h > 0 for each MTSI in Ω tq, t q T c. Proof : Since MNTMP(t) has a solution for each MTSI in Ω tq,wehaveh > 0 for MNTMP(t q ) at each iteration. According to Theorem 8.2, the obtained control place is maximally permissive and can prevent some MTSIs. Then, we remove all the MTSIs prevented by the obtained control place. The process cannot terminate until all MTSIs in Ω tq are prevented. Finally, for each t q T c, its critical MTSIs are prevented. Then, all MTSIs are prevented. That is to say, the final controlled system is live with all legal markings. The conclusion holds. Theorem 8.8 Algorithm 8.2 can obtain a maximally permissive net supervisor for a Petri net model if MNMP has a solution with h > 0 for each MTSI in Ω. Proof : Since MNMP has a solution for each MTSI in Ω, wehaveh > 0 for MNMP at each iteration. According to Theorem 8.5, the obtained control place is maximally permissive and can prevent some MTSIs. Then, we remove all the MTSIs prevented by the obtained control place. The process cannot terminate until all MTSIs in Ω are prevented. As a result, the final controlled system is live with all legal markings. The conclusion holds. In the following, a simple example is used to demonstrate the proposed approaches in detail. In Fig. 8.7, we present a Petri net model that cannot be optimally controlled by a pure net supervisor. This fact can be verified by the work in [31], [83], and Chapters 2 and 3. Fig. 8.8 shows its reachability graph. The net has 15 reachable states, 11 of which are legal. There are four MTSIs : (M 1, t 4 ), (M 2, t 1 ), (M 3, t 4 ), (M 6, t 1 ). None of them can be optimally implemented by the methods presented in [31] and [83]. Therefore, the Petri net model does not have an optimal pure Petri net supervisor. Next, we show the applications of Algorithms 8.1 and 8.2 to this net model. The model has 11 legal markings, M L = {M 0, M 1, M 2, M 3, M 4, M 7, M 8, M 11, M 12, M 14 }. It has two critical transitions t 1 and t 4, i.e., T c = {t 1, t 4 }. Thus, all MTSIs are classified into two sets : Ω t1 = {(M 2, t 1 ), (M 6, t 1 )} and Ω t4 = {(M 1, t 4 ), (M 3, t 4 )}. Fort 1, there are four t 1 -enabled good markings, 206

208 8.6. DEADLOCK PREVENTION POLICIES Fig. 8.7 A Petri net model. Fig. 8.8 The reachability graph of the net in Fig

209 8.6. DEADLOCK PREVENTION POLICIES i.e., E t1 = {M 0, M 1, M 4, M 8 }. Similarly, we have E t4 = {M 0, M 2, M 7, M 11 }. First, we consider the application of Algorithm 8.1. For critical transition t 1, we design a control place p s1 with an interval inhibitor arc Å(p s1, t 1 ) = [a, b]. No legal marking is forbidden by p s1. Therefore, considering the 11 legal markings in M L,wehave 3l 1 + 3l 6 + 2l 7 + 2l 8 β, 2l 1 + l 2 + 3l 6 + l 7 + 2l 8 β, 2l 1 + l 3 + 3l 6 + 2l 7 β, l 1 + 2l 2 + 3l 6 + 2l 8 β, l 1 + l 2 + l 3 + 3l 6 + l 7 β, 2l 2 + l 3 + 3l 6 β, 3l 1 + l 4 + 2l 6 + 2l 7 + l 8 β, 3l 1 + l 5 + 2l 6 + 2l 8 β, 3l 1 + 2l 4 + l 6 + 2l 7 β, 3l 1 + l 4 + l 5 + l 6 + l 8 β, 3l 1 + 2l 4 + l 5 β. Control place p s1 should not disable the firing of t 1 at its enabled good markings. Thus, four binary variables g k s (k = {0, 1, 4, 8}) are introduced for the four markings in E t1. The enabled and conditions are : β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q g 0 + a 1, β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q (1 g 0 ) + b + 1, β (2l 1 + l 2 + 3l 6 + l 7 + 2l 8 ) Q g 1 + a 1, β (2l 1 + l 2 + 3l 6 + l 7 + 2l 8 ) Q (1 g 1 ) + b + 1, β (2l 1 + l 3 + 3l 6 + 2l 7 ) Q g 4 + a 1, β (2l 1 + l 3 + 3l 6 + 2l 7 ) Q (1 g 4 ) + b + 1, β (l 1 + l 2 + l 3 + 3l 6 + l 7 ) Q g 8 + a 1, β (l 1 + l 2 + l 3 + 3l 6 + l 7 ) Q (1 g 8 ) + b + 1. and Now we consider the disabled conditions for the two MTSIs in Ω t1. Two binary variables f j s ( j = {2, 6}) are introduced to represent whether p s1 prevents the two MTSIs (M 2, t 1 ) and (M 6, t 1 )by arc W(p s1, t 1 ), respectively. By considering [N](p 1, t 1 ) = 1, [N](p 2, t 1 ) = 1, and [N](p 7, t 1 ) = 1, we have l 1 (3 1) + l 2 + l 4 + 2l 6 + l 7 (2 1) + l 8 Q (1 f 2 ) + β + 1 l 1 (3 1) + l 2 + 2l 4 + l 6 + l 7 (2 1) Q (1 f 6 ) + β + 1. and We also introduce two binary variables d j s ( j = {2, 6}) to represent whether p s1 prevents the two MTSIs (M 2, t 1 ) and (M 6, t 1 ) by the interval inhibitor arc Å(p s1, t 1 ) = [a, b], respectively. Then, we have Q (1 d 2 ) + a β (3l 1 + l 4 + 2l 6 + 2l 7 + l 8 ) Q (1 d 2 ) + b Q (1 d 6 ) + a β (3l 1 + 2l 4 + l 6 + 2l 7 ) Q (1 d 6 ) + b. 208 and

210 8.6. DEADLOCK PREVENTION POLICIES Then, two binary variables h j s ( j = {2, 6}) are introduced to represent whether p s1 prevents the two MTSIs (M 2, t 1 ) and (M 6, t 1 ), respectively. Hence, we have f 2 + d 2 = h 2 f 6 + d 6 = h 6. and An objective function is used to maximize the number of MTSIs that are prevented by p s1,as presented below : max h = h 2 + h 6. By considering the above constraints, we have an ILPP, namely MNTMP(t 1 ). MNTMP(t 1 ): max f = f 2 + f 7 sub ject to 3l 1 + 3l 6 + 2l 7 + 2l 8 β 2l 1 + l 2 + 3l 6 + l 7 + 2l 8 β 2l 1 + l 3 + 3l 6 + 2l 7 β l 1 + 2l 2 + 3l 6 + 2l 8 β l 1 + l 2 + l 3 + 3l 6 + l 7 β 2l 2 + l 3 + 3l 6 β 3l 1 + l 4 + 2l 6 + 2l 7 + l 8 β 3l 1 + l 5 + 2l 6 + 2l 8 β 3l 1 + 2l 4 + l 6 + 2l 7 β 3l 1 + l 4 + l 5 + l 6 + l 8 β 3l 1 + 2l 4 + l 5 β β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q g 0 + a 1 β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q (1 g 0 ) + b + 1 β (2l 1 + l 2 + 3l 6 + l 7 + 2l 8 ) Q g 1 + a 1 β (2l 1 + l 2 + 3l 6 + l 7 + 2l 8 ) Q (1 g 1 ) + b

211 8.6. DEADLOCK PREVENTION POLICIES β (2l 1 + l 3 + 3l 6 + 2l 7 ) Q g 4 + a 1 β (2l 1 + l 3 + 3l 6 + 2l 7 ) Q (1 g 4 ) + b + 1 β (l 1 + l 2 + l 3 + 3l 6 + l 7 ) Q g 8 + a 1 β (l 1 + l 2 + l 3 + 3l 6 + l 7 ) Q (1 g 8 ) + b + 1 l 1 (3 1) + l 2 + l 4 + 2l 6 + l 7 (2 1) + l 8 Q (1 f 2 ) + β + 1 l 1 (3 1) + l 2 + 2l 4 + l 6 + l 7 (2 1) Q (1 f 6 ) + β + 1 Q (1 d 2 ) + a β (3l 1 + l 4 + 2l 6 + 2l 7 + l 8 ) Q (1 d 2 ) + b Q (1 d 6 ) + a β (3l 1 + 2l 4 + l 6 + 2l 7 ) Q (1 d 6 ) + b f 2 + d 2 = h 2 f 6 + d 6 = h 6 l i {0, 1, 2,...}, i {1, 2, 3, 4, 5, 6, 7, 8} β, a, b {0, 1, 2, 3,...} g k {0, 1}, k {0, 1, 4, 8} f j, d j, h j {0, 1}, j {2, 6} The obtained ILPP has an optimal solution with l 4 = 1, β = 2, a = 0, b = 1, and h = 2. Then we can design a control place p s1 with an interval inhibitor arc Å(p s1, t 1 ) = [a, b], where p s1 satisfies constraint : μ 4 2. That is to say, p s1 = {t 5 }, p s 1 = {t 4 }, M 0 (p s1 ) = 2, and Å(p s1, t 1 ) = [0, 1]. Similarly, let p s2 be a control place with an interval inhibitor arc Å(p s2, t 4 ) = [a, b]. Then, MNTMP(t 4 ) can be obtained. Due to limited space, we do not provide the details of MNTMP(t 4 ). By solving MNTMP(t 4 ), we can obtain an optimal solution with l 2 = 1, β = 2, a = 0, b = 1, and h = 2. Then, we can design a control place p s2 with an interval inhibitor arc Å(p s2, t 4 ) = [a, b], where p s2 satisfies constraint μ 2 2. That is to say, p s2 = {t 2 }, p s 2 = {t 1 }, M 0 (p s2 ) = 2, and Å(p s2, t 4 ) = [0, 1]. Finally, two control places are obtained, which can make the net model live with all 11 legal markings. Table 8.4 shows the application of the proposed policy, where t i is a critical transition, N con and N var indicate the numbers of constraints and variables in MNTMP(t i ), respectively, E ti, and Ω ti represent the numbers of markings in E ti and Ω ti, respectively, I i is the computed PI, Å(p s, t i ) indicates the interval inhibitor arc, and p s, p s, and M 0 (p s ) in the eighth to tenth columns 210

212 .. & ' / 8.6. DEADLOCK PREVENTION POLICIES show the preset, postset, and the initial marking of the computed control place p s, respectively. The final optimally controlled system is shown in Fig. 8.9(a). Tab. 8.4 Experimental results for the net shown in Fig. 8.7 by Algorithm 8.1 t i N con N var E ti D ti I i Å(p s, t i ) p s p s M 0 (p s ) t μ 4 2 [0,1] t 5 t 4 2 t μ 2 2 [0,1] t 2 t 1 2 % & ' ( ) * +, - ( ) * +, - / 0 1! " # $! " # $ % (a) (b) Fig. 8.9 (a) The optimal net supervisor obtained by Algorithm 8.1 and (b) the optimal net supervisor obtained by Algorithm 8.2. Next, we apply Algorithm 8.2 to this net model. Let p s be a control place with two interval inhibitor arcs Å(p s, t 1 ) = [a 1, b 1 ] and Å(p s, t 4 ) = [a 4, b 4 ]. The reachability conditions for legal markings are the same as that in MNTMP(t 1 ). Hence, we only provide the enabled conditions and disabled conditions. Control place p s should not disable the firing of t 1 at its enabled good markings. Thus, four binary variables g k,1 s (k = {0, 1, 4, 8}) for the four markings in E t1 introduced. Then, the enabled conditions are : are β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q g 0,1 + a 1 1, β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q (1 g 0,1 ) + b 1 + 1, β (2l 1 + l 2 + 3l 6 + l 7 + 2l 8 ) Q g 1,1 + a 1 1, β (2l 1 + l 2 + 3l 6 + l 7 + 2l 8 ) Q (1 g 1,1 ) + b 1 + 1, β (2l 1 + l 3 + 3l 6 + 2l 7 ) Q g 4,1 + a 1 1, β (2l 1 + l 3 + 3l 6 + 2l 7 ) Q (1 g 4,1 ) + b 1 + 1, β (l 1 + l 2 + l 3 + 3l 6 + l 7 ) Q g 8,1 + a 1 1, β (l 1 + l 2 + l 3 + 3l 6 + l 7 ) Q (1 g 8,1 ) + b and 211

213 8.6. DEADLOCK PREVENTION POLICIES Similarly, for transition t 4, four binary variables g k,4 s (k = {0, 2, 7, 11}) are introduced for the four markings in E t4. The enabled conditions are : β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q g 0,4 + a 4 1, β (3l 1 + 3l 6 + 2l 7 + 2l 8 ) Q (1 g 0,4 ) + b 4 + 1, β (3l 1 + l 4 + 2l 6 + 2l 7 + l 8 ) Q g 2,4 + a 4 1, β (2l 1 + l 4 + 3l 6 + 2l 7 + l 8 ) Q (1 g 2,4 ) + b 4 + 1, β (3l 1 + l 5 + 2l 6 + 2l 8 ) Q g 7,4 + a 4 1, β (3l 1 + l 5 + 2l 6 + 2l 8 ) Q (1 g 7,4 ) + b 4 + 1, β (3l 1 + l 4 + l 3 + l 6 + l 8 ) Q g 11,4 + a 4 1, β (3l 1 + l 4 + l 3 + l 6 + l 8 ) Q (1 g 11,4 ) + b and Now we consider the disabled conditions for the two MTSIs in Ω t1. Two binary variables f j,1 s ( j = {2, 6}) are introduced to represent whether p s disables the two MTSIs (M 2, t 1 ) and (M 6, t 1 )by arc W(p s, t 1 ), respectively. By considering [N](p 1, t 1 ) = 1, [N](p 2, t 1 ) = 1, and [N](p 7, t 1 ) = 1, we have l 1 (3 1) + l 2 + l 4 + 2l 6 + l 7 (2 1) + l 8 Q (1 f 2,1 ) + β + 1 l 1 (3 1) + l 2 + 2l 4 + l 6 + l 7 (2 1) Q (1 f 6,1 ) + β + 1. and For transition t 4, two binary variables f j,4 s ( j = {1, 3}) are introduced to represent whether p s prevents the two MTSIs (M 1, t 4 ) and (M 3, t 4 ) by arc W(p s, t 4 ), respectively. By considering [N](p 4, t 4 ) = 1, [N](p 6, t 4 ) = 1, and [N](p 8, t 4 ) = 1, we have 2l 1 + l 2 + l 4 + l 6 (3 1) + l 7 + l 8 (2 1) Q (1 f 1,4 ) + β + 1 l 1 + 2l 2 + l 4 + l 6 (3 1) + l 8 (2 1) Q (1 f 3,4 ) + β + 1. and We also introduce two binary variables d j,1 s ( j = {2, 6}) to represent whether p s prevents the two MTSIs (M 2, t 1 ) and (M 6, t 1 ) by the interval inhibitor arc Å(p s, t 1 ) = [a 1, b 1 ], respectively. Hence, we have Q (1 d 2,1 ) + a 1 β (3l 1 + l 4 + 2l 6 + 2l 7 + l 8 ) Q (1 d 2,1 ) + b 1 Q (1 d 6,1 ) + a 1 β (3l 1 + 2l 4 + l 6 + 2l 7 ) Q (1 d 6,1 ) + b 1. and Then, two binary variables h j,1 s ( j = {2, 6}) are introduced to represent whether p s prevents the two MTSIs (M 2, t 1 ) and (M 6, t 1 ), respectively. Then, we have f 2,1 + d 2,1 = h 2,1 f 6,1 + d 6,1 = h 6,1. and For transition t 4, we introduce two binary variables d j,4 s ( j = {1, 3}) to represent whether p s prevents the two MTSIs (M 1, t 4 ) and (M 3, t 4 ) by the interval inhibitor arc Å(p s, t 4 ) = [a 4, b 4 ], 212

214 8.7. EXPERIMENTAL RESULTS respectively. Thus, we have Q (1 d 1,4 ) + a 4 β (2l 1 + l 2 + 3l 6 + l 7 + 2l 8 ) Q (1 d 1,4 ) + b 4 Q (1 d 3,4 ) + a 4 β (l 1 + 2l 2 + 3l 6 + 2l 8 ) Q (1 d 3,4 ) + b 4. and Then, two binary variables h j,4 s ( j = {1, 3}) are introduced to represent whether p s prevents the two MTSIs (M 1, t 4 ) and (M 3, t 4 ), respectively. As a result, we have f 1,4 + d 1,4 = h 1,4 f 3,4 + d 3,4 = h 3,4. and An objective function is used to maximize the number of MTSIs that are prevented by p s,as presented below : max h = h 2,1 + h 6,1 + h 1,4 + h 3,4. By summarizing the above constraints, we obtain an ILPP, namely MNMP. The obtained MNMP has an optimal solution with l 2 = 1, l 4 = 3, β = 6, a 1 = 0, b 1 = 3, a 4 = 4, b 4 = 5, and h = 4. Then we can design a control place p s with two interval inhibitor arcs Å(p s, t 1 ) = [a 1, b 1 ] and Å(p s, t 4 ) = [a 4, b 4 ], where p s satisfies the constraint μ 2 + 3μ 4 6. That is to say, we have p s = {t 2, 3t 5 }, p s = {t 1, 3t 4 }, M 0 (p s ) = 6, Å(p s, t 1 ) = [0, 3], and Å(p s, t 4 ) = [4, 5]. Finally, only one control place is obtained by Algorithm 8.2, which can make the controlled system live with all 11 legal markings. The result is shown in Table 8.5, where the first column i indicates the iteration number, and N con and N var indicate the numbers of constraints and variables in MNMP at each iteration, respectively. The final optimally controlled system is shown in Fig. 8.9(b). Tab. 8.5 Experimental results for the net shown in Fig. 8.7 by Algorithm 8.2 i N con N var h I i Å(p s, t) p s p s M 0 (p s ) Å(p l 2 +3μ 4 6 s, t 1 ) = [0, 3] Å(p s, t 4 ) = [4, 5] t 2, 3t 5 t 1, 3t Experimental Results In this section, a number of widely studied examples of FMSs are provided to show the experimental results of the proposed methods. As stated in Section 8.5, only the markings in the 213

215 8.7. EXPERIMENTAL RESULTS minimal covering set of legal markings are necessary to design the reachability conditions, which can greatly reduce the number of constraints in the proposed ILPPs. The proposed computational times refer to CPU s seconds in a computer under Windows XP operating system with Intel CPU Core 2.8 GHz and 4 GB memory. Fig shows a Petri net model of an FMS. The places have the following set partitions : P 0 = {p 1, p 8 }, P R = {p 9 p 11 }, and P A = {p 2 p 7 }. It has 39 reachable markings, 23 of which are legal. By using the marking reduction approach, the minimal covering set of legal markings has two elements, i.e., M L = 2. The model has 10 MTSIs and two critical transitions t 1 and t 5, i.e., T c = {t 1, t 5 } and Ω t1 = Ω t5 = 5. There are seven t 1 -enabled good markings and seven t 5 -enabled good markings, i.e., E t1 = E t5 = 7. Tables 8.6 and 8.7 show the applications of Algorithms 8.1 and 8.2, respectively. The supervisors obtained by Algorithms 8.1 and 8.2 are shown in Figs. 8.11(a) and 8.11(b), respectively. Fig Petri net model of an FMS. Tab. 8.6 Experimental results for the net shown in Fig by Algorithm 8.1 t i N con N var E ti D ti I i Å(p s, t i ) p s p s M 0 (p s ) t μ 5 + μ 6 3 [0,2] t 5 t 7 3 t μ 2 + μ 3 3 [0,2] t 3 t 1 3 For this example, the theory of regions in [31] and [83] cannot design an optimal Petri net supervisor since it has no optimal supervisor expressed by pure Petri nets. Only the work in Chapter 214

216 * * 7 * * 2 +, 8.7. EXPERIMENTAL RESULTS Tab. 8.7 Experimental results for the net shown in Fig by Algorithm 8.2 i N con N var h I i Å(p s, t) p s p s M 0 (p s ) μ 2 + μ 3 + 4μ 5 + 4μ 6 12 Å(p s, t 1 ) = [0, 8] Å(p s, t 5 ) = [9, 11] t 2, 4t 6 t 1, 4t / , - ( ) / ( ) & ' & ' $ % $ % / 0 1 2! " # / ! " # (a) (b) Fig (a) The optimal net supervisor obtained by Algorithm 8.1 and (b) the optimal net supervisor obtained by Algorithm

217 8.7. EXPERIMENTAL RESULTS 6 can provide a non-pure optimal supervisor with self-loops, which has two control places. Table 8.8 shows the performance comparison of the work in Chapter 6, Algorithm 8.1, and Algorithm 8.2 for this example. From Table 8.8, it can be seen that Algorithms 8.1 and 8.2 and the previous work in Chapter 6 can provide optimal supervisors to make all 23 legal markings reachable. However, there is only one control place in the supervisor obtained by Algorithm 8.2, which is the simplest structure. Tab. 8.8 Performance comparison of deadlock control policies for the net in Fig. 7.6 Parameters Chap. 6 Alg. 1 Alg. 2 No. monitors No. states First, we consider an S 4 PR from [82], as shown in Fig There are nine places and seven transitions. Its places have the following set partitions : P 0 = {p 10, p 20 }, P R = {p 31, p 32 }, and P A = {p 11, p 12, p 13, p 21, p 22 }. It has 20 reachable markings, 13 of which are legal ones. By using the marking reduction approach, M L has three markings only. The net has seven MTSIs and three critical transitions t 1, t 2, and t 5. Tables 8.9 and 8.10 show the applications of Algorithms 8.1 and 8.2, respectively, where the computational time (in Seconds) of solving the ILPP at each iteration is shown in the last column, denoted by τ LP. t 1 t 7 p 10 4 p 11 t 2 p 12 p 31 R1 p p 22 t6 p 21 p 20 4 t 3 p 13 2 R2 t 5 t 4 Fig A Petri net model in Tricas et al. (2005) [82]. Note that in the second row of Table 8.9, we obtain an optimal control place with Å(p s, t 2 ) = 216

218 8.7. EXPERIMENTAL RESULTS Tab. 8.9 Experimental results for the net shown in Fig by Algorithm 8.1 t i N con N var E ti D ti I i Å(p s, t i ) p s p s M 0 (p s ) τ LP (S ) t μ 21 2 [0,1] t 6 t 5 2 < 0.01 t μ 12 1 [0,0] t 3 t 2 1 < 0.01 t μ 11 +μ 12 2 [0,1] t 3 t 1 2 < 0.01 Tab Experimental results for the net shown in Fig by Algorithm 8.2 i N con N var h I i Å(p s, t) p s p s M 0 (p s ) τ LP (S ) Å(p 3μ μ s, t 1 ) = [5, 6] 12 +μ 21 7 Å(p s, t 2 ) = [0, 0] 4t 3, t 6 3t 1, t 2, 7 < Å(p s, t 5 ) = [0, 4] t [0, 0] and W(p s, t 2 ) = 1. According to Property 8.2, Å(p s, t 2 ) = [0, 0] is redundant. This means that for this transition, we do not need to add the interval inhibitor arc Å(p s, t 2 ) = [0, 0]. Finally, Algorithm 8.1 obtains three control places and the resulting controlled system is live with 13 reachable markings that represent the maximally permissive behavior. However, it can be seen from Table 8.10 that Algorithm 8.2 finds an optimal supervisor with only one control place. Note that for this example, the ILPPs in both Algorithms 1 and 2 can be finished in a short time since they have a small number of constraints and variables. This net model does not have an optimal pure Petri net supervisor since we cannot obtain a solution by using the methods in [31], [83], and Chapters 2 and 3. Thus, we can claim that the proposed method can deal with the example that cannot be dealt with by the work in [31], [83], and Chapters 2 and 3. In [82], Tricas et al. add four control places to this model and the controlled model has 10 reachable markings, which means that three legal markings are unreachable in the controlled system. The work in Chapter 6 can find an optimal supervisor with self-loops to make all the 13 legal markings reachable. Considering Algorithm 8.1 for this problem, we obtain an optimal supervisor with three control places, which is the same as that in the work in Chapter 6. However, Algorithm 8.2 can obtain an optimal supervisor with only one control place, which is the simplest supervisory structure. Table 8.11 shows the performance comparison of these policies for this example. Finally, the Petri net model of a well-known FMS shown in Fig is considered. The example is studied in several papers (see [59; 69; 70; 83; 6; 7], and [10]). There are 19 places 217

219 8.7. EXPERIMENTAL RESULTS Tab Performance comparison of deadlock control policies for the S 4 PR in Fig Parameters [82] Chap. 6 Alg. 1 Alg. 2 No. monitors No. states and 14 transitions. The places have the following set partitions : P 0 = {p 1, p 8 }, P R = {p 14 p 19 }, and P A = {p 2 p 7, p 9 p 13 }. It has 282 reachable markings, 205 of which are legal ones. By using the marking reduction approach, M L has only 26 markings. The net has 59 MTSIs and five critical transitions t 1, t 2, t 4, t 9, and t 11. Tables 8.12 and 8.13 show the applications of Algorithms 8.1 and 8.2, respectively. For this example, the number of control places obtained by Algorithm 8.1 is T c = 5 since the optimal solution h of MNTMP(t) is equal to Ω t for each t T c (see Theorem 8.3). Algorithms 8.1 and 8.2 obtain optimal supervisors with five and two control places, respectively, both of which can lead to all 205 legal markings. From the viewpoint of computational costs, it can be seen that the total time for solving the five ILPPs in Algorithm 1 is less than five seconds but the total time for solving only two ILPPs in Algorithm 2 requires 566 seconds. In summary, Algorithm 1 is more efficient than Algorithm 2 but Algorithm 2 can lead to a simpler supervisory structure than Algorithm 1. t 14 t 1 p 13 p 2 t 13 t 2 t3 p 15 p 3 p 4 p 14 p 12 t 12 t 5 t 4 6 p 8 p 11 p p p t 11 t 6 p 17 p 16 p 10 p 6 t 10 p 9 p 19 t 7 p 7 t 9 t 8 Fig Petri net model of an FMS. 218

220 8.8. CONCLUSIONS Tab Experimental results for the net shown in Fig by Algorithm 8.1 t i N con N var E ti D ti I i Å(p s, t) p c p c t μ 3 +4μ 4 +μ 6 +μ 9 + [0,3] 4t 4, 3t 5, t 7, 3t 2 M 0 (p c ) 10 τ LP (S) 1 μ μ t 11, 3t 13, 4t 3, t 6, t 9, 3t 12 t μ 6 + μ 9 + μ 10 3 [0,0] t 7, t 11 t 6, t 9 3 < 1 t μ 3 + μ 6 + 2μ 9 + 2μ 10 5 [0,0] t 5, t 7,2t 11 t 2, t 6, 2t 9 5 < 1 t μ 2 +2μ 3 +μ 4 +2μ 5 + 2μ 6 + 3μ 10 9 [0,2] 2t 7, 3t 11 t 1, t 2, t 4, 3t t μ 3 + μ 12 1 [0,0] t 5, t 13 t 2, t Tab Experimental results for the net shown in Fig by Algorithm 8.2 i N con N var h I i Å(p s, t) p s p s M 0 (p s ) τ LP (S) Å(p s, t 1 ) = [0, 5] 6μ μ 3 + 6μ 4 + 7μ 5 + Å(p s, t 2 ) = [10, 10] μ 6 + 2μ 9 + 2μ μ 11 + Å(p s, t 4 ) = [0, 0] 4t 5, 5t 6, t 7, 6t 1, 5t 2, t 4, μ μ Å(p s, t 9 ) = [0, 1] 10t 14 2t 9, 8t 11 Å(p s, t 11 ) = [0, 9] μ 2 + 2μ 3 + μ 4 + 2μ 5 + 2μ 6 + 3μ 9 + 3μ 10 9 Å(p s, t 1 ) = [0, 0] Å(p s, t 4 ) = [0, 0] Å(p s, t 9 ) = [0, 2] 2t 7, 3t 11 t 1, t 2, t 4, 3t Table 8.14 shows the performance comparison of some policies for this example. It can be seen that the proposed ILPP MNTMP(t) has an optimal solution with h = Ω t for each critical transition t. Thus, Theorem 8.3 is true for this example. In this sense, we can conclude that the monitor solution obtained by Algorithm 8.1 ensures that the number of control places is bounded by T. The supervisor obtained by Algorithm 8.1 has the same number of control places as the one proposed in [10]. However, Algorithm 8.2 presents an optimal supervisor with only two control places, which has the same number of control places as the minimal one proposed in Chapter 3. Tab Performance comparison of some deadlock control policies Parameters [83] [59] [69] Chap. 2 Chap. 3 Chap. 6 Alg. 1 Alg. 2 No. monitors No. states Conclusions This paper proposes a new Petri net structure namely an interval inhibitor arc. An approach to design a control place with an interval inhibitor arc is developed to optimally prevent an MTSI. Then, two ILPPs are designed to simplify the supervisory structure. Compared with the work 219

221 8.8. CONCLUSIONS in [31], [83], and Chapters 2 and 3, the advantage of the proposed method is that the obtained supervisor with interval inhibitor arcs can optimally control some Petri net models that cannot be optimally controlled by pure Petri net supervisors. Compared with our previous work in Chapter 6, Algorithm 8.1 can obtain the same number of control places but Algorithm 8.2 can lead to more compact supervisory structure since self-loops used in Chapter 6 are only a special case of interval inhibitor arcs. Note that the proposed approaches suffer from the computational complexity problem. First, we require to generate the reachability graph of a Petri net model, which always suffers from the state explosion problem. Meanwhile, the proposed methods cannot be applied to unbounded net models. Second, we need to solve ILPPs that are NP-hard. Though we introduce a marking reduction technique to reduce the number of constraints in the ILPPs for Petri net models of FMSs, aiming to reduce the computational burden, the computational complexity of the proposed methods is still NP-hard. Thus, the proposed approaches cannot be applied to large-scaled Petri net models if there are too many constraints and variables in the ILPPs. In the future, we will work on avoiding the full enumeration of reachable markings and the reduction of the constraints in the proposed ILPPs. We will try to extend the proposed approaches to unbounded Petri net models. Deciding the minimality of the computed supervisory structure is also an interesting topic. 220

222 Chapitre 9 Conclusions and Future Research This chapter concludes this thesis. First, we review the major contributions. Second, limitations of the proposed methods are discussed. Finally, we propose some future directions. 9.1 Contributions This thesis investigates some important supervisory control issues in Petri nets for FMSs. The research is based on the reachability graph analysis technique and focuses on deadlock prevention problems, aiming to design liveness-enforcing supervisors. There are three important criteria in evaluating the performance of a liveness-enforcing supervisor for a system to be controlled, which are behavioral permissiveness, structural complexity and computational complexity. A maximally permissive supervisor always implies high utilization of system resources. A supervisor with a small number of control places can decrease the hardware and software costs in the stage of control verification, validation, and implementation. A deadlock control policy with low computational complexity means that it can be applied to large-sized systems. Thus, many efforts are made to develop deadlock prevention algorithms that can obtain liveness-enforcing supervisors with maximal permissibility, simple supervisory structures, and low computational complexity. Four challenges are tackled in this thesis. The first is how to definitely and efficiently find an optimal, i.e., maximally permissive, liveness-enforcing supervisor for an FMS. The second is the derivation of behaviorally optimal and structurally minimal supervisors. The third is that we present an efficient deadlock control policy to design an optimal supervisor with a simple structure. The fourth is to minimize the implementation cost of an optimal supervisor. The fifth is 221

223 9.1. CONTRIBUTIONS that we allow self-loops in an optimal supervisor. The sixth is to optimally control a net system by enforcing the disjunctive constraints. The seventh is that we propose a very general Petri net structure, interval inhibitor arcs, to design optimal supervisors, which may lead to rather simple supervisory structures. In the following, we summary the contributions of this thesis as follows : (1) Design of Optimal Supervisors for FMSs We present a novel and computationally efficient method to design optimal control places and an iteration approach that only compute the reachability graph once to obtain an optimal supervisor for FMS. There are mainly two computational steps in this policy. The first is the complete generation of reachable markings. The second is that we must solve an ILPP to design an optimal control place. In order to reduce the computational cost, we develop a vector covering approach by studying the relations among different markings. The vector covering approach can reduce the legal markings and FBMs into two very small sets, namely a minimal covering set of legal markings and a minimal covered set of FBMs, respectively. When an FBM is selected, a further vector covering approach is applied and a minimal covering set of legal markings is reduced to be a further smaller one. The main contribution of this technique is that it greatly reduces the number of the sets of inequalities and the number of inequalities in each set. It is known that an ILPP is NP-hard. However, the ILPP with only a small number of constraints can be solved efficiently. It can be seen in the experimental results that even for a large-scale example that has more than 80 million of legal markings, the largest number of inequalities for each set is only 322. Thus, the vector covering approach can greatly reduce the computational burden of solving an ILPP and make the proposed method applicable for large-scale Petri nets. (2) Optimal Supervisors with Minimal Supervisory Structure In order to reduce the supervisory structure of an optimal supervisor, we present a deadlock prevention policy to obtain a maximally permissive supervisor with a compressed number of control places if such a supervisor exists. By using the vector covering approach, the sets of legal markings and FBM are reduced to two small ones, i.e., the minimal covering set of legal markings and the minimal covered set of FBM, respectively. A maximally permissive control purpose can be achieved by designing control places such that all markings in the minimal covered set of FBM are forbidden and no marking in the minimal covering set of legal markings is forbidden. An ILPP is designed to minimize the number of control places. The resulting net has the minimal 222

224 9.1. CONTRIBUTIONS number of control places and possesses all permissive states of a plant. The most advantage of the proposed method is that, 1) in term of behavior permissiveness, the derived supervisor is maximally permissive, 2) in term of structural complexity, it has the minimal number of control places, and 3) more importantly, no redundant control place can survive in the supervisor. (3) Behaviorally Optimal and Structurally Simple Supervisors In order to overcome the computational complexity problem in MCPP and ensure that the controlled system is maximally permissive with a simple structure, we develop an iterative deadlock prevention policy and a modified version. At each iteration, a maximally permissive PI is designed to forbid as many FBMs as possible by solving an ILPP. All FBMs that are forbidden by the PI are removed from the minimal covered set of FBMs. This process is carried out until no FBM is left in the minimal covered set. A maximally permissive supervisor with a small number of control places can be accordingly obtained. We also provide a modified version of the above mentioned method in order to further reduce the computational time. In fact, we only modify the iteration steps as follows. At each iteration, an FBM is singled out from the minimal covered set of FBMs and a PI is designed to forbid the selected FBM. The PI is computed by solving an ILPP such that the selected FBM is forbidden and no legal marking in the minimal covering set of legal markings is forbidden. At the same time, we also use an objective function to maximize the number of FBMs that are forbidden by the PI. The modified version has a small number of constraints and variables. Therefore, compared with the former, it can be solved in a shorter time in general. (4) Maximally Permissive Supervisor with the Lowest Implementation Cost We present an approach to to obtain a maximally permissive Petri net supervisor with the lowest implementation cost. A supervisor consists of a set of control places and the arcs connecting control places to transitions. We assign an implementation cost for each control place and control and observation costs for each transition. Based on reachability graph analysis, maximal permissiveness can be achieved by designing place invariants that prohibit all FBMs but no legal markings. By solving an ILPP, a set of optimal control places are obtained and the objective function is used to minimize the implementation cost of the final supervisor. A vector covering approach is used to reduce the number of considered markings, aiming to reduce the computational overhead of the proposed method. 223

225 9.1. CONTRIBUTIONS (5) Maximally Permissive Supervisor with Self-loops We present a mathematical method to design a maximally permissive Petri net supervisor that is expressed by a set of control places with self-loops. A control place with a self-loop can be represented by a constraint and a self-loop associated with a transition whose firing may lead to an illegal marking. The constraint is designed to ensure that all legal markings are reachable and the self-loop is used to prevent the system from reaching illegal markings by disabling the transition at a specific marking. A marking reduction approach is developed in order to cut down the considered markings, which can greatly decrease the computational overhead of the proposed method. An ILPP is developed to compress the number of control places, aiming to reduce the structural complexity of the resulting supervisors. Experimental results demonstrate that it can obtain an optimal supervisor for some cases that cannot be optimally controlled by pure net supervisors. (6) Maximally Permissive Supervisor for Disjunctive Constraints There exist Petri net models whose legal reachability spaces are non-convex. In this case, they cannot be optimally controlled by the conjunctions of linear constraints. For Petri net models of FMSs, we present a method to classify the legal markings into several subsets. Each subset is associated with a linear constraint that can forbid all FBMs. Then, the disjunctions of the obtained constraints can make all legal markings reachable and forbid all FBMs, i.e., the controlled net is live and maximally permissive. An ILPP is formulated to minimize the number of the constraints. A supervisory structure is also proposed to implement the disjunctions of the constraints. Finally, examples are provided to illustrate the proposed method. (7) Maximally Permissive Supervisor with Interval Inhibitor Arcs We present a Petri net structure, namely an interval inhibitor arc, and its application to the optimal supervisory control of Petri nets. An interval inhibitor arc is an arc from a place to a transition labeled with an integer interval. The transition is disabled by the place if the number of tokens in the place is between the labeled interval. The formal definition and the firing rules of Petri nets with interval inhibitor arcs are presented. Then, an optimal Petri net supervisor based on the interval inhibitor arcs is designed to prevent a system from reaching illegal markings. Two techniques are presented to simplify the supervisory structure by compressing the number of control places. The proposed approaches are general since they can be applied to any bounded Petri net models. 224

226 9.2. LIMITATIONS A marking reduction approach is also introduced if they are applied to Petri net models of FMSs. A number of examples are provided to demonstrate the proposed approaches and the experimental results show that they can obtain optimal Petri net supervisors for some net models that cannot be optimally controlled by pure net supervisors. Furthermore, the obtained supervisor is structurally simple. 9.2 Limitations This section outlines some limitations on the methods proposed in this thesis. There are mainly two shortcomings for all the proposed methods. The first is that all methods require a complete enumeration of reachable markings whose number increases exponentially with the size of a Petri net. This computation is very time-consuming. The second is that control places are obtained by solving ILPPs that are NP-hard. Thus, all methods in the thesis suffer from computational complexity problem. For each method, the research also has the following flaws : (1) For the optimal supervisor synthesis method in Chapter 2, it is an iterative policy and the final supervisor may have too much control places. Redundant control place can survive in the resulting supervisor. Therefore, it also suffers from structural complexity problem. (2) For the optimal supervisor with minimal supervisory structure synthesis method in Chapter 3, it is a non-iterative policy and the final supervisor has the minimal number of control places. However, the ILPP in this approach has too many constraints and variables, which make the proposed approach inapplicable to large-scale models. (3) The method presented in Chapter 4 is more efficient than the one in Chapter 3 but it is an iterative approach and cannot ensure the minimality of the supervisory structure. (4) The work in Chapter 5 can find an optimal supervisor with the lowest implementation cost. However, the ILPP in this approach has too many constraints and variables, which is computationally inefficient. (5) In Chapter 6, self-loops are used to design optimal supervisors but the obtained supervisory structure is not minimized. (6) Instead of enforcing the conjunctive constraints, Chapter 7 presents a method to enforce the disjunctive constraints but the controlled net model suffers from the redundant markings due 225

227 9.3. FUTURE WORK to the added transitions. (7) Chapter 8 present an approach to design optimal supervisors with a novel Petri net structure, interval inhibitor arcs. However, the proposed method suffers computational complexity problem since the presented ILPP has too many constraints and variables. 9.3 Future Work According to the limitations of the proposed methods, the following topics are interesting. (1) Find computationally efficient approaches to generate the reachability grap of a Petri net. (2) Design optimal supervisors without the generation of a full reachable space of a Petri net. (3) Further reduce the number of constraints and variables in ILPPs. (4) Minimize the number of control places in the supervisor with self-loops. 226

228 Bibliographie [1] I. B. Abdallah and H. A. ElMaraghy, Deadlock prevention and avoidance in FMS : A Petri net based approach, International Journal of Advanced Manufacturing Technology, vol. 14, no. 10, pp , [2] H. R. Andersen, An introduction to binary decision diagrams, Lecture notes for Advanced Algorithms E97, Department of Information Technology, Technical University of Denmark, [3] Z. Banaszak and B. H. Krogh, Deadlock avoidance in flexible manufacturing systems with concurrently competing process flows, IEEE Transactions on Robotics and Automation, vol. 6, no. 6, pp , , 52, 140, 164 [4] F. Basile, P. Chiacchio, and A. Guia, An optimization approach to Petri net monitor design, IEEE Transactions on Automatic Control, vol. 52, no. 2, , 116 [5] R. Brant, Symbolic Boolean manipulation with ordered binary decision diagrams, ACM Computing Surveys, vol. 24, no. 3, pp , [6] Y. F. Chen, Z. W. Li, M. Khalgui, and O. Mosbahi, Design of a maximally permissive liveness-enforcing Petri net supervisor for flexible manufacturing systems, IEEE Transactions on Automation Science and Engineering, vol. 8, no.2, pp , , 92, 129, 138, 159, 162, 166, 167, 184, 185, 188, 202, 217 [7] Y. F. Chen and Z. W. Li, Design of a maximally permissive liveness-enforcing supervisor with a compressed supervisory structure for flexible manufacturing systems, Automatica, vol. 47, no. 5, pp , , 184, 185, 188,

229 BIBLIOGRAPHIE [8] Y. F. Chen, Z. W. Li, and M. C. Zhou, Behaviorally optimal and structurally simple livenessenforcing supervisors of flexible manufacturing systems, IEEE Transactions on Systems, Man and Cybernetics, Part A : Systems and Humans, vol. 42, no. 3, pp , [9] Y. F. Chen and Z. W. Li, On structural minimality of optimal supervisors for flexible manufacturing systems, Automatica, vol. 48, no. 10, pp , [10] Y. F. Chen, Z. W. Li, and A. Al-Ahmari, Nonpure Petri net supervisors for optimal deadlock control of flexible manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics : Systems, vol. 43, no. 2, pp , , 188, 217, 219 [11] Y. F. Chen and Z. W. Li, Optimal Supervisory Control of Automated Manufacturing Systems, New York : CRC Press, Taylor & Francis Group, [12] Y. F. Chen, Z. W. Li, and M. C. Zhou, Optimal supervisory control of flexible Manufacturing systems by Petri nets : A set classification approach, IEEE Transactions on Automation Science and Engineering, in press, DOI : /TASE , [13] H. Cho, T. K. Kumaran, and R. A. Wysk, Graph-theoretic deadlock detection and resolution for flexible manufacturing systems, IEEE Transactions on Robotics and Automation, vol. 11, no. 3, pp , [14] E. G. Coffman, M. J. Elphick, and A. Shoshani, Systems deadlocks, ACM Computing Surveys, vol. 3, no. 2, pp , [15] R. Cordone, L. Ferrarini, and L. Piroddi, Enumeration algorithms for minimal siphons in petri nets based on place constraints, IEEE Transations on System, Man and Cybernics, Part A, vol. 35, no. 6, pp , [16] R. Cordone, L. Piroddi, Monitor Optimization in Petri Net Control, 7th Annual IEEE Conference on Automation Science and Engineering, pp , Trieste (Italy), August 24-27, [17] S. K. Das, V. K. Agrawal, D. Sarkar, L. M. Patnaik, and P. S. Goel, Reflexive incidence matrix (RIM) representation of Petr nets, IEEE Transactions on Software Engineering, vol. SE-13, no. 6, pp ,

230 BIBLIOGRAPHIE [18] J. Ezpeleta, J. M. Colom, and J. Martinez, A Petri net based deadlock prevention policy for flexible manufacturing systems, IEEE Transactions on Robotics and Automation, vol. 11, no. 2, pp , , 26, 27, 52, 66, 68, 69, 77, 79, 90, 91, 94, 110, 112, 140, 164, 166, 202 [19] J. Ezpeleta, F. Tricas, F. Garcia-Valles, and J. M. Colom, A banker s solution for deadlock aviodance in FMS with flexible routing and multiresource states, IEEE Transactions on Robotics and Automation, vol. 18, no. 4, pp , , 79, 140, 164 [20] J. Ezpeleta and L. Recalde, A deadlock avoidance approach for non-sequential resource allocation systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 34, no. 1, pp , [21] M. P. Fanti, G. Maione, and B. Turchiano, Digraph-theoretic approach for deadlock detection and recovery in flexible production systems, Studies in Informatics and Control, vol. 5, no. 4, pp , [22] M. P. Fanti, B. Maione, S. Mascolo, and B. Turchiano, Performance of deadlock avoidance algorithms in flexible manufacturing systems, Journal of Manufacturing Systems, vol. 15, no. 3, pp , [23] M. P. Fanti, B. Maione, S. Mascolo, and B. Turchiano, Event-based feedback control for deadlock avoidance in flexible production systems, IEEE Transactions on Robotics and Automation, vol. 13, no. 3, pp , [24] M. P. Fanti, B. Maione, and B. Turchiano, Event control for deadlock avoidance in production systems with multiple capacity resources," Studies Informatics and Control, vol. 7, no. 4, pp , [25] M. P. Fanti, B. Maione, and B. Turchiano, Comparing digraph and Petri net approaches to deadlock avoidance in FMS, IEEE Transactions on Systems, Man and Cybernetics, Part B : Cybernetics, vol. 30, no. 5, pp , [26] M. P. Fanti, G. Maione, and B. Turchiano, Distributed event-control for deadlock avoidance in automated manufacturing systems, International Journal Production Research, vol. 39, no. 9, pp ,

231 BIBLIOGRAPHIE [27] M. P. Fanti, Event-based controller to avoid deadlock and collisions in zone control AGVs, International Journal of Production Research, vol. 40, no. 6, pp , [28] M. P. Fanti, G. Maione, and B. Turchiano, Design of supervisors to avoid deadlock in flexible assembly systems, International Journal of Flexible Manufacturing Systems, vol. 14. no. 2, pp , [29] M. P. Fanti and M. C. Zhou, Deadlock control methods in automated manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 34, no. 1, pp. 5 22, , 77 [30] M. P. Fanti and M. C. Zhou, Deadlock control methods in automated manufacturing systems, in Deadlock Resolution in Computer-Integrated Systems, New York : Marcel-Dekker Co, 2005, pp , 77 [31] A. Ghaffari, N. Rezg, and X. L. Xie, Design of a live and maximally permissive Petri net controller using the theory of regions, IEEE Transactions on Robotics and Automation, vol. 19, no. 1, pp , , 29, 51, 52, 75, 77, 138, 155, 156, 157, 158, 161, 162, 174, 182, 184, 185, 188, 206, 214, 217, 220 [32] V. Gligor and S. Shattuck, On deadlock detection in distributed systems, IEEE Transactions on Software Engineering. vol. 7, no. 3, pp , [33] B. Hruz and M. C. Zhou, Modeling and Control of Discrete Event Dynamic Systems. Springer, London, UK, [34] F. S. Hsieh and S. C. Chang, Dispatching-driven deadlock avoidance controller synthesis for flexible manufacturing systems, IEEE Transactions on Robotics and Automation, vol. 10, no. 2, pp , , 52, 79, 140, 164 [35] F. S. Hsieh, Fault-tolerant deadlock avoidance algorithm for assembly processes, IEEE Transactions Systems, Man, and Cybernetics, Part A, vol. 34, no. 1, pp , [36] H. S. Hu, M. C. Zhou, and Z. W. Li, Low-cost high-performance supervision in ratioenforced automated manufacturing systems using timed Petri nets, IEEE Transactions on Automation Science and Engineering, vol. 7, no. 4, pp ,

232 BIBLIOGRAPHIE [37] Y. S. Huang, M. D. Jeng, X. L. Xie, and S. L. Chung, Deadlock prevention based on petri nets and siphons, International Journal of Production Research, vol. 39, no. 2, pp , , 69, 77, 91, 112 [38] Y. S. Huang, M. D. Jeng, X. L.Xie, and D. H. Chung, Siphon-based deadlock prevention for flexible manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 36, no. 6, pp , , 79, 140, 164, 184 [39] M. V. Iordache and P. J. Antsaklis, Supervision Based On Place Invariants : A Survey. Kluwer Academic Publishers, [40] M. V. Iordache and P. J. Antsaklis, A structural approach to the enforcement of language and disjunctive constraints, in Proccesdings of American Control Conference, 2005, pp , 178 [41] M. V. Iordache and P. J. Antsaklis, Petri net supervisors for disjunctive constraints, in Proceedings of American Control Conference, 2007, pp , 178 [42] M. D. Jeng and X. L. Xie, Deadlock detection and prevention of automated manufacturing systems using Petri nets and siphons, in Deadlock Resolution in Computer-Integrated Systems, M. C. Zhou and M. P. Fanti (Eds.), New York : Marcel-Dekker Inc, 2005, pp , 27, 77 [43] T. K. Kumaran, W. Chang, H. Cho, and A. Wysk, A structured approach to deadlock detection, avoidance and resolution in flexible manufacturing systems, International Journal of Production Research, vol. 32, no. 10, pp , , 27 [44] K. Lautenbach and H. Ridder, The linear algebra of deadlock avoidance-a Petri net approach, No , Technical Report, Institute of Software Technology, University of Koblenz-Landau, Koblenz, Germany, [45] M. A. Lawley, S. A. Reveliotis, and P. M. Ferreira, Design guidelines for deadlock- handling strategies in flexible manufacturing systems, International Journal of Flex- ible Manufacturing Systems, vol. 9, no. 1, pp. 5 30,

233 BIBLIOGRAPHIE [46] M. A. Lawley, S. A. Reveliotis, and P. M. Ferreira, Flexible manufacturing system structural control and the neighborhood policy. Part 1. Correctness and scalability, IIE Transactions, vol. 29, no. 10, pp , [47] M. A. Lawley, S. A. Reveliotis, and P. M. Ferreira, Flexible manufacturing system structural control and the Neighborhood Policy. Part 2. Generalization, optimization, and efficiency, IIE Transactions, vol. 29, no. 10, pp , [48] M. A. Lawley, S. A. Reveliotis, P. M. Ferreira, A correct and scalable deadlock avoidance policy for flexible manufacturing systems, IEEE Transactions on Robotics and Automation, vol. 14, no. 5, pp , [49] M. A. Lawley, S. A. Reveliotis, P. M. Ferreira, The application and evaluation of banker s algorithm for deadlock-free buffer space allocation in flexible manufacturing systems, International Journal of Flexible Manufacturing Systems, vol. 10, no. 1, pp , [50] M. A. Lawley, Deadlock avoidance for production systems with flexible routing, IEEE Transactions on Robotics and Automation, vol. 15, no. 3, pp , [51] M. A. Lawley, Integrating flexible routing and algebraic deadlock avoidance policies in automated manufacturing systems, International Journal of Production Research, vol. 38, no. 13, pp , [52] M. A. Lawley and S. A. Reveliotis, Deadlock avoidance for sequential resource allocation systems : hard and easy cases, International Journal of Flexible Manu- facturing Systems, vol. 13, no. 4, pp , [53] M. A. Lawley and W. Sulistyono, Robust supervisory control policies for manu- facturing systems with unreliable resources, IEEE Transactions on Robotics and Automation, vol. 18, no. 3, pp , [54] Z. W. Li, H. S. Hu, and A. R. Wang, Design of liveness-enforcing supervisors for flexible manufacturing systems using Petri nets, IEEE Transactions on Systems, Man, and Cybernetics, Part C, vol. 37, no. 4, pp ,

234 BIBLIOGRAPHIE [55] Z. W. Li and M. C. Zhou, Elementary siphons of Petri nets and their application to deadlock prevention in flexible manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 34, no. 1, pp , , 69, 91, 112 [56] Z. W. Li and M. C. Zhou, Comparison of two deadlock prevention methods for differentsize flexible manifacturing systems, International Journal of Intelligent Control Systems, vol. 10, no. 3, pp , September , 69, 70, 71 [57] Z. W. Li and M. C. Zhou, Clarifications on the definitions of elementary siphons of Petri nets, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 36, no. 6, pp , [58] Z. W. Li and M. C. Zhou, Two-stage method for synthesizing liveness-enforcing supervisors for flexible manufacturing systems using Petri nets, IEEE Transactions on Industrial Informatics, vol. 2, no. 4, pp , [59] Z. W. Li, M. C. Zhou, and M. D. Jeng, A maximally permissive deadlock prevention policy for FMS based on Petri net siphon control and the theory of regions, IEEE Transactions on Automation Science and Engineering, vol. 5, no. 1, pp , , 89, 108, 110, 129, 131, 157, 158, 217, 219 [60] Z. W. Li and M. C. Zhou, Deadlock Resolution in Automated Manufacturing Systems : A Novel Petri Net Approach. Springer, London, [61] Lingo, Premier Optimization Modeling Tools, http :// accessed October , 155, 183 [62] J. Lind-Nielsen, BuDDy : Binary Decision Diagram Package Release 2.2. IT-University of Copenhagen (ITU). 65 [63] A. S. Miner and G. Ciardo, Efficient reachability set generation and storage using decision diagrams, Lecture Notes In Computer Science, 1999, vol. 1639, pp [64] T. Murata, Petri nets : properties, analysis and application, Proceedings of the IEEE, vol. 77, no. 4, pp , , 60, 77,

235 BIBLIOGRAPHIE [65] J. Park and S. A. Reveliotis, Algebraic synthesis of efficient deadlock aviodance policies for sequential resource allocation systems, IEEE Transactions on Robotics and Automation, vol. 16, no. 2, pp , , 79, 140, 164 [66] J. Park and S. A. Reveliotis, Deadlock avoidance in sequential resource allocation systems with multiple resource acquisitions and flexible routings, IEEE Transactions on Automatic Control, vol. 46, no. 10, pp , , 52, 79, 140, 164, 166, 202 [67] E. Pastor, J. Cortadella, and O. Roig, Symbolic analysis of bounded Petri nets, IEEE Transactions on Computers, vol. 50, no. 5, pp , , 92 [68] E. Pastor, J. Cortadella, O. Roig, and R. M. Badia, Petri net analysis using Boolean manipulation, Lecture Notes In Computer Science, 1994, vol. 815, pp , 92 [69] L. Piroddi, R. Cordone, and I. Fumagalli, Selective siphon control for deadlock prevention in Petri nets, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 38, no. 6, pp , , 52, 69, 77, 89, 91, 108, 110, 112, 131, 157, 158, 188, 217, 219 [70] L. Piroddi, R. Cordone, and I. Fumagalli, Combined siphon and marking generation for deadlock prevention in Petri nets, IEEE Transactions on Systems, Man and Cybernetics - Part A, vol. 39, no. 3, pp , May , 52, 68, 70, 77, 108, 157, 188, 217 [71] P. Ramadge and W. M. Wonham, Supervisory control of a class of discrete event processes, SIAM journal on Control and Optimization, vol. 25, no. 1, pp , [72] P. Ramadge and W. M. Wonham, The control of discrete event systems, Proceedings of the IEEE, vol. 77, no. 1, pp , [73] S. A. Reveliotis and P. M. Ferreira, Deadlock avoidance policies for automated manufacturing cells, IEEE Transactions on Robotics and Automation, vol. 12, no. 6, pp , [74] S. A. Reveliotis, M. A. Lawley, and P. M. Ferreira, Polynomial-complexity deadlock avoidance policies for sequential resource allocation systems, IEEE Transactions on Automatic Control, vol. 42, no. 10, pp ,

236 BIBLIOGRAPHIE [75] S. A. Reveliotis, Implicit siphon control and its role in the liveness-enforcing supervision of sequential resource allocation systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 37, no. 3, , [76] K. R. Rohloff, S. Khuller, and G. Kortsarz, Approximating the minimal sensor selection for supervisory control, Discrete Event Dynamic System, vol. 16, pp , [77] P. H. Starke, INA : Integrated Net Analyer, http ://www2.informatik.huberlin.de /starke/ina.html, , 66, 155, 182 [78] A. Tarek and N. Lopez-Benitez, Optimal legal firing sequence of Petri nets using linear programming, Optimization and Engineering, vol. 5, pp , [79] F. Tricas and J. Martinez, An extension of the liveness theory for concurrent sequential processes competing for shared resources, In Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics, Vancouver, British Columbia, Canada, Oct , 1995, pp , 202 [80] F. Tricas, F. Garcia-Valles, J. M. Colom, and J. Ezpelata, A structural approach to the problem of deadlock prevention in processes with resources, In Proceedings of WODES 98, Italy, Auguest, 1998, pp , 79, 140, 164 [81] F. Tricas, F. Garcia-Valles, J. M. Colom, and J. Ezpelata, An ietrative method for deadlock prevention in FMS, In Discrete Event Systems : Analysis and Control, edited by G. Stremersch, Kluwer Academic : Boston, MA, 2000, pp , 79, 140, 164 [82] F. Tricas, F. Garcia-Valles, J. M. Colom, and J. Ezpelata, A Petri net structure-based deadlock prevention solution for sequential resource allocation systems, in Proceedings of the IEEE Transactions Conference on Robotics and Automation, Barcelona, Spain, Apr , 2005, pp , 155, 157, 183, 216, 217, 218 [83] M. Uzam, An optimal deadlock prevention policy for flexible manufacturing systems using Petri net models with resources and the theory of regions. International Journal of Advanced Manufacturing Technology, vol. 19, no. 3, pp , , 51, 65, 88, 89, 108, 110, 129, 131, 138, 155, 156, 157, 158, 161, 162, 174, 182, 184, 185, 206, 214, 217, 219,

237 BIBLIOGRAPHIE [84] M. Uzam and M. C. Zhou, An improved iterative syhthesis method for liveness enforcing supervisors of flexible manufacturing systems, International Journal of Production Research, vol. 44, no. 10, pp , , 43, 51, 53, 68, 69, 74, 75, 91, 112, 188 [85] M. Uzam and M. C. Zhou, An iterative synthesis approach to Petri net based deadlock prevention policy for flexible manufacturing systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 37, no. 3, pp , , 145, 167, 188, 202 [86] N. Viswanadham, Y. Narahari, and T. Johnson, Deadlock prevention and deadlock avoidance in flexible manufacturing systems using Petri net models, IEEE Transactions on Robotics and Automation, vol. 6, no. 6, pp , [87] H. Q. Wang, C. J. Jiang, and S. Y. Liao, Behavior relations in synthesis process of Petri net models, IEEE Transactions on Robotics and Automation, vol. 16, no. 4, [88] Wikipedia, Flexible Manufacturing Systems, 25 http ://en.wikipedia.org/wiki/flexible_manufacturing_system. [89] N. Q. Wu, Necessary and sufficient conditions for deadlock-free operation in flexible manufacturing systems using a colored Petri net model, IEEE Transactions on Systems, Man, and Cybernetics, Part C, vol. 29, no. 2, pp , [90] N. Q. Wu and M. C. Zhou, Avoiding deadlock and reducing starvation and blocking in automated manufacturing systems, IEEE Transactions on Robotics and Automation, vol. 17, no. 5, pp , [91] N. Q. Wu and M. C. Zhou, Modeling and deadlock avoidance of automated manufacturing systems with multiple automated guided vehicles, IEEE Transactions on Systems, Man, and Cybernetics, Part B, vol. 35, no. 6, pp , [92] N. Q. Wu and M. C. Zhou, Deadlock resolution in automated manufacturing systems with robots, IEEE Transactions on Automation Science and Engineering, vol. 4, no. 3, pp , July [93] N. Q. Wu, M. Zhou, and Z. W. Li, Resource-oriented Petri net for deadlock avoidance in 236

238 BIBLIOGRAPHIE flexible assembly systems, IEEE Transactions on Systems, Man, and Cybernetics, Part A, vol. 38, no. 1, pp , [94] N. Q. Wu and M. C. Zhou, System Modeling and Control with Resource-Oriented Petri Nets. CRC Press, New York, [95] R. A. Wysk, N. S. Yang, and S. Joshi, Detection of deadlocks in fexible manufacturing cells, IEEE Transactions on Robotics and Automation, vol. 7, no. 6, pp , [96] R. A. Wysk, N. S. Yang, and S. Joshi, Resolution of deadlocks in flexible manufacturing systems : avoidance and recovery approaches, Journal of Manufacturing Systems, vol. 13, no. 2, pp , , 27 [97] K. Y. Xing, B. S. Hu, and H. X. Chen, Deadlock avoidance policy for flexible manufacturing systems, In Petri Nets in Flexible and Agile Automation, edited by M. C. Zhou, pp , 1995, (Kluwer Academic : Boston, MA). 52, 79, 140, 164 [98] K. Y. Xing, B. S. Hu, and H. X. Chen, Deadlock avoidance policy for Petri-net modelling of flexible manufacturing systems with shared resources, IEEE Transactions on Automatic Control, vol. 41, no. 2, pp , [99] A. Yalcin and T. O. Boucher, Deadlock avoidance in flexible manufacturing systems using finite automata, IEEE Transactions on Robotics and Automation, vol. 16, no. 4, pp , [100] K. Yamalidou, J. Moody, M. Lemmon, and P. Antsaklis, Feedback control of Petri nets based on place invariants, Automatica, vol. 32, no. 1, pp , , 46, 51, 138 [101] S. D. Young and V. K. Garg, Optimal sensor and actuator chocies for discrete event systems, in Proceding of 31st Allerton Conference on Communication, Control and Computing, Allerton, IL, [102] M. C. Zhou and F. DiCesare, Paralle and Sequential Mutual Exclusions for Petri net Modeling of Manufacturing Ststems with Shared Resources, IEEE Transactions on Robotics and Automation, vol. 7, no. 4, pp , ,

239 BIBLIOGRAPHIE [103] M. C. Zhou and F. DiCesare, Petri Net Synthesis for Discrete Event Control of Manufacturing Systems. Kluwer Academic Publishers, London, [104] M. C. Zhou, F. DiCesare, and A. A. Desrochers, A hybrid methodology for synthesis of Petri nets for manufacturing systems," IEEE Transactions on Robotics and Automation, vol. 8, no. 3, pp , [105] M. C. Zhou and K. Venkatesh, Modeling, Simulation and Control of Flexible Manufacturing Systems:APetri Net Approach. World Scientific, Singapore,

240 Glossaire 2 A : The power set of a set A A : The number of elements in a set A B = {0, 1} : A set called the carrier C L : The set of non-oriented cycles in the LZ E t : The enabled function of t f : A function F I : The set of FBMs that are forbidden by a PI I F M : The set of FBMs that A-covers M F n (B) : A set of n-variables Boolean function G(N, M 0 )) : The reachability graph of net (N, M 0 ) I : A place invariant I : The support of a place invariant I I + : The positive support of a place invariant I I : The negative support of a place invariant I I : An identity matrix J : A transition invariant M : A marking M(S ) : The sum of tokens in a place set S M : A set of markings M F : A set of forbidding markings M L : A set of legal markings M FBM : A set of first-met bad markings M L : A minimal covering set of legal markings 239

241 GLOSSAIRE M FBM : A minimal covered set of first-met bad markings L FBM : A minimal covering set of FBM-related legal markings L M : A minimal covering set of M-related legal markings (L, B) : A set of GMECs M(L, B) : A set of legal markings for (L, B) N : A Petri net with N = {P, T, F, W} N A : The number of operation places N FBM : The number of first-met bad markings N L : The number of legal markings N L : The number of elements in L M N MS : The number of minimal siphons N M,M j : The number of markings that M-equal M j N r : The number of reachable markings N S : The number of siphons NFBM BDD : The number of BDD nodes for FBMs N BDD l : The number of BDD nodes for legal markings N BDD MS : The number of BDD nodes for minimal siphons N BDD r : The number of BDD nodes for reachable markings N BDD S : The number of BDD nodes for siphons 240

242 GLOSSAIRE N : The set of non-negative integers, N = {0, 1, 2,...} N + : The set of positive integers, N = {1, 2,...} N A : {i p i P A } N L : {i M i M L } N FBM : {i M i M FBM } N L : {i M i M FBM } N FBM : {i M i M FBM } N m : {1, 2,...,m} (N, M 0 ) : A Petri net system [N] : The incidence matrix [N] + : The output incidence matrix [N] : The input incidence matrix [N c ] : The incidence matrix of control places n c : The number of constraints P : A set of places 241

243 GLOSSAIRE P 0 : A set of idle places P A : A set of operation (activity) places P R : A set of resource places p : A place in a Petri net p : The postset of a place p p : The preset of a place p p 0 : An idle place p c : A control place, also called a monitor Q : A big enough integer constant R : A robot R(N, M 0 ) : The set of reachable markings of (N, M 0 ) R( N, M 0 ) : The set of co-reachable markings of (N, M 0 ) R c : The reachability graph for given control specifications R cf : A partial reachability graph that contains all the nodes in M L M f R M : The set of legal markings that is A-covered by M 242

244 GLOSSAIRE R : A relation R : A binary relation for r : A resource place S : A siphon S : A set of siphons S MS : The set of minimal siphons S N : The set of siphons in N T : A set of transitions t : A transition in a Petri net t : The preset of a transition t t : The postset of a transition t V M : A set of control places x : The preset of a node x P T x : The postset of a node x P T X : A set 243

245 GLOSSAIRE X : The element count in a set X X : The cardinality in a set X X : The preset of a set X P T X : The postset of a set X P T 2 X : The set of subsets of X X : A character function X pi : The characteristic function of p i X S : The character function of S X SN : The character function of S N X SMS : The character function of S MS X R : The characteristic function of R X R : The characteristic function of R Z : The set of integers, Z = {..., 2, 1, 0, 1, 2,...} Z + : The set of non-negative integers, Z = {0, 1, 2,...} Ξ M,M1 : The set of legal markings that M-equal M 1 244

246 GLOSSAIRE σ : A sequence of transitions σ : The Parikh vector of σ Γ : A non-oriented path Γ M : A non-oriented path from M 0 to M Γ : The counting vector of Γ Γ M (t) : The algebraic sum of all occurrences of t in Γ M γ : A non-oriented cycle γ (t) : The algebraic sum of all occurrences of t in γ δ t : The transition function of t ε : An encoding function μ i : The marking of p i Ω : A set of MTSIs Ω pc : The set of MTSIs that are implemented by p c 245

247

248 P p p P p p p P p p p M M M p p p p p p M p p p p p p 247

249 P p p P p p p p p p P p p p M M t t p p t t t p p p p p t t t p p p p p t t p p p p t p t p p t t 248

250 P p p p P p p p p p p p p p P p p p M M t p p t p t t t t p p p p p p p t p t p p t p t p p t t t t p p p p p p t t t t p p p t t p 249

251 P p p p p p P p p p p p p p p p p p p p p p P p p p M t t t p t p p p p t p t t p p p t p p t p t t p t p t p t p p t t p t t p p t p t p t t t p p t p t p t p p p p p t t p p p t t p t p t p p t p p t p t p t p p p t p p t p p p t p t t p t p t t t p t p t t p p p t t p t p t p t t p p p 250

252 M 251

253 252

254 253

255 254

256 255

257 256

258 257

259 t p p t p t t t t p p p p p p p p t p p t p p t p t p p t t t t p p p p p p p t t t t p p p t p Fig.11:APetrinetmodelofanFMS 258

260 M t M t M t M t 259

261 260

262 M M t M t t t t M t M t t t t t M t t t M M t t t t t t t M M t t t M M M t M t M M p p p p M p p p p p M p p p p p M p p p p M p p p p M p p p p p p M p 2p p p M p p p p M p p p p p M p p p p p M p p p p p M p p p p p M p p p M p p p p M p p p 261

263 p sj p sj t t p p p t t p p p p p t t p p p ps ps t t tf pf t f t f pf tf pf 262

264 t t p p p t t t p p t p p t p p t p p p p t t t p t p p t 263

265 t q t q t q 264

266 t q t p s t p p p p t t p p p p t p s t t q 265

267 266

ONE NOVEL COMPUTATIONALLY IMPROVED OPTIMAL CONTROL POLICY FOR DEADLOCK PROBLEMS OF FLEXIBLE MANUFACTURING SYSTEMS USING PETRI NETS

ONE NOVEL COMPUTATIONALLY IMPROVED OPTIMAL CONTROL POLICY FOR DEADLOCK PROBLEMS OF FLEXIBLE MANUFACTURING SYSTEMS USING PETRI NETS Proceedings of the IASTED International Conference Modelling, Identification and Control (AsiaMIC 2013) April 10-12, 2013 Phuket, Thailand ONE NOVEL COMPUTATIONALLY IMPROVED OPTIMAL CONTROL POLICY FOR

More information

Research Article Comparison and Evaluation of Deadlock Prevention Methods for Different Size Automated Manufacturing Systems

Research Article Comparison and Evaluation of Deadlock Prevention Methods for Different Size Automated Manufacturing Systems Mathematical Problems in Engineering Volume 2015, Article ID 537893, 19 pages http://dx.doi.org/10.1155/2015/537893 Research Article Comparison and Evaluation of Deadlock Prevention Methods for Different

More information

IN AN industrial automated manufacturing system (AMS),

IN AN industrial automated manufacturing system (AMS), IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 45, NO. 11, NOVEMBER 2015 1459 Lexicographic Multiobjective Integer Programming for Optimal and Structurally Minimal Petri Net Supervisors

More information

Elementary Siphons of Petri Nets and Deadlock Control in FMS

Elementary Siphons of Petri Nets and Deadlock Control in FMS Journal of Computer and Communications, 2015, 3, 1-12 Published Online July 2015 in SciRes. http://www.scirp.org/journal/jcc http://dx.doi.org/10.4236/jcc.2015.37001 Elementary Siphons of Petri Nets and

More information

Evaluation of deadlock control designs in automated manufacturing systems

Evaluation of deadlock control designs in automated manufacturing systems Proceedings of the 2015 International Conference on Industrial Engineering and Operations Management Dubai, UAE, March 3 5, 2015 Evaluation of deadlock control designs in automated manufacturing systems

More information

A Deadlock Prevention Policy for Flexible Manufacturing Systems Using Siphons

A Deadlock Prevention Policy for Flexible Manufacturing Systems Using Siphons Proceedings of the 2001 IEEE International Conference on Robotics & Automation Seoul, Korea May 21-26, 2001 A Deadlock Prevention Policy for Flexible Manufacturing Systems Using Siphons YiSheng Huang 1

More information

Best linear unbiased prediction when error vector is correlated with other random vectors in the model

Best linear unbiased prediction when error vector is correlated with other random vectors in the model Best linear unbiased prediction when error vector is correlated with other random vectors in the model L.R. Schaeffer, C.R. Henderson To cite this version: L.R. Schaeffer, C.R. Henderson. Best linear unbiased

More information

A Simple Proof of P versus NP

A Simple Proof of P versus NP A Simple Proof of P versus NP Frank Vega To cite this version: Frank Vega. A Simple Proof of P versus NP. 2016. HAL Id: hal-01281254 https://hal.archives-ouvertes.fr/hal-01281254 Submitted

More information

The Core of a coalitional exchange economy

The Core of a coalitional exchange economy The Core of a coalitional exchange economy Elena L. Del Mercato To cite this version: Elena L. Del Mercato. The Core of a coalitional exchange economy. Cahiers de la Maison des Sciences Economiques 2006.47

More information

Thomas Lugand. To cite this version: HAL Id: tel

Thomas Lugand. To cite this version: HAL Id: tel Contribution à la Modélisation et à l Optimisation de la Machine Asynchrone Double Alimentation pour des Applications Hydrauliques de Pompage Turbinage Thomas Lugand To cite this version: Thomas Lugand.

More information

b-chromatic number of cacti

b-chromatic number of cacti b-chromatic number of cacti Victor Campos, Claudia Linhares Sales, Frédéric Maffray, Ana Silva To cite this version: Victor Campos, Claudia Linhares Sales, Frédéric Maffray, Ana Silva. b-chromatic number

More information

A new simple recursive algorithm for finding prime numbers using Rosser s theorem

A new simple recursive algorithm for finding prime numbers using Rosser s theorem A new simple recursive algorithm for finding prime numbers using Rosser s theorem Rédoane Daoudi To cite this version: Rédoane Daoudi. A new simple recursive algorithm for finding prime numbers using Rosser

More information

A Siphon-based Deadlock Prevention Policy for a Class of Petri Nets - S 3 PMR

A Siphon-based Deadlock Prevention Policy for a Class of Petri Nets - S 3 PMR Proceedings of the 17th World Congress The International Federation of Automatic Control A Siphon-based eadlock Prevention Policy for a Class of Petri Nets - S 3 PMR Mingming Yan, Rongming Zhu, Zhiwu Li

More information

Répartition géographique des investissements directs étrangers en Chine

Répartition géographique des investissements directs étrangers en Chine Répartition géographique des investissements directs étrangers en Chine Qixu Chen To cite this version: Qixu Chen. Répartition géographique des investissements directs étrangers en Chine. Economies et

More information

Evolution of the cooperation and consequences of a decrease in plant diversity on the root symbiont diversity

Evolution of the cooperation and consequences of a decrease in plant diversity on the root symbiont diversity Evolution of the cooperation and consequences of a decrease in plant diversity on the root symbiont diversity Marie Duhamel To cite this version: Marie Duhamel. Evolution of the cooperation and consequences

More information

Solving an integrated Job-Shop problem with human resource constraints

Solving an integrated Job-Shop problem with human resource constraints Solving an integrated Job-Shop problem with human resource constraints Olivier Guyon, Pierre Lemaire, Eric Pinson, David Rivreau To cite this version: Olivier Guyon, Pierre Lemaire, Eric Pinson, David

More information

Numerical modification of atmospheric models to include the feedback of oceanic currents on air-sea fluxes in ocean-atmosphere coupled models

Numerical modification of atmospheric models to include the feedback of oceanic currents on air-sea fluxes in ocean-atmosphere coupled models Numerical modification of atmospheric models to include the feedback of oceanic currents on air-sea fluxes in ocean-atmosphere coupled models Florian Lemarié To cite this version: Florian Lemarié. Numerical

More information

Structural Analysis of Resource Allocation Systems with Synchronization Constraints

Structural Analysis of Resource Allocation Systems with Synchronization Constraints Structural Analysis of Resource Allocation Systems with Synchronization Constraints Spyros Reveliotis School of Industrial & Systems Engineering Georgia Institute of Technology Atlanta, GA 30332 USA Abstract

More information

Diagnosability Analysis of Discrete Event Systems with Autonomous Components

Diagnosability Analysis of Discrete Event Systems with Autonomous Components Diagnosability Analysis of Discrete Event Systems with Autonomous Components Lina Ye, Philippe Dague To cite this version: Lina Ye, Philippe Dague. Diagnosability Analysis of Discrete Event Systems with

More information

DEVELOPMENT OF THE ULTRASONIC HIGH TEMPERATURE BOLT STRESS MONITOR

DEVELOPMENT OF THE ULTRASONIC HIGH TEMPERATURE BOLT STRESS MONITOR DEVELOPMENT OF THE ULTRASONIC HIGH TEMPERATURE BOLT STRESS MONITOR S.-M. Zhu, J. Lu, M.-Z. Xiao, Y.-G. Wang, M.-A. Wei To cite this version: S.-M. Zhu, J. Lu, M.-Z. Xiao, Y.-G. Wang, M.-A. Wei. DEVELOPMENT

More information

Stickelberger s congruences for absolute norms of relative discriminants

Stickelberger s congruences for absolute norms of relative discriminants Stickelberger s congruences for absolute norms of relative discriminants Georges Gras To cite this version: Georges Gras. Stickelberger s congruences for absolute norms of relative discriminants. Journal

More information

The magnetic field diffusion equation including dynamic, hysteresis: A linear formulation of the problem

The magnetic field diffusion equation including dynamic, hysteresis: A linear formulation of the problem The magnetic field diffusion equation including dynamic, hysteresis: A linear formulation of the problem Marie-Ange Raulet, Benjamin Ducharne, Jean-Pierre Masson, G. Bayada To cite this version: Marie-Ange

More information

Full-order observers for linear systems with unknown inputs

Full-order observers for linear systems with unknown inputs Full-order observers for linear systems with unknown inputs Mohamed Darouach, Michel Zasadzinski, Shi Jie Xu To cite this version: Mohamed Darouach, Michel Zasadzinski, Shi Jie Xu. Full-order observers

More information

CONTROL AND DEADLOCK RECOVERY OF TIMED PETRI NETS USING OBSERVERS

CONTROL AND DEADLOCK RECOVERY OF TIMED PETRI NETS USING OBSERVERS 5 e Conférence Francophone de MOdélisation et SIMulation Modélisation et simulation pour l analyse et l optimisation des systèmes industriels et logistiques MOSIM 04 du 1 er au 3 septembre 2004 - Nantes

More information

Hardware Operator for Simultaneous Sine and Cosine Evaluation

Hardware Operator for Simultaneous Sine and Cosine Evaluation Hardware Operator for Simultaneous Sine and Cosine Evaluation Arnaud Tisserand To cite this version: Arnaud Tisserand. Hardware Operator for Simultaneous Sine and Cosine Evaluation. ICASSP 6: International

More information

On Newton-Raphson iteration for multiplicative inverses modulo prime powers

On Newton-Raphson iteration for multiplicative inverses modulo prime powers On Newton-Raphson iteration for multiplicative inverses modulo prime powers Jean-Guillaume Dumas To cite this version: Jean-Guillaume Dumas. On Newton-Raphson iteration for multiplicative inverses modulo

More information

Methods for territorial intelligence.

Methods for territorial intelligence. Methods for territorial intelligence. Serge Ormaux To cite this version: Serge Ormaux. Methods for territorial intelligence.. In International Conference of Territorial Intelligence, Sep 2006, Alba Iulia,

More information

Kernel Generalized Canonical Correlation Analysis

Kernel Generalized Canonical Correlation Analysis Kernel Generalized Canonical Correlation Analysis Arthur Tenenhaus To cite this version: Arthur Tenenhaus. Kernel Generalized Canonical Correlation Analysis. JdS 10, May 2010, Marseille, France. CD-ROM

More information

Structural study of a rare earth-rich aluminoborosilicate glass containing various alkali and alkaline-earth modifier cations

Structural study of a rare earth-rich aluminoborosilicate glass containing various alkali and alkaline-earth modifier cations Structural study of a rare earth-rich aluminoborosilicate glass containing various alkali and alkaline-earth modifier cations Arnaud Quintas, Daniel Caurant, Odile Majérus, Marion Lenoir, Jean-Luc Dussossoy,

More information

The Windy Postman Problem on Series-Parallel Graphs

The Windy Postman Problem on Series-Parallel Graphs The Windy Postman Problem on Series-Parallel Graphs Francisco Javier Zaragoza Martínez To cite this version: Francisco Javier Zaragoza Martínez. The Windy Postman Problem on Series-Parallel Graphs. Stefan

More information

Territorial Intelligence and Innovation for the Socio-Ecological Transition

Territorial Intelligence and Innovation for the Socio-Ecological Transition Territorial Intelligence and Innovation for the Socio-Ecological Transition Jean-Jacques Girardot, Evelyne Brunau To cite this version: Jean-Jacques Girardot, Evelyne Brunau. Territorial Intelligence and

More information

Climbing discrepancy search for flowshop and jobshop scheduling with time-lags

Climbing discrepancy search for flowshop and jobshop scheduling with time-lags Climbing discrepancy search for flowshop and jobshop scheduling with time-lags Wafa Karoui, Marie-José Huguet, Pierre Lopez, Mohamed Haouari To cite this version: Wafa Karoui, Marie-José Huguet, Pierre

More information

Liang Hong, 1 YiFan Hou, 2 JunFeng Jing, 1 AnRong Wang, 2 and Dmitry A. Litvin Introduction

Liang Hong, 1 YiFan Hou, 2 JunFeng Jing, 1 AnRong Wang, 2 and Dmitry A. Litvin Introduction Discrete Dynamics in Nature and Society Volume 015, Article ID 57963, 15 pages http://dx.doi.org/10.1155/015/57963 Research Article Deadlock Prevention Policy with Behavioral Optimality or Suboptimality

More information

On production costs in vertical differentiation models

On production costs in vertical differentiation models On production costs in vertical differentiation models Dorothée Brécard To cite this version: Dorothée Brécard. On production costs in vertical differentiation models. 2009. HAL Id: hal-00421171

More information

Multiple sensor fault detection in heat exchanger system

Multiple sensor fault detection in heat exchanger system Multiple sensor fault detection in heat exchanger system Abdel Aïtouche, Didier Maquin, Frédéric Busson To cite this version: Abdel Aïtouche, Didier Maquin, Frédéric Busson. Multiple sensor fault detection

More information

Vibro-acoustic simulation of a car window

Vibro-acoustic simulation of a car window Vibro-acoustic simulation of a car window Christophe Barras To cite this version: Christophe Barras. Vibro-acoustic simulation of a car window. Société Française d Acoustique. Acoustics 12, Apr 12, Nantes,

More information

Optimized diagnosability of distributed discrete event systems through abstraction

Optimized diagnosability of distributed discrete event systems through abstraction Optimized diagnosability of distributed discrete event systems through abstraction Lina Ye To cite this version: Lina Ye. Optimized diagnosability of distributed discrete event systems through abstraction.

More information

Supervisory Control of Petri Nets with. Uncontrollable/Unobservable Transitions. John O. Moody and Panos J. Antsaklis

Supervisory Control of Petri Nets with. Uncontrollable/Unobservable Transitions. John O. Moody and Panos J. Antsaklis Supervisory Control of Petri Nets with Uncontrollable/Unobservable Transitions John O. Moody and Panos J. Antsaklis Department of Electrical Engineering University of Notre Dame, Notre Dame, IN 46556 USA

More information

Easter bracelets for years

Easter bracelets for years Easter bracelets for 5700000 years Denis Roegel To cite this version: Denis Roegel. Easter bracelets for 5700000 years. [Research Report] 2014. HAL Id: hal-01009457 https://hal.inria.fr/hal-01009457

More information

Voltage Stability of Multiple Distributed Generators in Distribution Networks

Voltage Stability of Multiple Distributed Generators in Distribution Networks oltage Stability of Multiple Distributed Generators in Distribution Networks Andi Wang, Chongxin Liu, Hervé Guéguen, Zhenquan Sun To cite this version: Andi Wang, Chongxin Liu, Hervé Guéguen, Zhenquan

More information

Soundness of the System of Semantic Trees for Classical Logic based on Fitting and Smullyan

Soundness of the System of Semantic Trees for Classical Logic based on Fitting and Smullyan Soundness of the System of Semantic Trees for Classical Logic based on Fitting and Smullyan Shahid Rahman To cite this version: Shahid Rahman. Soundness of the System of Semantic Trees for Classical Logic

More information

Modeling Automated Highway Systems with VeriJ

Modeling Automated Highway Systems with VeriJ Modeling Automated Highway Systems with VeriJ Yan Zhang To cite this version: Yan Zhang. Modeling Automated Highway Systems with VeriJ. MOdelling and VErifying parallel Processes (MOVEP), Jun 2010, Aachen,

More information

About partial probabilistic information

About partial probabilistic information About partial probabilistic information Alain Chateauneuf, Caroline Ventura To cite this version: Alain Chateauneuf, Caroline Ventura. About partial probabilistic information. Documents de travail du Centre

More information

Outils de Recherche Opérationnelle en Génie MTH Astuce de modélisation en Programmation Linéaire

Outils de Recherche Opérationnelle en Génie MTH Astuce de modélisation en Programmation Linéaire Outils de Recherche Opérationnelle en Génie MTH 8414 Astuce de modélisation en Programmation Linéaire Résumé Les problèmes ne se présentent pas toujours sous une forme qui soit naturellement linéaire.

More information

Replicator Dynamics and Correlated Equilibrium

Replicator Dynamics and Correlated Equilibrium Replicator Dynamics and Correlated Equilibrium Yannick Viossat To cite this version: Yannick Viossat. Replicator Dynamics and Correlated Equilibrium. CECO-208. 2004. HAL Id: hal-00242953

More information

Accurate critical exponents from the ϵ-expansion

Accurate critical exponents from the ϵ-expansion Accurate critical exponents from the ϵ-expansion J.C. Le Guillou, J. Zinn-Justin To cite this version: J.C. Le Guillou, J. Zinn-Justin. Accurate critical exponents from the ϵ-expansion. Journal de Physique

More information

Anisotropy dynamics of CuMn spin glass through torque measurements

Anisotropy dynamics of CuMn spin glass through torque measurements Anisotropy dynamics of CuMn spin glass through torque measurements J.B. Pastora, T.W. Adair, D.P. Love To cite this version: J.B. Pastora, T.W. Adair, D.P. Love. Anisotropy dynamics of CuMn spin glass

More information

Methylation-associated PHOX2B gene silencing is a rare event in human neuroblastoma.

Methylation-associated PHOX2B gene silencing is a rare event in human neuroblastoma. Methylation-associated PHOX2B gene silencing is a rare event in human neuroblastoma. Loïc De Pontual, Delphine Trochet, Franck Bourdeaut, Sophie Thomas, Heather Etchevers, Agnes Chompret, Véronique Minard,

More information

Inelastic scattering of 30 Mev polarized protons from 112Cd

Inelastic scattering of 30 Mev polarized protons from 112Cd Inelastic scattering of 30 Mev polarized protons from 112Cd R. De Swiniarski, G. Bagieu, DinhLien Pham, M. Massaad, J.Y. Grossiord, A. Guichard To cite this version: R. De Swiniarski, G. Bagieu, DinhLien

More information

Smart Bolometer: Toward Monolithic Bolometer with Smart Functions

Smart Bolometer: Toward Monolithic Bolometer with Smart Functions Smart Bolometer: Toward Monolithic Bolometer with Smart Functions Matthieu Denoual, Gilles Allègre, Patrick Attia, Olivier De Sagazan To cite this version: Matthieu Denoual, Gilles Allègre, Patrick Attia,

More information

On path partitions of the divisor graph

On path partitions of the divisor graph On path partitions of the divisor graph Paul Melotti, Eric Saias To cite this version: Paul Melotti, Eric Saias On path partitions of the divisor graph 018 HAL Id: hal-0184801 https://halarchives-ouvertesfr/hal-0184801

More information

ON THE UNIQUENESS IN THE 3D NAVIER-STOKES EQUATIONS

ON THE UNIQUENESS IN THE 3D NAVIER-STOKES EQUATIONS ON THE UNIQUENESS IN THE 3D NAVIER-STOKES EQUATIONS Abdelhafid Younsi To cite this version: Abdelhafid Younsi. ON THE UNIQUENESS IN THE 3D NAVIER-STOKES EQUATIONS. 4 pages. 212. HAL Id:

More information

Resource-Oriented Petri Nets in Deadlock Avoidance of AGV Systems

Resource-Oriented Petri Nets in Deadlock Avoidance of AGV Systems Proceedings of the 2001 IEEE International Conference on Robotics & Automation Seoul, Korea May 21-26, 2001 Resource-Oriented Petri Nets in Deadlock Avoidance of AGV Systems Naiqi Wu Department of Mechatronics

More information

Algebraic Synthesis of Transition Conditions of a State Model

Algebraic Synthesis of Transition Conditions of a State Model Algebraic Synthesis of Transition Conditions of a State Model Yann Hietter, Jean-Marc Roussel, Jean-Jacques Lesage To cite this version: Yann Hietter, Jean-Marc Roussel, Jean-Jacques Lesage. Algebraic

More information

On size, radius and minimum degree

On size, radius and minimum degree On size, radius and minimum degree Simon Mukwembi To cite this version: Simon Mukwembi. On size, radius and minimum degree. Discrete Mathematics and Theoretical Computer Science, DMTCS, 2014, Vol. 16 no.

More information

Capillary rise between closely spaced plates : effect of Van der Waals forces

Capillary rise between closely spaced plates : effect of Van der Waals forces Capillary rise between closely spaced plates : effect of Van der Waals forces B. Legait, P.G. De Gennes To cite this version: B. Legait, P.G. De Gennes. Capillary rise between closely spaced plates : effect

More information

Completeness of the Tree System for Propositional Classical Logic

Completeness of the Tree System for Propositional Classical Logic Completeness of the Tree System for Propositional Classical Logic Shahid Rahman To cite this version: Shahid Rahman. Completeness of the Tree System for Propositional Classical Logic. Licence. France.

More information

Spatial representativeness of an air quality monitoring station. Application to NO2 in urban areas

Spatial representativeness of an air quality monitoring station. Application to NO2 in urban areas Spatial representativeness of an air quality monitoring station. Application to NO2 in urban areas Maxime Beauchamp, Laure Malherbe, Laurent Letinois, Chantal De Fouquet To cite this version: Maxime Beauchamp,

More information

Hook lengths and shifted parts of partitions

Hook lengths and shifted parts of partitions Hook lengths and shifted parts of partitions Guo-Niu Han To cite this version: Guo-Niu Han Hook lengths and shifted parts of partitions The Ramanujan Journal, 009, 9 p HAL Id: hal-00395690

More information

Transfer matrix in one dimensional problems

Transfer matrix in one dimensional problems Transfer matrix in one dimensional problems M. E. Mora, R. Pérez, Ch. B. Sommers To cite this version: M. E. Mora, R. Pérez, Ch. B. Sommers. Transfer matrix in one dimensional problems. Journal de Physique,

More information

Dispersion relation results for VCS at JLab

Dispersion relation results for VCS at JLab Dispersion relation results for VCS at JLab G. Laveissiere To cite this version: G. Laveissiere. Dispersion relation results for VCS at JLab. Compton Scattering from Low to High Momentum Transfer, Mar

More information

IMPROVED SUPPRESSION OF UNCORRELATED BACKGROUND NOISE WITH THE STSF TECHNIQUE

IMPROVED SUPPRESSION OF UNCORRELATED BACKGROUND NOISE WITH THE STSF TECHNIQUE IMPROVED SUPPRESSION OF UNCORRELATED BACKGROUND NOISE WITH THE STSF TECHNIQUE J. Hald, K. Ginn To cite this version: J. Hald, K. Ginn. IMPROVED SUPPRESSION OF UNCORRELATED BACKGROUND NOISE WITH THE STSF

More information

Nonlocal computational methods applied to composites structures

Nonlocal computational methods applied to composites structures Nonlocal computational methods applied to composites structures Norbert Germain, Frédéric Feyel, Jacques Besson To cite this version: Norbert Germain, Frédéric Feyel, Jacques Besson. Nonlocal computational

More information

Characterization of the local Electrical Properties of Electrical Machine Parts with non-trivial Geometry

Characterization of the local Electrical Properties of Electrical Machine Parts with non-trivial Geometry Characterization of the local Electrical Properties of Electrical Machine Parts with non-trivial Geometry Laure Arbenz, Abdelkader Benabou, Stéphane Clenet, Jean Claude Mipo, Pierre Faverolle To cite this

More information

Towards an active anechoic room

Towards an active anechoic room Towards an active anechoic room Dominique Habault, Philippe Herzog, Emmanuel Friot, Cédric Pinhède To cite this version: Dominique Habault, Philippe Herzog, Emmanuel Friot, Cédric Pinhède. Towards an active

More information

Modelling of Railway Network Using Petri Nets

Modelling of Railway Network Using Petri Nets Modelling of Railway Network Using Petri Nets MANDIRA BANIK 1, RANJAN DASGUPTA 2 1 Dept. of Computer Sc. & Engg., National Institute of Technical Teachers' Training & Research, Kolkata, West Bengal, India

More information

Dorian Mazauric. To cite this version: HAL Id: tel https://tel.archives-ouvertes.fr/tel

Dorian Mazauric. To cite this version: HAL Id: tel https://tel.archives-ouvertes.fr/tel Optimisation discrète dans les réseaux de télécommunication : reconfiguration du routage, routage efficace en énergie, ordonnancement de liens et placement de données Dorian Mazauric To cite this version:

More information

Electromagnetic characterization of magnetic steel alloys with respect to the temperature

Electromagnetic characterization of magnetic steel alloys with respect to the temperature Electromagnetic characterization of magnetic steel alloys with respect to the temperature B Paya, P Teixeira To cite this version: B Paya, P Teixeira. Electromagnetic characterization of magnetic steel

More information

A MAGNETOSTATIC CALCULATION OF FRINGING FIELD FOR THE ROGOWSKI POLE BOUNDARY WITH FLOATING SNAKE

A MAGNETOSTATIC CALCULATION OF FRINGING FIELD FOR THE ROGOWSKI POLE BOUNDARY WITH FLOATING SNAKE A MAGNETOSTATIC CALCULATION OF FRINGING FIELD FOR THE ROGOWSKI POLE BOUNDARY WITH FLOATING SNAKE Yan Chen, Fan Ming-Wu To cite this version: Yan Chen, Fan Ming-Wu. A MAGNETOSTATIC CALCULATION OF FRINGING

More information

Fast Computation of Moore-Penrose Inverse Matrices

Fast Computation of Moore-Penrose Inverse Matrices Fast Computation of Moore-Penrose Inverse Matrices Pierre Courrieu To cite this version: Pierre Courrieu. Fast Computation of Moore-Penrose Inverse Matrices. Neural Information Processing - Letters and

More information

Designing Reversibility-Enforcing Supervisors of Polynomial Complexity for Bounded Petri Nets through the Theory of Regions

Designing Reversibility-Enforcing Supervisors of Polynomial Complexity for Bounded Petri Nets through the Theory of Regions Designing Reversibility-Enforcing Supervisors of Polynomial Complexity for Bounded Petri Nets through the Theory of Regions Spyros A. Reveliotis 1 and Jin Young Choi 2 1 School of Industrial & Systems

More information

All Associated Stirling Numbers are Arithmetical Triangles

All Associated Stirling Numbers are Arithmetical Triangles All Associated Stirling Numbers are Arithmetical Triangles Khaled Ben Letaïef To cite this version: Khaled Ben Letaïef. All Associated Stirling Numbers are Arithmetical Triangles. 2017.

More information

Exact Comparison of Quadratic Irrationals

Exact Comparison of Quadratic Irrationals Exact Comparison of Quadratic Irrationals Phuc Ngo To cite this version: Phuc Ngo. Exact Comparison of Quadratic Irrationals. [Research Report] LIGM. 20. HAL Id: hal-0069762 https://hal.archives-ouvertes.fr/hal-0069762

More information

A Novel Aggregation Method based on Graph Matching for Algebraic MultiGrid Preconditioning of Sparse Linear Systems

A Novel Aggregation Method based on Graph Matching for Algebraic MultiGrid Preconditioning of Sparse Linear Systems A Novel Aggregation Method based on Graph Matching for Algebraic MultiGrid Preconditioning of Sparse Linear Systems Pasqua D Ambra, Alfredo Buttari, Daniela Di Serafino, Salvatore Filippone, Simone Gentile,

More information

A Method Based on Depth-first Search to Compute All Minimal Siphons

A Method Based on Depth-first Search to Compute All Minimal Siphons 2148 JOURNAL OF SOFTWARE, VOL. 9, NO. 8, AUGUST 2014 A Method Based on Depth-first Search to Compute All Minimal Siphons Fan Ning Hangzhou Vocational & Technical College, Hangzhou 310018, China ningfanse@126.com

More information

MGDA II: A direct method for calculating a descent direction common to several criteria

MGDA II: A direct method for calculating a descent direction common to several criteria MGDA II: A direct method for calculating a descent direction common to several criteria Jean-Antoine Désidéri To cite this version: Jean-Antoine Désidéri. MGDA II: A direct method for calculating a descent

More information

A proximal approach to the inversion of ill-conditioned matrices

A proximal approach to the inversion of ill-conditioned matrices A proximal approach to the inversion of ill-conditioned matrices Pierre Maréchal, Aude Rondepierre To cite this version: Pierre Maréchal, Aude Rondepierre. A proximal approach to the inversion of ill-conditioned

More information

Comments on the method of harmonic balance

Comments on the method of harmonic balance Comments on the method of harmonic balance Ronald Mickens To cite this version: Ronald Mickens. Comments on the method of harmonic balance. Journal of Sound and Vibration, Elsevier, 1984, 94 (3), pp.456-460.

More information

FORMAL TREATMENT OF RADIATION FIELD FLUCTUATIONS IN VACUUM

FORMAL TREATMENT OF RADIATION FIELD FLUCTUATIONS IN VACUUM FORMAL TREATMENT OF RADIATION FIELD FLUCTUATIONS IN VACUUM Frederic Schuller, Renaud Savalle, Michael Neumann-Spallart To cite this version: Frederic Schuller, Renaud Savalle, Michael Neumann-Spallart.

More information

c 2014 Vijayalakshmi Deverakonda

c 2014 Vijayalakshmi Deverakonda c 214 Vijayalakshmi Deverakonda DISJUNCTIVE NORMAL FORMULA BASED SUPERVISORY CONTROL POLICY FOR GENERAL PETRI NETS BY VIJAYALAKSHMI DEVERAKONDA THESIS Submitted in partial fulfillment of the requirements

More information

On the Griesmer bound for nonlinear codes

On the Griesmer bound for nonlinear codes On the Griesmer bound for nonlinear codes Emanuele Bellini, Alessio Meneghetti To cite this version: Emanuele Bellini, Alessio Meneghetti. On the Griesmer bound for nonlinear codes. Pascale Charpin, Nicolas

More information

Representation of Supervisory Controls using State Tree Structures, Binary Decision Diagrams, Automata, and Supervisor Reduction

Representation of Supervisory Controls using State Tree Structures, Binary Decision Diagrams, Automata, and Supervisor Reduction Representation of Supervisory Controls using State Tree Structures, Binary Decision Diagrams, Automata, and Supervisor Reduction Wujie Chao 1, Yongmei Gan 2, Zhaoan Wang 3, W. M. Wonham 4 1. School of

More information

A Context free language associated with interval maps

A Context free language associated with interval maps A Context free language associated with interval maps M Archana, V Kannan To cite this version: M Archana, V Kannan. A Context free language associated with interval maps. Discrete Mathematics and Theoretical

More information

Factorisation of RSA-704 with CADO-NFS

Factorisation of RSA-704 with CADO-NFS Factorisation of RSA-704 with CADO-NFS Shi Bai, Emmanuel Thomé, Paul Zimmermann To cite this version: Shi Bai, Emmanuel Thomé, Paul Zimmermann. Factorisation of RSA-704 with CADO-NFS. 2012. HAL Id: hal-00760322

More information

Solution of contact problems with friction

Solution of contact problems with friction Solution of contact problems with friction Pierre Joli, Zhi-Qiang Feng, Nadjet Talbi To cite this version: Pierre Joli, Zhi-Qiang Feng, Nadjet Talbi. Solution of contact problems with friction: Pseudo-potential

More information

Influence of network metrics in urban simulation: introducing accessibility in graph-cellular automata.

Influence of network metrics in urban simulation: introducing accessibility in graph-cellular automata. Influence of network metrics in urban simulation: introducing accessibility in graph-cellular automata. Dominique Badariotti, Arnaud Banos, Diego Moreno To cite this version: Dominique Badariotti, Arnaud

More information

Passerelle entre les arts : la sculpture sonore

Passerelle entre les arts : la sculpture sonore Passerelle entre les arts : la sculpture sonore Anaïs Rolez To cite this version: Anaïs Rolez. Passerelle entre les arts : la sculpture sonore. Article destiné à l origine à la Revue de l Institut National

More information

FUZZY AUTOMATION CONTROLLER FOR FLEXIBLE MANUFACTURING SYSTEMS

FUZZY AUTOMATION CONTROLLER FOR FLEXIBLE MANUFACTURING SYSTEMS International Journal on Design and Manufacturing Technologies, Vol.4, No.2, July 2010 35 FUZZY AUTOMATION CONTROLLER FOR FLEXIBLE MANUFACTURING SYSTEMS Venkateswaran P.R 1., Jayadev Bhat 2, Meenatchisundaram

More information

On Solving Aircraft Conflict Avoidance Using Deterministic Global Optimization (sbb) Codes

On Solving Aircraft Conflict Avoidance Using Deterministic Global Optimization (sbb) Codes On Solving Aircraft Conflict Avoidance Using Deterministic Global Optimization (sbb) Codes Sonia Cafieri, Frédéric Messine, Ahmed Touhami To cite this version: Sonia Cafieri, Frédéric Messine, Ahmed Touhami.

More information

Accelerating Effect of Attribute Variations: Accelerated Gradual Itemsets Extraction

Accelerating Effect of Attribute Variations: Accelerated Gradual Itemsets Extraction Accelerating Effect of Attribute Variations: Accelerated Gradual Itemsets Extraction Amal Oudni, Marie-Jeanne Lesot, Maria Rifqi To cite this version: Amal Oudni, Marie-Jeanne Lesot, Maria Rifqi. Accelerating

More information

The Mahler measure of trinomials of height 1

The Mahler measure of trinomials of height 1 The Mahler measure of trinomials of height 1 Valérie Flammang To cite this version: Valérie Flammang. The Mahler measure of trinomials of height 1. Journal of the Australian Mathematical Society 14 9 pp.1-4.

More information

On the longest path in a recursively partitionable graph

On the longest path in a recursively partitionable graph On the longest path in a recursively partitionable graph Julien Bensmail To cite this version: Julien Bensmail. On the longest path in a recursively partitionable graph. 2012. HAL Id:

More information

On the uniform Poincaré inequality

On the uniform Poincaré inequality On the uniform Poincaré inequality Abdesslam oulkhemair, Abdelkrim Chakib To cite this version: Abdesslam oulkhemair, Abdelkrim Chakib. On the uniform Poincaré inequality. Communications in Partial Differential

More information

approximation results for the Traveling Salesman and related Problems

approximation results for the Traveling Salesman and related Problems approximation results for the Traveling Salesman and related Problems Jérôme Monnot To cite this version: Jérôme Monnot. approximation results for the Traveling Salesman and related Problems. Information

More information

The Accelerated Euclidean Algorithm

The Accelerated Euclidean Algorithm The Accelerated Euclidean Algorithm Sidi Mohamed Sedjelmaci To cite this version: Sidi Mohamed Sedjelmaci The Accelerated Euclidean Algorithm Laureano Gonzales-Vega and Thomas Recio Eds 2004, University

More information

c 2011 Nisha Somnath

c 2011 Nisha Somnath c 2011 Nisha Somnath HIERARCHICAL SUPERVISORY CONTROL OF COMPLEX PETRI NETS BY NISHA SOMNATH THESIS Submitted in partial fulfillment of the requirements for the degree of Master of Science in Aerospace

More information

NONBLOCKING CONTROL OF PETRI NETS USING UNFOLDING. Alessandro Giua Xiaolan Xie

NONBLOCKING CONTROL OF PETRI NETS USING UNFOLDING. Alessandro Giua Xiaolan Xie NONBLOCKING CONTROL OF PETRI NETS USING UNFOLDING Alessandro Giua Xiaolan Xie Dip. Ing. Elettrica ed Elettronica, U. di Cagliari, Italy. Email: giua@diee.unica.it INRIA/MACSI Team, ISGMP, U. de Metz, France.

More information

Case report on the article Water nanoelectrolysis: A simple model, Journal of Applied Physics (2017) 122,

Case report on the article Water nanoelectrolysis: A simple model, Journal of Applied Physics (2017) 122, Case report on the article Water nanoelectrolysis: A simple model, Journal of Applied Physics (2017) 122, 244902 Juan Olives, Zoubida Hammadi, Roger Morin, Laurent Lapena To cite this version: Juan Olives,

More information

Widely Linear Estimation with Complex Data

Widely Linear Estimation with Complex Data Widely Linear Estimation with Complex Data Bernard Picinbono, Pascal Chevalier To cite this version: Bernard Picinbono, Pascal Chevalier. Widely Linear Estimation with Complex Data. IEEE Transactions on

More information

Dissipative Systems Analysis and Control, Theory and Applications: Addendum/Erratum

Dissipative Systems Analysis and Control, Theory and Applications: Addendum/Erratum Dissipative Systems Analysis and Control, Theory and Applications: Addendum/Erratum Bernard Brogliato To cite this version: Bernard Brogliato. Dissipative Systems Analysis and Control, Theory and Applications:

More information