Efficient Analysis of Discrete Event Systems: Supervisor Synthesis with Binary Decision Diagrams

Due to the ever-increasing complexity of software and hardware, it is becoming more and more important to develop methods and tools for automatic analysis and synthesis of systems. One obstacle in achieving this goal has been the unmanageable size and complexity of the involved mathematical operations. For example, real-world systems such as manufacturing cells or embedded systems represented as composite discrete-event systems tend to have huge numbers of states. The enormity of these models will make most types of analysis very hard if not impossible. Taking advantage of Binary Decision Diagrams, this work presents a set of algorithms and heuristics for searching the enormous state-space of large discrete event systems in a efficient manner. Furthermore, the author demonstrates how important problems within the field of supervisor control theory can be solved using the presented search methods. It is also shown how the conjunction of such methods and algorithmic optimization is used to gain performance even more.

[1]  Saburo Muroga,et al.  Binary Decision Diagrams , 2000, The VLSI Handbook.

[2]  Reid G. Simmons,et al.  Optimizing Symbolic Model Checking for Constraint-Rich Models , 1999, CAV.

[3]  Manuela M. Veloso,et al.  OBDD-based Universal Planning: Specifying and Solving Planning Problems for Synchronized Agents in Non-deterministic Domains , 1999, Artificial Intelligence Today.

[4]  Ryan J. Leduc,et al.  Hierarchical Interface-based Supervisory Control , 2003 .

[5]  Robert K. Brayton,et al.  Early quantification and partitioned transition relations , 1996, Proceedings International Conference on Computer Design. VLSI in Computers and Processors.

[6]  J. Douriet,et al.  A comparison of synthesis tools for supervisory controllers , 2003, 2003 European Control Conference (ECC).

[7]  Bart Selman,et al.  Planning as Satisfiability , 1992, ECAI.

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

[9]  S. Marcus,et al.  On controllability and normality of discrete event dynamical systems , 1991 .

[10]  Chen-Shang Lin,et al.  On the OBDD-Representation of General Boolean Functions , 1992, IEEE Trans. Computers.

[11]  Carl Pomerance,et al.  The Development of the Number Field Sieve , 1994 .

[12]  Barbara Hayes-Roth,et al.  A Cognitive Model of Planning , 1979, Cogn. Sci..

[13]  Edmund M. Clarke,et al.  Symbolic model checking for sequential circuit verification , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[14]  A. Vahidi,et al.  Coordination of batches in flexible production , 2000, Proceedings of the 2000 American Control Conference. ACC (IEEE Cat. No.00CH36334).

[15]  Parosh Aziz Abdulla,et al.  Symbolic Reachability Analysis Based on SAT-Solvers , 2000, TACAS.

[16]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[17]  François Bourdoncle,et al.  Efficient chaotic iteration strategies with widenings , 1993, Formal Methods in Programming and Their Applications.

[18]  Kenneth L. McMillan,et al.  The SMV System , 1993 .

[19]  David R. O'Hallaron,et al.  Optimizing model checking based on bdd characterization , 1999 .

[20]  Walter Murray Wonham,et al.  On the complexity of supervisory control design in the RW framework , 2000, IEEE Trans. Syst. Man Cybern. Part B.

[21]  Kurt Jensen Coloured Petri Nets , 1992, EATCS Monographs in Theoretical Computer Science.

[22]  Brigitte Plateau,et al.  On the stochastic structure of parallelism and synchronization models for distributed algorithms , 1985, SIGMETRICS '85.

[23]  Masahiro Fujita,et al.  On variable ordering of binary decision diagrams for the application of multi-level logic synthesis , 1991, Proceedings of the European Conference on Design Automation..

[24]  Bengt Lennartson,et al.  Generic resource booking models in flexible cells , 2001, Proceeding of the 2001 IEEE International Symposium on Intelligent Control (ISIC '01) (Cat. No.01CH37206).

[25]  David Chapman,et al.  Planning for Conjunctive Goals , 1987, Artif. Intell..

[26]  Peter Radford,et al.  Petri Net Theory and the Modeling of Systems , 1982 .

[27]  Jørn Lind-Nielsen,et al.  BuDDy : A binary decision diagram package. , 1999 .

[28]  Jaco Geldenhuys,et al.  Techniques for Smaller Intermediary BDDs , 2001, CONCUR.

[29]  Christoph Meinel,et al.  Efficient Boolean Manipulation With OBDD's can be Extended to FBDD's , 1994, IEEE Trans. Computers.

[30]  Bengt Lennartson,et al.  Early termination by local string in incremental language containment tests , 2004 .

[31]  Sang Joon Kim,et al.  A Mathematical Theory of Communication , 2006 .

[32]  Robert W. Floyd,et al.  Assigning Meanings to Programs , 1993 .

[33]  Jordi Cortadella,et al.  Efficient encoding schemes for symbolic analysis of Petri nets , 1998, Proceedings Design, Automation and Test in Europe.

[34]  WegenerIngo,et al.  Improving the Variable Ordering of OBDDs Is NP-Complete , 1996 .

[35]  Edmund M. Clarke,et al.  Deadlock prevention in flexible manufacturing systems using symbolic model checking , 1996, Proceedings of IEEE International Conference on Robotics and Automation.

[36]  Gerard J. Holzmann,et al.  An Analysis of Bitstate Hashing , 1995, Formal Methods Syst. Des..

[37]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[38]  A. Tarski A LATTICE-THEORETICAL FIXPOINT THEOREM AND ITS APPLICATIONS , 1955 .

[39]  A. Prasad Sistla,et al.  Automatic verification of finite state concurrent system using temporal logic specifications: a practical approach , 1983, POPL '83.

[40]  Christoph Meinel,et al.  Local Encoding Transformations for Optimizing OBDD-Representations of Finite State Machines , 1996, Formal Methods Syst. Des..

[41]  Howard Wong-Toi,et al.  Symbolic Synthesis of Supervisory Controllers , 1992, 1992 American Control Conference.

[42]  Marcus Nilsson,et al.  Regular Model Checking , 2000, CAV.

[43]  Martin Fabian,et al.  Desco — a Tool for Education and Control of Discrete Event Systems , 2000 .

[44]  Niklas Sörensson,et al.  Temporal induction by incremental SAT solving , 2003, BMC@CAV.

[45]  W DijkstraEdsger Self-stabilizing systems in spite of distributed control , 1974 .

[46]  Knut Åkesson,et al.  Supremica - A Tool for Verification and Synthesis of Discrete Event Supervisors , 2003 .

[47]  C. Petri Kommunikation mit Automaten , 1962 .

[48]  W. M. Wonham,et al.  STCT: An Efficient Algorithm for Supervisory Control Design , 2002 .

[49]  Mary Sheeran,et al.  Checking Safety Properties Using Induction and a SAT-Solver , 2000, FMCAD.

[50]  Karl N. Levitt,et al.  Greatest Common Divisor of n Integers and Multipliers (Certification of Algorithm 386) , 1973, Commun. ACM.

[51]  P. Ramadge,et al.  Supervisory control of a class of discrete event processes , 1987 .

[52]  Bengt Lennartson,et al.  Efficient application of symbolic tools for resource booking problems , 2001, Proceedings of the 2001 American Control Conference. (Cat. No.01CH37148).

[53]  Knut Åkesson,et al.  Petri Net Models in Batch Control , 1999 .

[54]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[55]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[56]  Olivier Coudert,et al.  Verification of Synchronous Sequential Machines Based on Symbolic Execution , 1989, Automatic Verification Methods for Finite State Systems.

[57]  Zohar Manna,et al.  Toward automatic program synthesis , 1971, Symposium on Semantics of Algorithmic Languages.

[58]  Jordi Cortadella,et al.  Structural Methods to Improve the Symbolic Analysis of Petri Nets , 1999, ICATPN.

[59]  Torbjörn Liljenvall Scheduling for production systems , 1998 .

[60]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[61]  W. M. Wonham,et al.  Modular supervisory control of discrete-event systems , 1988, Math. Control. Signals Syst..

[62]  Bruce H. Krogh,et al.  Synthesis of feedback control logic for a class of controlled Petri nets , 1990 .

[63]  Gerard J. Holzmann,et al.  On Limits and Possibilities of Automated Protocol Analysis , 1987, PSTV.

[64]  Beate Bollig,et al.  Improving the Variable Ordering of OBDDs Is NP-Complete , 1996, IEEE Trans. Computers.

[65]  Richard S. Sutton,et al.  Reinforcement Learning: An Introduction , 1998, IEEE Trans. Neural Networks.

[66]  Knut Åkesson,et al.  Exploiting Modularity for Synthesis and Verification of Supervisors , 2002 .

[67]  S. Minato Implicit manipulation of polynomials using zero-suppressed BDDs , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[68]  J. Gunnarsson Symbolic Methods and Tools for Discrete Event Dynamic Systems , 1997 .

[69]  Kavita Ravi,et al.  Hints to accelerate Symbolic Traversal , 1999, CHARME.

[70]  In-Ho Moon,et al.  Border-Block Triangular Form and Conjunction Schedule in Image Computation , 2000, FMCAD.

[71]  S. Balemi,et al.  Supervisory control of a rapid thermal multiprocessor , 1993, IEEE Trans. Autom. Control..

[72]  Marco Roveri,et al.  Conformant Planning via Symbolic Model Checking , 2000, J. Artif. Intell. Res..

[73]  Erik Schon,et al.  On the Computation of Fixpoints in Static Program Analysis with an Application to Analysis of AKL , 1995 .

[74]  Kim G. Larsen,et al.  Verification of Hierarchical State/Event Systems using Reusability and Compositionality , 1999, Formal Methods Syst. Des..

[75]  A. Vahidi,et al.  Efficient Analysis of Large Discrete-Event Systems with Binary Decision Diagrams , 2005, Proceedings of the 44th IEEE Conference on Decision and Control.

[76]  David L. Dill,et al.  The Murphi Verification System , 1996, CAV.

[77]  R. Malik,et al.  Incremental system verification and synthesis of minimally restrictive behaviours , 2000, Proceedings of the 2000 American Control Conference. ACC (IEEE Cat. No.00CH36334).

[78]  Ingo Wegener,et al.  The complexity of Boolean functions , 1987 .

[79]  Fausto Giunchiglia,et al.  NUSMV: a new symbolic model checker , 2000, International Journal on Software Tools for Technology Transfer.

[80]  Adi Shamir,et al.  A method for obtaining digital signatures and public-key cryptosystems , 1978, CACM.

[81]  Shinya Ishihara,et al.  Manipulation of regular expressions under length constraints using zero-suppressed-BDDs , 1995, ASP-DAC '95.

[82]  R. Forth,et al.  An efficient heuristic for state encoding minimizing the BDD representations of the transition relations of finite state machines , 2000, Proceedings 2000. Design Automation Conference. (IEEE Cat. No.00CH37106).

[83]  Chikahiro Hori,et al.  Interleaving based variable ordering methods for ordered binary decision diagrams , 1993, ICCAD.

[84]  Shuzo Yajima,et al.  The Complexity of the Optimal Variable Ordering Problems of Shared Binary Decision Diagrams , 1993, ISAAC.

[85]  S. Toumodge Applications of Petri Nets in Manufacturing systems; Modeling, Control, and Performance Analysis [Book review] , 1995, IEEE Control Systems.

[86]  Masahiro Fujita,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, DAC '99.

[87]  Richard Rudell Dynamic variable ordering for ordered binary decision diagrams , 1993, ICCAD.

[88]  Rod M. Burstall,et al.  Proving Properties of Programs by Structural Induction , 1969, Comput. J..

[89]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[90]  Alan J. Hu,et al.  Reducing BDD Size by Exploiting Functional Dependencies , 1993, 30th ACM/IEEE Design Automation Conference.

[91]  Robert K. Brayton,et al.  Dynamic variable reordering for BDD minimization , 1993, Proceedings of EURO-DAC 93 and EURO-VHDL 93- European Design Automation Conference.

[92]  W. Murray Wonham,et al.  Control of state tree structures , 2003 .

[93]  Alan J. Hu,et al.  Techniques for efficient formal verification using binary decision diagrams , 1995 .

[94]  Bengt Lennartson,et al.  Efficient supervisory synthesis of large systems , 2004 .

[95]  Robert K. Brayton,et al.  BDD Variable Ordering for Interacting Finite State Machines , 1994, 31st Design Automation Conference.

[96]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[97]  Edsger W. Dijkstra,et al.  Hierarchical ordering of sequential processes , 1971, Acta Informatica.

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

[99]  B. A. Brandin,et al.  The supervisory control of the automated manufacturing system of the AIP , 1994, Proceedings of the Fourth International Conference on Computer Integrated Manufacturing and Automation Technology.

[100]  Randal E. Bryant,et al.  On the Complexity of VLSI Implementations and Graph Representations of Boolean Functions with Application to Integer Multiplication , 1991, IEEE Trans. Computers.

[101]  S. Edelkamp,et al.  Deterministic State Space Planning with BDDs , 1999 .