67 research outputs found

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

    Get PDF
    In automated manufacturing systems (AMSs), deadlocks problems can arise due to limited shared resources. Petri nets are an effective tool to prevent deadlocks in AMSs. In this paper, a simulation based on existing deadlock prevention policies and different Petri net models are considered to explore whether a permissive liveness-enforcing Petri net supervisor can provide better time performance. The work of simulation is implemented as follows. (1) Assign the time to the controlled Petri net models, which leads to timed Petri nets. (2) Build the Petri net model using MATLAB software. (3) Run and simulate the model, and simulation results are analyzed to determine which existing policies are suitable for different systems. Siphons and iterative methods are used for deadlocks prevention. Finally, the computational results show that the selected deadlock policies may not imply high resource utilization and plant productivity, which have been shown theoretically in previous publications. However, for all selected AMSs, the iterative methods always lead to structurally and computationally complex liveness-enforcing net supervisors compared to the siphons methods. Moreover, they can provide better behavioral permissiveness than siphons methods for small systems. For large systems, a strict minimal siphon method leads to better behavioral permissiveness than the other methods

    Contributions to the deadlock problem in multithreaded software applications observed as Resource Allocation Systems

    Get PDF
    Desde el punto de vista de la competencia por recursos compartidos sucesivamente reutilizables, se dice que un sistema concurrente compuesto por procesos secuenciales está en situación de bloqueo si existe en él un conjunto de procesos que están indefinidamente esperando la liberación de ciertos recursos retenidos por miembros del mismo conjunto de procesos. En sistemas razonablemente complejos o distribuidos, establecer una política de asignación de recursos que sea libre de bloqueos puede ser un problema muy difícil de resolver de forma eficiente. En este sentido, los modelos formales, y particularmente las redes de Petri, se han ido afianzando como herramientas fructíferas que permiten abstraer el problema de asignación de recursos en este tipo de sistemas, con el fin de abordarlo analíticamente y proveer métodos eficientes para la correcta construcción o corrección de estos sistemas. En particular, la teoría estructural de redes de Petri se postula como un potente aliado para lidiar con el problema de la explosión de estados inherente a aquéllos. En este fértil contexto han florecido una serie de trabajos que defienden una propuesta metodológica de diseño orientada al estudio estructural y la correspondiente corrección física del problema de asignación de recursos en familias de sistemas muy significativas en determinados contextos de aplicación, como el de los Sistemas de Fabricación Flexible. Las clases de modelos de redes de Petri resultantes asumen ciertas restricciones, con significado físico en el contexto de aplicación para el que están destinadas, que alivian en buena medida la complejidad del problema. En la presente tesis, se intenta acercar ese tipo de aproximación metodológica al diseño de aplicaciones software multihilo libres de bloqueos. A tal efecto, se pone de manifiesto cómo aquellas restricciones procedentes del mundo de los Sistemas de Fabricación Flexible se muestran demasiado severas para aprehender la versatilidad inherente a los sistemas software en lo que respecta a la interacción de los procesos con los recursos compartidos. En particular, se han de resaltar dos necesidades de modelado fundamentales que obstaculizan la mera adopción de antiguas aproximaciones surgidas bajo el prisma de otros dominios: (1) la necesidad de soportar el anidamiento de bucles no desplegables en el interior de los procesos, y (2) la posible compartición de recursos no disponibles en el arranque del sistema pero que son creados o declarados por un proceso en ejecución. A resultas, se identifica una serie de requerimientos básicos para la definición de un tipo de modelos orientado al estudio de sistemas software multihilo y se presenta una clase de redes de Petri, llamada PC2R, que cumple dicha lista de requerimientos, manteniéndose a su vez respetuosa con la filosofía de diseño de anteriores subclases enfocadas a otros contextos de aplicación. Junto con la revisión e integración de anteriores resultados en el nuevo marco conceptual, se aborda el estudio de propiedades inherentes a los sistemas resultantes y su relación profunda con otros tipos de modelos, la confección de resultados y algoritmos eficientes para el análisis estructural de vivacidad en la nueva clase, así como la revisión y propuesta de métodos de resolución de los problemas de bloqueo adaptadas a las particularidades físicas del dominio de aplicación. Asimismo, se estudia la complejidad computacional de ciertas vertientes relacionadas con el problema de asignación de recursos en el nuevo contexto, así como la traslación de los resultados anteriormente mencionados sobre el dominio de la ingeniería de software multihilo, donde la nueva clase de redes permite afrontar problemas inabordables considerando el marco teórico y las herramientas suministradas para subclases anteriormente explotadas

    Deadlock Prevention Policy with Behavioral Optimality or Suboptimality Achieved by the Redundancy Identification of Constraints and the Rearrangement of Monitors

    Get PDF
    This work develops an iterative deadlock prevention method for a special class of Petri nets that can well model a variety of flexible manufacturing systems. A deadlock detection technique, called mixed integer programming (MIP), is used to find a strict minimal siphon (SMS) in a plant model without a complete enumeration of siphons. The policy consists of two phases. At the first phase, SMSs are obtained by MIP technique iteratively and monitors are added to the complementary sets of the SMSs. For the possible existence of new siphons generated after the first phase, we add monitors with their output arcs first pointed to source transitions at the second phase to avoid new siphons generating and then rearrange the output arcs step by step on condition that liveness is preserved. In addition, an algorithm is proposed to remove the redundant constraints of the MIP problem in this paper. The policy improves the behavioral permissiveness of the resulting net and greatly enhances the structural simplicity of the supervisor. Theoretical analysis and experimental results verify the effectiveness of the proposed method

    On the Enforcement of a Class of Nonlinear Constraints on Petri Nets

    Get PDF
    International audienceThis paper focuses on the enforcement of nonlinear constraints in Petri nets. First, a supervisory structure is proposed for a nonlinear constraint. The proposed structure consists of added places and transitions. It controls the transitions in the net to be controlled only but does not change its states since there is no arc between the added transitions and the places in the original net. Second, an integer linear programming model is proposed to transform a nonlinear constraint to a minimal number of conjunc-tive linear constraints that have the same control performance as the nonlinear one. By using a place invariant based method, the obtained linear constraints can be easily enforced by a set of control places. The control places consist to a supervisor that can enforce the given nonlinear constraint. On condition that the admissible markings space of a nonlinear constraint is non-convex, another integer linear programming model is developed to obtain a minimal number of constraints whose disjunctions are equivalent to the nonlinear constraint. Finally, a number of examples are provided to demonstrate the proposed approach

    Strict Minimal Siphon-Based Colored Petri Net Supervisor Synthesis for Automated Manufacturing Systems With Unreliable Resources

    Get PDF
    Various deadlock control policies for automated manufacturing systems with reliable and shared resources have been developed, based on Petri nets. In practical applications, a resource may be unreliable. Thus, the deadlock control policies proposed in previous studies are not applicable to such applications. This paper proposes a two-step robust deadlock control strategy for systems with unreliable and shared resources. In the first step, a live (deadlock-free) controlled system that does not consider the failure of resources is derived by using strict minimal siphon control. The second step deals with deadlock control issues caused by the failures of the resources. Considering all resource failures, a common recovery subnet based on colored Petri nets is proposed for all resource failures in the Petri net model. The recovery subnet is added to the derived system at the first step to make the system reliable. The proposed method has been tested using an automated manufacturing system deployed at King Saud University.publishedVersio

    Topological analysis of metabolic and regulatory networks by decomposition methods

    Get PDF
    Die lebenden Organismen sind für eine wissenschaftliche Analyse zu kompliziert, wenn man sie als Ganzes und in ihrer vollen Komplexität betrachtet. Die vorliegende Arbeit behandelt die topologischen Eigenschaften von zwei wichtigen Teilen der lebenden Organismen: die metabolischen und die regulatorischen Systeme. Topolgische Eigenschaften sind solche, die durch die Netwerkstruktur bedingt werden. Ein Signalsystem ist eine spezielle Art von regulatorischem System. Zwischen den metabolischen und Signalnetzen gibt es wichtige Unterschiede, die ihre Behandlung in unterschiedlicher Weise erfordert. In der metabolischen Pfadanalyse ist das Konzept der elementaren Flussmoden bereits als ein passendes Instrument für die Charakterisierung der einfachsten essentiellen Wege in biochemischen Systemen etabliert. Wir untersuchen die Eigenschaften und Vorteile dieses Konzepts in einigen besonderen Fällen. Zuerst untersuchen wir die vielfach vorkommenden Enzyme mit niedriger Spezifität (z.B. Nukleosiddiphosphokinase, Uridinkinase, Transketolase, Transaldolase). Sie können parallel verschiedene Substrate und Produkte umwandeln. Auch die Enzym-Mechanismen sind vielfältig, wie wir mit dem Reaktionsschema für bifunktionelle Enzyme veranschaulichen. Wir betrachten dabei nur den Fall, dass ein bestimmtes aktives Zentrum mehrere Reaktionen katalysiert. Der Fall, dass das studierte Enzym mehrere solche aktiven Zentren hat, kann in den Fall mehrerer Enzyme transformiert werden, die nur ein aktives Zentrum haben. Wenn eine Krankheit das Ausgangsenzym ändert, werden dann in der Analyse auch alle ersetzenden Enzyme geändert. Es gibt zwei unterschiedliche Betrachtungsweisen, um multifunktionelle Enzyme zu beschreiben. Zum einen kann man die Gesamtreaktionen betrachten und zum anderen die elementaren Reaktionsschritte (Hemireaktionen, Halbreaktionen). Für Enzyme mit zwei oder mehr Funktionen ist es wichtig, nur linear unabhängige Funktionen zu betrachten, weil sonst zyklische elementare Moden auftreten würden, die keine Nettoumwandlung durchführen. Jedoch ist die Wahl der linear unabhängigen Funktionen nicht a priori eindeutig. Wir stellen eine Methode für das Treffen dieser Wahl vor, indem wir die konvexe Basis des Hemireaktions-Systems betrachten. Eine formale Anwendung des Algorithmus für das Berechnen der elementaren Flussmoden (Routen) erbringt das Resultat, dass die Zahl solcher Moden manchmal vom Niveau der Beschreibung abhängt, wenn einige Reaktionen reversibel sind und die Produkte der multifunktionellen Enzyme externe Metabolite sind, oder einige multifunktionelle Enzyme zum Teil die gleichen Stoffwechselprodukte umwandeln. Jedoch kann dieses Problem durch eine geeignete Deutung der Definition der elementaren Moden und die korrekte Wahl der unabhängigen Funktionen der Multifunktionsenzyme gelöst werden. Die Analyse wird durch einige kleinere Beispiele und ein größeres biochemisches Beispiel veranschaulicht, das aus dem Nukleotidmetabolismus stammt und die zwei Arten der Beschreibung für Nukleosiddiphosphokinase und Adenylatekinase vergleicht. Der Nukleotidmetabolismus spielt eine wichtige Rolle in lebenden Organismen und ist gegenüber allen möglichen Störungen in seiner internen Balance sehr empfindlich. Gefährliche Krankheiten können auftreten, wenn einige Enzyme nicht richtig funktionieren. Mit Hilfe des Konzeptes des elementaren Flussmodus erklären wir das Auftreten und den Schweregrad von Krankheiten, die auf Enzymdefizienzen basieren. Wenn ein Enzym vollständig gehemmt wird, werden einige metabolische Wege blockiert. Wenn jedoch einige alternative Wege noch bestehen, ist die Krankheit weniger gefährlich. Unsere Analyse ist darauf gerichtet, alternative Wege, wesentliche Enzyme und solche Enzyme, die immer zusammenarbeiten zu finden. Der letzte Begriff ist auch als "Enzyme subset" bekannt und stellt einen intermediären Schritt im Algorithmus zur Berechnung der elementaren Flussmoden dar. Wir diskutieren bereits bekannte und bisher nur hypothetische Mechanismen einiger Krankheiten (proliferative Krankheiten, Immundefizienzen), die auf Störungen des Nukleotidmetabolismus oder seiner Ausbeutung durch Viren und Parasiten beruhen. Die meisten Strategien, die für das Bekämpfen solcher Krankheiten eingesetzt werden, basieren auf der Unterbrechung des Nukleotidmetabolismus an bestimmten Stellen. Diese Strategien können aber auch zur Akkumulation toxischer Stoffe führen und dadurch Nebenwirkungen hervorrufen. Deswegen hilft ein besseres Verständnis dieses Systems, wirkungsvollere Medikamente zu entwickeln, und eine gute strukturelle Analyse kann viele experimentelle Bemühungen ersparen. Konzepte aus der Theorie der Petri-Netze liefern zusätzliche Werkzeuge für das Modellieren metabolischer Netzwerke. In Kapitel 4 werden die ähnlichkeiten zwischen einigen Konzepten in der traditionellen biochemischen Modellierung und analogen Konzepten aus der Petri-Netztheorie besprochen. Zum Beispiel entspricht die stochiometrische Matrix eines metabolischen Netzwerkes der Inzidenzmatrix des Petri-Netzes. Die Flussmoden und die Erhaltungs-Relationen haben die T-Invarianten beziehungsweise P-Invarianten als Gegenstücke. Wir decken die biologische Bedeutung einiger weiterer Begriffe aus der Theorie der Petri-Netze auf, nämlich "traps", "{siphons", "deadlocks" und "Lebendigkeit". Wir konzentrieren uns auf der topologischen Analyse anstatt auf die Analyse des dynamischen Verhaltens. Die geeignete Behandlung der externen Stoffwechselprodukte wird ebenfalls besprochen. Zur Illustration werden einige einfache theoretische Beispiele vorgestellt. Außerdem werden einige Petri-Netze präsentiert, die konkreten biochemischen Netzen entsprechen, um unsere Resultate zu belegen. Zum Beispiel wird die Rolle der Triosephosphatisomerase (TPI) im Metabolismus von Trypanosoma brucei ausgewertet, indem "traps" und "siphons" ermittelt werden. Alle behandelten Eigenschaften von Petri-Netzen werden anhand eines Systems illustriert, das aus dem Nukleotidmetabolismus stammt. Während viele Bemühungen für das Zerlegen metabolischer Systeme, (elementare Flußmoden, extreme Wege) erfolgt sind, sind bisher unseres Wissens keine Versuche in dieser Richtung für Signalübertragungssysteme unternommen worden. Eine spezielle Eigenschaft von Signalnetzwerken in lebenden Zellen ist, dass Aktivierungen, Hemmungen und biochemische Reaktionen normalerweise gleichzeitig anwesend sind. Selbst wenn sie nicht Reaktionen enthalten, machen Mehrfach-Aktivierungen oder Mehrfach-Hemmungen die Netzwerke in hohem Grade verzweigt. Es ist eine schwierige und sehr zeitraubende Aufgabe, alle Faktoren, die einen Einfluss auf ein gegebenes Ziel haben, ohne eine automatische Methode zu ermitteln. Bereits in Kapitel 1 heben wir die ähnlichkeiten und Unterschiede zwischen den metabolischen und Signal-Netzwerken hervor. In Kapitel 5 errichten wir einen Rahmen und präsentieren einen Algorithmus für die Zerlegung von Signalnetzwerken in kleinere Einheiten, die einfacher zu studieren und zu verstehen sind. Zwei Fälle werden untersucht: ein einfacheres, wenn nur monomolekulare Aktivierungen oder Reaktionen anwesend sind, und ein komplizierterer Fall, wenn die Aktivierungen und die Reaktionen multimolekular sein können. Ihre Beschreibung erfordert unterschiedliche Methoden: klassische Graphen bzw. Petrinetze. Wir besprechen die Probleme, die in unserem Modell wegen des Vorhandenseins von Hemmungen oder von unbekannten Effekten im Netz auftreten. Der vorgeschlagene Algorithmus ermittelt die Faktoren, die zusammenwirken und die Zielsubstanzen, die auf dem gleichen Weg beeinflusst werden. Die Zyklen, die im System auftreten, und mögliche fehlende Reaktionen werden ebenfalls ermittelt . Theoretische Beispiele veranschaulichen unsere Resultate. Anhand der T-Zell-Antigen-Rezeptor-Signalkaskade zeigen wir, wie die Methoden in realen Systemen angewendet werden können.The living organisms are too complex when considering them as a whole. The present thesis deals with the topological properties of two important parts of living organisms: the metabolic and the regulatory systems. The topological properties are those features that are determined by the network structure. A classification in metabolic and regulatory systems is often used. A signalling system is a special kind of regulatory system. Between metabolic and signalling networks, there are important differences that impose their treatment in different ways. In metabolic pathway analysis, the elementary flux mode concept is already established as a proper tool for identifying the smallest essential routes in biochemical systems. We examine its features and advantages in some particular cases. Firstly, many enzymes operate with low specificity (e.g. nucleoside diphosphokinase, uridine kinase, transketolase, transaldolase), so that various substrates and products can be converted. Also the enzymatic mechanisms are diverse, as we have illustrated with reaction schemes for bifunctional enzymes. Therefore, there are two different approaches to describe multifunctional enzymes (We considered only the case when a certain active site hosts several reactions. The case when the studied enzyme has several such active sites can be transformed into that of several enzymes having only one active site. If a disease alters the initial enzyme, also all substituting enzymes are altered.): in terms of overall reactions and in terms of reactions steps (hemi-reactions, half-reactions). For enzymes with two or more functions, it is important to consider only linearly independent functions, because otherwise cyclic elementary modes would occur which do not perform any net transformation. However, the choice of linearly independent functions is not a priori unique. In Chapter 2, we give a method for making this choice unique by considering the convex basis of the hemi-reactions system. The set of linearly independent functions provided by our algorithm coincides, in the case of transketolase in pentose phosphate pathway, with the set of linearly independent functions mentioned in literature. A formal application of the algorithm for computing elementary flux modes (pathways) yields the result that the number of such modes sometimes depends on the level of description if some reactions are reversible and the products of the multifunctional enzymes are external metabolites or some multifunctional enzymes partly share the same metabolites. However, this problem can be solved by appropriate interpretation of the definition of elementary modes and the correct choice of independent functions of multifunctional enzymes. The analysis is illustrated by a biochemical example taken from nucleotide metabolism, comparing the two ways of description for nucleoside diphosphokinase and adenylate kinase, and by several smaller examples. The nucleotide metabolism plays an important role in living organisms and is very sensitive to any perturbations in its internal balance. Dangerous diseases may occur if some enzymes do not work properly. With the help of elementary flux mode concept, we explain the occurrence and severity of diseases based on enzyme deficiencies. If an enzyme is completely inhibited, some metabolic routes are blocked. If, however, some alternative routes still exist, the disease is less dangerous. In Chapter 3, we focus on finding alternative routes, essential enzymes and enzymes operating together. The latter notion is also known as ,,enzyme subset`` and represents an intermediary step in calculating the elementary flux modes. The known or hypothesised mechanisms of several disorders, occurred due to the malfunctioning of nucleotide metabolism (proliferative diseases, immunodeficiency diseases) or due to its hijacking by viruses and parasites, are given. Most strategies adopted for curing such diseases are based on nucleotide metabolism interruption. Therefore, a better understanding of this system helps developing more effective drugs and a good structural analysis can spare many experimental efforts. Petri net concepts provide additional tools for the modelling of metabolic networks. In Chapter 4, the similarities between the counterparts in traditional biochemical modelling and Petri net theory are discussed. For example, the stoichiometry matrix of a metabolic network corresponds to the incidence matrix of the Petri net. The flux modes and conservation relations have the T-invariants, respectively, P-invariants as counterparts. We reveal the biological meaning of some notions specific to the Petri net framework (traps, siphons, deadlocks, liveness). We focus on the topological analysis rather than on the analysis of the dynamic behaviour. The treatment of external metabolites is discussed. Some simple theoretical examples are presented for illustration. Also the Petri nets corresponding to some biochemical networks are built to support our results. For example, the role of triose phosphate isomerase (TPI) in Trypanosoma brucei metabolism is evaluated by detecting siphons and traps. All Petri net properties treated in above-mentioned chapter (4) are exemplified on a system extracted from nucleotide metabolism. While for decomposing metabolic systems, many efforts have been done (elementary flux modes, convex basis, extreme pathways), for signalling maps, as far as we know, no attempt in this direction has been made. A special characteristic of signalling networks is that activations, inhibitions, and biochemical reactions are normally present in parallel. Even if they do not contain reactions, multi-part activations or inhibitions make them highly branched. To detect all factors that have an influence on a given target, without using an automatic method, is a difficult and very time-consuming effort. Already in Chapter 1 (Backgrounds), we highlight the similarities and differences between metabolic and signalling networks. In Chapter 5, we build a framework and algorithm for decomposing signalling networks in smaller units, which are easier to study and understand. Two cases are investigated: a simpler one, when only monomolecular activations or reactions are present, and a more complex case, when the activations and reactions can be multimolecular. Their description requires different instruments: classical graphs and Petri nets, respectively. We discuss the problems that occur in our model due to the presence of some inhibitions or unknown effects in the network. The algorithm that we propose detects the factors that are acting together and the targets that are affected on the same route. The cycles that occur in the system are also highlighted. We point out possible missing reactions. Theoretical examples illustrate out findings. Using the T cell antigen-receptor signalling cascade, we show how it can be applied to real systems

    Synthesis of Liveness-Enforcing Petri Net Supervisors Based on a Think-Globally-Act-Locally Approach and a Structurally Minimal Method for Flexible Manufacturing Systems

    Get PDF
    This paper proposes a deadlock prevention policy for flexible manufacturing systems (FMSs) based on a think-globally-act-locally approach and a structurally minimal method. First, by using the think-globally-act-locally approach, a global idle place is temporarily added to a Petri net model with deadlocks. Then, at each iteration, an integer linear programming problem is formulated to design a minimal number of maximally permissive control places. Therefore, a supervisor with a low structural complexity is obtained since the number of control places is greatly compressed. Finally, by adding the designed supervisor, the resulting net model is optimally or near-optimally controlled. Three examples from the literature are used to illustrate the proposed method

    Computationally Improved Optimal Control Methodology for Linear Programming Problems of Flexible Manufacturing Systems

    Get PDF
    Deadlock prevention policies are used to solve the deadlock problems of FMSs. It is well known that the theory of regions is the efficient method for obtaining optimal (i.e., maximally permissive) controllers. All legal and live maximal behaviors of Petri net models can be preserved by using marking/transition-separation instances (MTSIs) or event-state-separation-problem (ESSP) methods. However, they encountered great difficulties in solving all sets of inequalities that is an extremely time consuming problem. Moreover, the number of linear programming problems (LPPs) of legal markings is also exponential with net size when a plant net grows exponentially. This paper proposes a novel methodology to reduce the number of MTSIs/ESSPs and LPPs. In this paper, we used the well-known reduction approach Murata (1989) to simply the construct of system such that the problem of LPPs can then be reduced. Additionally, critical ones of crucial marking/transition-separation instances (COCMTSI) are developed and used in our deadlock prevention policy that allows designers to employ few MTSIs to deal with deadlocks. Experimental results indicate that the computational cost can be reduced. To our knowledge, this deadlock prevention policy is the most efficient policy to obtain maximal permissive behavior of Petri net models than past approaches
    corecore