A Theory of Sequential Resource Allocation Systems for Automation

The integrating role that is sought by automation in many contemporary applications frequently can be abstracted to the need for pertinent supervision of a function that allocates a finite set of reusable resources to a set of concurrently executing processes. This article formalizes the corresponding supervisory control problem, surveys the major results that are currently available for it, and highlights remaining open challenges for the corresponding research community. In the process, it also reveals the analytical and the computational advantages that can be attained from the reference of the considered problem to some appropriate control-theoretic frameworks, and the additional potential that is defined for such an analytic approach by the identification and exploitation of some essential problem features and the “special structure” that is defined by them. I. AUTOMATION AS A RESOURCE ALLOCATION FUNCTION: A SET OF MOTIVATING APPLICATIONS When it comes to automation and its contemporary applications, one of the major challenges facing the modern engineering community is the effective integration of a set of autonomous devices, frequently characterized by distinct, heterogeneous behaviors, into a well-behaved and properly controlled system. In the context of the research program that is presented in this article, the aforementioned integrating task can be perceived as the design and the deployment of a set of control policies that will coordinate the allocation of a finite set of reusable resources to a set of concurrently executing processes. These processes evolve in a staged manner according to some sequential logic that may be predefined, but they can also be impacted by factors that are determined in real-time, during the progression of the considered application. The execution of any single stage of the considered processes requires the exclusive allocation to them of a certain subset of the system resources. Probably the best known manifestation of such an operational environment is the popular concept of the “flexibly automated production system”, where a set of numerically controlled (NC) machines is (supposed to be) integrated seamlessly with a set of buffers and material handling devices in order to support the simultaneous production of a set of part types, each produced according to its own process plan (or even a set of process plans in the particular case where the considered production system allows for some “routing flexibility”) [20]. In such an environment, every processed part is an instance of a “process type” that is defined by the corresponding process plan (or set of process plans), and the “resources” requested by each stage of this process plan are some buffer space that will physically accommodate the part, the processor(s) or the material handling equipment that will act upon the part at that stage, and possibly additional equipment like fixtures, auxiliary tools, etc. Even when focusing on the domain of material handling systems (MHS) itself, the effective operation of an automated “unit The author is with the School of Industrial & Systems Engineering, Georgia Institute of Technology, email: spyros@isye.gatech.edu. load, guidepath-based” MHS [51], like an “Automated Guided Vehicle (AGV)” system or an “overhead monorail” system, can be perceived as the control of a resource allocation function of the type described in the previous paragraph. All these MHS consist of (i) a guidepath network that interconnects a set of workstations and additional supporting service facilities, like a docking and a re-charging station, and (ii) a fleet of autonomous vehicles that transfer parts among the system workstations by using the guidepath net and eventually retiring to the docking station. Physical collisions among the vehicles are avoided by splitting the guidepath links into a number of smaller segments called “zones”, and requesting that each zone is allocated exclusively to a single vehicle. Accessing a certain zone by a traveling vehicle must be negotiated with the system controller. Hence, under the considered operational regime, the execution of a vehicle trip from an “‘origin”-location to some “destination”location is essentially a “staged process” where each “stage” corresponds to the traversal of a certain zone in the followed path, while the zone itself constitutes the “resource” allocated to the vehicle-abstracting process at that particular stage. A nominal vehicle-abstracting process under the aforementioned operational regime is defined by a sequence of zones taking the corresponding vehicle first from the docking station to the workstation originating the corresponding transport request, subsequently to the destination workstation, and finally back to the docking station; however, the general model also allows for alternative routes, and the re-assignment of a retiring vehicle to a new transport task while being on its trip back to the docking station. More recently, the resource allocation paradigm for guidepath-based MHS, that was outlined in the previous paragraph, has been extended to traffic systems involving a fleet of free-ranging mobile agents over a certain planar area [45]. In this case, each agent is represented by some canonical geometrical “footprint” – typically a disk of a certain radius – and the entire area is tesselated into a number of “cells”. An agent with its footprint overlapping a given cell is considered to “occupy” this cell. Cells possess a nominal “capacity” that limits the maximal number of the agents that can simultaneously occupy the cell in a safe manner. Observance of the cell capacity is enforced by the system controller, which provides to the traveling agents the necessary permission to access a requested cell. In a simple implementation of the considered control scheme, cells possess unit capacity, ensuring naturally the physical separation of the traveling agents. However, the literature also avails of more complex control schemes where a cell can have a nominal capacity larger than one, allowing two or more agents to traverse it simultaneously [50]; in such a case, it is further assumed that the cell-sharing agents have sensing, communication and control capability that allows them to negotiate their local

[1]  Jonghun Park,et al.  On the “Counter-Example” in the Article “Max $^{\prime}$-Controlled Siphons for Liveness of $S^{3}PGR^{2}$” Regarding the Results in “Deadlock Avoidance in Sequential Resource Allocation Systems With Multiple Resource Acquisitions and Flexible Routings” , 2001, IEEE Transactions on Automatic Control.

[2]  Feng Chu,et al.  Deadlock analysis of Petri nets using siphons and mathematical programming , 1997, IEEE Trans. Robotics Autom..

[3]  Spyros A. Reveliotis Implicit Siphon Control and Its Role in the Liveness-Enforcing Supervision of Sequential Resource Allocation Systems , 2007, IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans.

[4]  Christos G. Cassandras,et al.  Introduction to Discrete Event Systems , 1999, The Kluwer International Series on Discrete Event Dynamic Systems.

[5]  Harvey M. Deitel,et al.  An introduction to operating systems (2. ed.) , 1990 .

[6]  Joaquín Ezpeleta,et al.  Using linear programming and the Petri net structure for deadlock prevention in sequential resource allocation systems , 2005 .

[7]  W. Marsden I and J , 2012 .

[8]  C. H. Chen,et al.  Optimization of AMHS design for a semiconductor foundry fab by using simulation modeling , 2013, 2013 Winter Simulations Conference (WSC).

[9]  Ahmed Nazeem Designing parsimonious representations of the maximally permissive deadlock avoidance policy for complex resource allocation systems through classification theory , 2012 .

[10]  Zhennan Fei,et al.  Symbolic Supervisory Control of Resource Allocation Systems , 2014 .

[11]  Nils J. Nilsson,et al.  The Mathematical Foundations of Learning Machines , 1990 .

[12]  E. Mark Gold,et al.  Deadlock Prediction: Easy and Difficult Cases , 1978, SIAM J. Comput..

[13]  Scott A. Mahlke,et al.  Gadara: Dynamic Deadlock Avoidance for Multithreaded Programs , 2008, OSDI.

[14]  Mark Lawley,et al.  Polynomial-complexity deadlock avoidance policies for sequential resource allocation systems , 1997, IEEE Trans. Autom. Control..

[15]  Vijay V. Vazirani,et al.  Approximation Algorithms , 2001, Springer Berlin Heidelberg.

[16]  Spyros Reveliotis,et al.  Deadlock Avoidance for Sequential Resource Allocation Systems: Hard and Easy Cases , 2001 .

[17]  Warren B. Powell,et al.  Approximate Dynamic Programming - Solving the Curses of Dimensionality , 2007 .

[18]  MuDer Jeng,et al.  Process nets with resources for manufacturing modeling and their analysis , 2002, IEEE Trans. Robotics Autom..

[19]  Taho Yang,et al.  A spine layout design method for semiconductor fabrication facilities containing automated material‐handling systems , 1997 .

[20]  Ahmed Nazeem,et al.  Deadlock Avoidance Policies for Automated Manufacturing Systems Using Finite State Automata , 2014, Formal Methods in Manufacturing.

[21]  W. M. Wonham,et al.  The control of discrete event systems , 1989 .

[22]  Panos J. Antsaklis,et al.  Supervisory Control of Discrete Event Systems Using Petri Nets , 1998, The International Series on Discrete Event Dynamic Systems.

[23]  Wil vanderAalst,et al.  Workflow Management: Models, Methods, and Systems , 2004 .

[24]  Spyros A. Reveliotis,et al.  Conflict Resolution in Free-Ranging Multivehicle Systems: A Resource Allocation Paradigm , 2011, IEEE Transactions on Robotics.

[25]  MengChu Zhou,et al.  Liveness and Ratio-Enforcing Supervision of Automated Manufacturing Systems Using Petri Nets , 2012, IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans.

[26]  Alessandro Giua,et al.  Generalized mutual exclusion contraints on nets with uncontrollable transitions , 1992, [Proceedings] 1992 IEEE International Conference on Systems, Man, and Cybernetics.

[27]  Dimitri P. Bertsekas,et al.  Dynamic Programming and Optimal Control, Two Volume Set , 1995 .

[28]  Bruce H. Krogh,et al.  Deadlock avoidance in flexible manufacturing systems with concurrently competing process flows , 1990, IEEE Trans. Robotics Autom..

[29]  Spyros Reveliotis Real-time management of resource allocation systems : a discrete event systems approach , 2004 .

[30]  Randal E. Bryant,et al.  Symbolic Boolean manipulation with ordered binary-decision diagrams , 1992, CSUR.

[31]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[32]  Isaac L. Chuang,et al.  Quantum Computation and Quantum Information (10th Anniversary edition) , 2011 .

[33]  Stephan Merz,et al.  Model Checking , 2000 .

[34]  Spyros Reveliotis,et al.  The Application and Evaluation of Banker's Algorithm for Deadlock-Free Buffer Space Allocation in Flexible Manufacturing Systems , 1998 .

[35]  Spyros A. Reveliotis,et al.  A correct and scalable deadlock avoidance policy for flexible manufacturing systems , 1998, IEEE Trans. Robotics Autom..

[36]  L. Dickson Finiteness of the Odd Perfect and Primitive Abundant Numbers with n Distinct Prime Factors , 1913 .

[37]  Spyros A. Reveliotis,et al.  On the Complexity of Maximally Permissive Deadlock Avoidance in Multi-Vehicle Traffic Systems , 2010, IEEE Transactions on Automatic Control.

[38]  Spyros A. Reveliotis,et al.  On the Siphon-Based Characterization of Liveness in Sequential Resource Allocation Systems , 2003, ICATPN.

[39]  Scott A. Mahlke,et al.  Concurrency bugs in multithreaded software: modeling and analysis using Petri nets , 2013, Discret. Event Dyn. Syst..

[40]  Javier Martínez,et al.  A Petri net based deadlock prevention policy for flexible manufacturing systems , 1995, IEEE Trans. Robotics Autom..

[41]  MengChu Zhou,et al.  Elementary siphons of Petri nets and their application to deadlock prevention in flexible manufacturing systems , 2004, IEEE Trans. Syst. Man Cybern. Part A.

[42]  Spyros Reveliotis,et al.  FMS structural control and the Neighborhood policy, Part 1: correctness and scalability , 1997 .

[43]  Edsger W. Dijkstra,et al.  Cooperating sequential processes , 2002 .

[44]  Scott A. Mahlke,et al.  Eliminating Concurrency Bugs in Multithreaded Software: A New Approach Based on Discrete-Event Control , 2013, IEEE Transactions on Control Systems Technology.

[45]  Y. Narahari,et al.  Deadlock prevention and deadlock avoidance in flexible manufacturing systems using Petri net models , 1990, IEEE Trans. Robotics Autom..

[46]  Spyros A. Reveliotis,et al.  A distributed protocol for motion coordination in free-range vehicular systems , 2013, Autom..

[47]  Maria Pia Fanti,et al.  Event-based feedback control for deadlock avoidance in flexible production systems , 1997, IEEE Trans. Robotics Autom..

[48]  Peter Brass,et al.  Advanced Data Structures: Data Structures for Strings , 2008 .

[49]  John N. Tsitsiklis,et al.  Neuro-Dynamic Programming , 1996, Encyclopedia of Machine Learning.

[50]  Tobias Bachmeier,et al.  Fundamentals Of Modern Manufacturing Materialsprocesses And Systems , 2016 .

[51]  MengChu Zhou,et al.  Low-Cost and High-Performance Supervision in Ratio-Enforced Automated Manufacturing Systems Using Timed Petri Nets , 2010, IEEE Transactions on Automation Science and Engineering.

[52]  MengChu Zhou,et al.  Algebraic Synthesis of Timed Supervisor for Automated Manufacturing Systems Using Petri Nets , 2010, IEEE Transactions on Automation Science and Engineering.

[53]  Joaquín Ezpeleta,et al.  A Banker's solution for deadlock avoidance in FMS with flexible routing and multiresource states , 2002, IEEE Trans. Robotics Autom..