|
libFAUDES
Sections
|
libFAUDES User ReferenceThe user interface of libFAUDES takes a simple functions on parameters approach. Parameters are of a particular type (faudes-type) and represent e.g. generators or alphabets. Functions (faudes-functions) operate on their parameters to implement algorithms e.g. to compute the synchronous composition of two generators. This user reference is organized in sections, that loosely correspond to libFAUDES plug-ins. Each plug-in provides specialised faudes-types and faudes-functions to address a specific approach to the design or analysis of discrete event systems. Sections present in this copy of libFAUDES are: CoreFaudes, Diagnosis, Example, HioSys, Multitasking, Observer, Simulator, Synthesis. The user reference is complemented by the comprehensive and more technical C++ API documentation. TypesFaudes-typed objects are characterised by their configuration data, which can read from or written to a file. The corresponding file formats are based on sequences of tokens that form nested sections to hold sets or lists of strings or integers. For example, the alphabet Sigma = {alpha, beta, gamma} is represented as <Alphabet> "alpha" "beta" "gamma" </Alphabet> Faudes-types available in this copy of libFAUDES are: Alphabet, Boolean, ColorSet, ComediDevice, DeviceExecutor, Diagnoser, EventRelabelMap, EventSet, EventSetVector, FailureTypeMap, Generator, GeneratorVector, HioConstraint, HioController, HioEnvironment, HioPlant, Integer, IntegerVector, LoggingExecutor, MtcSystem, ParallelExecutor, ProposingExecutor, SignalDevice, SimplenetDevice, String, System, SystemVector, WagoDevice. FunctionsFaudes-functions implement operations to be performed on faudes-typed parameters. Each faudes-function has one or more signatures to specify supported parameter types. For example, the function for the parallel composition of two generators has the following signature:
Signature:
Parallel(+In+ Generator G1, +In+ Generator G2, +Out+ Generator GRes) A parameter that remains constant during the execution of a function is referred to as an argument, indicated by +In+. A parameter, that does not affect the outcome of the function, but that does change its value during execution, is referred to as a result, indicated by +Out+. Other parameters are flagged +InOut+. Faudes-functions available in this copy of libFAUDES are: Accessible, AlphabetDifference, AlphabetIntersection, AlphabetLanguage, AlphabetUnion, AltAccessible, Automaton, Coaccessible, Complete, ComputeDecentralizedDiagnoser, ComputeDecentralizedModularDiagnoser, ComputeEventDiagnoser, ComputeLanguageDiagnoser, ComputeLoopPreservingObserver, ComputeModularDiagnoser, Deterministic, EmptyLanguage, EmptyStringLanguage, FullLanguage, HioFreeInput, HioShuffle, HioSynth, HioSynthHierarchical, HioSynthMonolithic, InsertRelabeledEvents, IntegerSum, InvProject, IsAccessible, IsCoDiagnosable, IsCoaccessible, IsComplete, IsControllable, IsDeterministic, IsEmptyLanguage, IsEventDiagnosable, IsHioConstraintForm, IsHioControllerForm, IsHioEnvironmentForm, IsHioPlantForm, IsIndicatorEventDiagnosable, IsLanguageDiagnosable, IsLocallyControlConsistent, IsLoopPreservingObserver, IsModularDiagnosable, IsMsaObserver, IsMtcObserver, IsMutuallyControllable, IsNaturalObserver, IsNonblocking, IsNormal, IsOmegaClosed, IsOmegaControllable, IsOmegaTrim, IsPrefixClosed, IsRelativelyMarked, IsRelativelyOmegaClosed, IsRelativelyPrefixClosed, IsStronglyCoaccessible, IsStronglyTrim, IsTrim, KleeneClosure, LanguageComplement, LanguageConcatenate, LanguageDifference, LanguageDisjoint, LanguageEquality, LanguageInclusion, LanguageIntersection, LanguageUnion, MarkAllStates, MsaObserver, MsaObserverLcc, MtcDeterministic, MtcInvProject, MtcNaturalObserver, MtcParallel, MtcProject, MtcProjectNonDet, MtcStateMin, MtcSupCon, MtcSupConNB, NaturalObserverExtension, NaturalObserverLcc, NaturalObserverRelabeling, OmegaClosure, OmegaParallel, OmegaSupConNB, OmegaTrim, OptimalColorSet, Parallel, PrefixClosure, Product, Project, SelfLoop, StateMin, StronglyCoaccessible, StronglyTrim, SupCon, SupConComplete, SupConCompleteNB, SupConNB, SupNorm, SupNormClosed, Trim. LiteratureThe following list of references is assembled from the plug-ins available in this copy of libFAUDES. It is meant to acknowledge research contributions relevant to the implemented algorithms and may serve as a starting point for a deeper literature review. [C1] W.M. Wonham, Supervisory Control of Discrete-Event Systems, available at University of Toronto, 2009 (revised). [C2] C.G. Cassandras, S. Lafortune, Introduction to Discrete Event Systems, Springer Netherlands, 2007 (2nd ed). [C3] E. Hopcroft and J.D. Ullman. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, 1979. [X1] T. Moor, S. Perk and K. Schmidt. libFAUDES - An Open Source C++ Library for Discrete Event Systems. Workshop on Discrete Event Systems, Goeteborg, Sweden, May 2008. [S1] P.J. Ramadge and W.M. Wonham, The control of discrete event systems, Proceedings of the IEEE, vol 77, issue 1, pp. 81-98, 1989. [S2] R.D. Brandt, V. Garg, R. Kumar , F. Lin, S.I. Marcus, W.M. Wonham, Formulas for Calculating Supremal Controllable and Normal Sublanguages, System & Control Letters, vol 15, no 2, pp. 111-117, 1990. [S3] P.J. Ramadge, Some tractable supervisory control problems for discrete-event systems modeled by Buchi automata, IEEE Transactions on Automatic Control, vol 34, no 1, pp. 10-19, 1989. [S4] R. Kumar, V. Garg, S.I. Marcus, On supervisory control of sequential behaviors, IEEE Transactions on Automatic Control, vol 37, no 12, pp. 1978-1985, 1992. [S5] J.G. Thistle, W.M. Wonham, Supervision of Infinite Behavior of Discrete-Event Systems, SIAM Journal on Control and Optimization, vol 32, no, 4, pp. 1098 - 1113, 1994. [O1] K. C. Wong and W. M. Wonham. On the computation of observers in discrete event systems. Discrete Event Dynamic Systems, vol. 14, no. 1, pp. 55-107, 2004. [O2] K. Schmidt and C. Breindl. On maximal permissiveness of hierarchical and modular supervisory control approaches for Discrete Event Systems. Workshop on Discrete Event Systems, Goeteborg, Sweden, May 2008. [O3] K. Schmidt, Th. Moor, S. Perk. Nonblocking hierarchical control of decentralized discrete event systems. IEEE Transactions on Automatic Control, 53(10):2252-2265, Nov 2008. [O4] Th. Moor, K. Schmidt, S. Perk Applied Supervisory Control for a Flexible Manufacturing System. Workshop on Discrete Event Systems, 2010. [O5] K. Schmidt, Ch. Breindl. Maximally Permissive Hierarchical Control of Decentralized Discrete Event Systems. IEEE Transactions on Automatic Control, 56(5), May 2011. [O6] L. Feng and W. Wonham. On the computation of natural observers in discrete-event systems. Discrete Event Dynamic Systems: Theory and Applications, 20(1):63-102, Mar. 2010. [D1] M. Sampath, R. Sengupta, S. Lafortune, K. Sinnamohideen, and D. Teneketzis. Diagnosability of discrete-event systems. IEEE Transactions on Automatic Control, 40(9):1555-1575, Sep 1995. [D2] S. Jiang, Z. Huang, V. Chandra, and R. Kumar. A polynomial algorithm for testing diagnosability of discrete-event systems. IEEE Transactions on Automatic Control, 46(8):1318-1321, Aug 2001. [D3] W. Qui and and R. Kumar. Decentralized failure diagnosis of discrete event systems. IEEE Transactions on Systems, men and cybernetics. Part A: Systems and Humans, 36(2):384-395, March 2006. [D4] C. Zhou, R. Kumar, R. Sreenivas, Decentralized modular diagnosis of concurrent discrete event systems, Discrete Event Systems, International Workshop on, pp. 388-393, May 2008. [D5] T.-S. Yoo, H. E. Garcia, Diagnosis of behaviors of interest in partially observed discrete-event systems, System & Control Letters, 57(12):1023-1029, December 2008. [D6] O. Contant, S. Lafortune and D. Teneketzis, Diagnosability of Discrete Event Systems with Modular Structure, Discrete Event Dynamic Systems, 16(1):9-37, January 2006. [H1] S. Perk, Th. Moor and K. Schmidt, Hierarchical Discrete Event Systems with Inputs and Outputs, Proceedings. 8th International Workshop on Discrete Event Systems (WODES06) [H2] S. Perk, Th. Moor and K. Schmidt, Controller Synthesis for an I/O-Based Hierarchical System Architecture, Proceedings. 9th International Workshop on Discrete Event Systems (WODES08) [H3] J.C. Willems, Paradigms and puzzles in the theory of dynamic systems, IEEE Transactions on Automatic Control, vol. 36, issue 3, pp. 258--294, 1991. [H4] Th. Moor, J. Raisch and J.M. Davoren, Admissibility criteria for a hierarchical design of hybrid control systems, Proceedings. IFAC Conference on the Analysis and Design of Hybrid Systems (ADHS03) [H5] T. Jéron, H. Marchand, V. Rusu and V. Tschaen, Ensuring the conformance of reactive discrete-event systems using supervisory control, Proceedings. 42nd IEEE Conference on Decision and Control (CDC03) [M1] M. H. de Queiroz, J. E. R. Cury, and W.M Wonham. Multitasking supervisory control of discreteevent systems. Discrete Event Dynamic Systems, vol. 15, no. 4, pp. 375-395, 2005. [M2] M. H. de Queiroz and J. E. R. Cury. Modular Multi-tasking Supervisory Control of Composite Discrete Event Systems. IFAC World Congress, 2005. [M3] K. Schmidt, M. H. de Queiroz and J. E. R. Cury. Hierarchical and Decentralized Multitasking Control of Discrete Event Systems. Conference on Decision and Control, 2007. [M4] K. Schmidt and J. E. R. Cury. Redundant Tasks in Multitasking Control of Discrete Event Systems. Workshop on Dependable Control of Discrete Event Systems, Italy, 2009. |
libFAUDES 2.16b --- 2010-9-8 --- plugins "example synthesis observer diagnosis hiosys multitasking timed simulator iodevice luabindings"