59 research outputs found

    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

    An Efficient Siphon-Based Deadlock Prevention Policy for a Class of Generalized Petri Nets

    Get PDF
    We propose a new deadlock prevention policy for an important class of resource allocation systems (RASs) that appear in the modeling of flexible manufacturing systems (FMSs). The model of this class in terms of generalized Petri nets is, namely, S 4 PR. On the basis of recent structural analysis results related to the elementary siphons in generalized Petri nets on one hand and an efficient deadlock avoidance policy proposed for the class of conjunctive/disjunctive (C/D) RASs on the other hand, we show how one can generate monitors to be added to a net system such that all its strict minimal siphons are max -controlled and no insufficiently marked siphon is generated. Thereby, a new, simple, and more permissive liveness-enforcing supervisor synthesis method for S 4 PR is established

    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 Avoidance in Automated Manufacturing Systems

    Get PDF

    A flexible simulaton framework for the study of deadlock resolution algorithms in multicore systems

    Get PDF
    Deadlock is a common phenomenon in software applications, yet it is ignored by most operating systems. Although the occurrence of a deadlocks in systems is not frequent, in some cases, the effects are drastic when deadlock occurs. The ongoing trend in processor technology indicates that future systems will have hundreds and thousands of cores. Due to this imminent trend in hardware development, the problem of deadlock has gained renewed attention in research. Deadlock handling techniques that are developed for earlier processors and distributed systems might not work well with multicore systems, due to their architectural differences. Hence, to maximize the utility of multicore systems, new programs have to be carefully designed and tested before they can be adopted for practical use. Many approaches have been developed to handle deadlock in multicore systems, but very little attention has been paid to comparing the performance of those approaches with respect to different performance parameters. To fulfil the above mentioned shortfalls, we need a flexible simulation testbed to study deadlock handling algorithms and to observe their performance differences in multicore systems. The development of such a framework is the main goal of this thesis. In the framework, we implemented a general a scenario, scenario for the Dining Philosopher's problem and scenario for the Banker's algorithm. In addition to these scenarios, we demonstrate the flexibility, soundness, and use of the proposed framework by simulating two different deadlock handling strategies "" deadlock avoidance (the Banker's algorithm) and deadlock detection (Dreadlocks). The deadlock detection is followed by deadlock recovery to resolve the detected deadlock. We also present result analysis for the different set of experiments performed on the implemented strategies. The proposed simulation testbed to study deadlocks in multicore systems is developed using Java. --Leaf i.The original print copy of this thesis may be available here: http://wizard.unbc.ca/record=b214097

    Multi-agent routing in shared guidepath networks

    Get PDF
    Motivated by a broad spectrum of applications ranging from automated zone-controlled, unit-load material handling systems to the movement of ions within a quantum computer, this thesis considers a class of multi-agent routing problems that seek to minimize the agents’ traveling time subject to certain congestion constraints. In more technical terms, the particular problem addressed in this work concerns the development of efficient, conflict-free, and deadlock-free schedules to route a set of non-interchangeable “agents” between their respective starting locations and destinations. Routes are specified as sequences of adjacent edges of the guidepath network, that are allocated sequentially and exclusively to the traveling agents by a traffic coordinator, according to an allocation protocol that seeks to ensure physical feasibility and other notions of “safety” for the agent motion. On the other hand, efficiency is measured by the schedule “makespan”—i.e., the time required for all agents to reach their respective destinations. In order to formally characterize the addressed scheduling problem and the corresponding notion of optimality for the sought schedules, this thesis first formulates the problem as a mixed-integer program (MIP). In this formulation, the system state at a given time is defined by the allocated edges and the directions of travel for the various agents, and the system is assumed to evolve this state at discrete time intervals that are defined by the required edge-traversal times. The presented MIP is derived according to a resource allocation system (RAS) perspective, and it is based on a set of binary decision variables that characterize the evolution of the system state over a sufficiently long time horizon. An additional auxiliary variable allows the computation of the schedule "makespan"—i.e., the number of discrete time periods required for the last agent to reach its designated destination.  An important feature of the developed MIP formulation is its ability to accommodate a broad range of variations of the considered traffic-scheduling problem that result from the variation of certain structural elements of the underlying traffic system and of the adopted edge-allocation protocol. From a computational standpoint, the optimal solution of all these problems is very complex. In many cases, even the identification of a feasible solution for a given problem instance can be a challenging problem. In view of all this complexity, the second part of the thesis formulates a Lagrangian dual problem for the generation of lower bounds for the original scheduling problem, and then describes two distinct methods to optimize this dual problem: (i) a customized dual-ascent algorithm, and (ii) a reformulation of the dual problem as a single, large linear program (LP). The first approach is proven to find an exact solution in a finite number of iterations, but the availability of very efficient LP solvers renders the second method more robust for larger problem instances. The two approaches provide consistent lower bounds for the optimal makespans of various problem instances, as well as Lagrange multipliers that optimize the Lagrangian dual and may be useful in the guidance of other heuristic algorithms for an optimized schedule. The third part of the thesis presents and analyzes a heuristic, "local-search" type of algorithm for minimizing the makespans of multi-agent routes on a shared guidepath network. For the context of conflict-free ion routing within a quantum computer, the thesis describes a complete algorithm for finding an initial feasible solution, and for optimizing that schedule by iterative reduction of the makespan, using dynamic programming (DP) to revise agent routes while eliminating conflicts between agents. Various methods for strengthening the makespan-reduction procedure (e.g., multi-agent simultaneous route revision, or controlled excursions into the infeasible region) are described and analyzed. Finally, the dissertation provides a set of experimental results that are obtained from the implementation of the developed methods for a carefully selected set of problem instances. For each instance, we find lower bounds (obtained either by hand, or by solving the Lagrangian dual problem) on the optimal objective values, as well as actual makespans for feasible schedules discovered by the heuristic scheduler. The considered problem instances include: (i) a small but difficult problem used to motivate our early research; (ii) a more complex "challenge" problem designed to maximize congestion; and (iii) a series of 150 randomized trials formulated on a grid-based configuration of the guidepath network that is typical of the corresponding structures that are encountered in many practical applications. The third set of experiments is further designed to evaluate the performance of the heuristic scheduler under increasing levels of congestion. The obtained results reveal that our heuristic algorithm can provide very efficient solutions for the targeted variations of the guidepath-based traffic-scheduling problem, in a way that is computationally efficient and complete. The thesis concludes with suggestions for future research that are aimed at (a) the further enhancement of the heuristic algorithm, (b) the extension of this algorithm and of the corresponding methodology to other variations of the considered traffic-scheduling problems, and (c) the embedding of all these results in a broader “rolling-horizon” framework that will address the dynamic nature of the operational (i.e., the transport) requirements of the considered traffic systems.Ph.D

    Symbolic Supervisory Control of Resource Allocation Systems

    Get PDF
    <p>Supervisory control theory (SCT) is a formal model-based methodology for verification and synthesis of supervisors for discrete event systems (DES). The main goal is to guarantee that the closed-loop system fulfills given specifications. SCT has great promise to assist engineers with the generation of reliable control functions. This is, for instance, beneficial to manufacturing systems where both products and production equipment might change frequently.</p> <p>The industrial acceptance of SCT, however, has been limited for at least two reasons: (i) the analysis of DES involves an intrinsic difficulty known as the state-space explosion problem, which makes the explicit enumeration of enormous state-spaces for industrial systems intractable; (ii) the synthesized supervisor, represented as a deterministic finite automaton (FA) or an extended finite automaton (EFA), is not straightforward to implement in an industrial controller.</p> <p>In this thesis, to address the aforementioned issues, we study the modeling, synthesis and supervisor representation of DES using binary decision diagrams (BDDs), a compact data structure for representing DES models symbolically. We propose different kinds of BDD-based algorithms for exploring the symbolically represented state-spaces in an effort to improve the abilities of existing supervisor synthesis approaches to handle large-scale DES and represent the obtained supervisors appropriately.</p> <p>Following this spirit, we bring the efficiencies of BDD into a particular DES application domain -- deadlock avoidance for resource allocation systems (RAS) -- a problem that arises in many technological systems including flexible manufacturing systems and multi-threaded software. We propose a framework for the effective and computationally efficient development of the maximally permissive deadlock avoidance policy (DAP) for various RAS classes. Besides the employment of symbolic computation, special structural properties that are possessed by RAS are utilized by the symbolic algorithms to gain additional efficiencies in the computation of the sought DAP. Furthermore, to bridge the gap between the BDD-based representation of the target DAP and its actual industrial realization, we extend this work by introducing a procedure that generates a set of "guard" predicates to represent the resulting DAP.</p> <p>The work presented in this thesis has been implemented in the SCT tool Supremica. Computational benchmarks have manifested the superiority of the proposed algorithms with respect to the previously published results. Hence, the work holds a strong potential for providing robust, practical and efficient solutions to a broad range of supervisory control and deadlock avoidance problems that are experienced in the considered DES application domain.</p
    corecore