The observer algorithm is elaborated in 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. In addition, methods to compute natural projections that exhibit output control consistency (OCC) and local control consistency (LCC) are provided. See for example K. Schmidt and C. Breindl, "On Maximal Permissiveness of Hierarchical and Modular Supervisory Control Approaches for Discrete Event Systems," Workshop on Discrete Event Systems, 2008.
Definition in file op_observercomputation.cpp.
#include "op_observercomputation.h"
Go to the source code of this file.
Namespaces | |
namespace | faudes |
Functions | |
void | faudes::calcAbstAlphObs (cGenerator &rGenObs, EventSet &rHighAlph, EventSet &rNewHighAlph, map< Idx, set< Idx > > &rMapRelabeledEvents) |
Lm-observer computation. | |
void | faudes::calcAbstAlphObs (vGenerator &rGenObs, EventSet &rControllableEvents, EventSet &rHighAlph, EventSet &rNewHighAlph, map< Idx, set< Idx > > &rMapRelabeledEvents) |
Lm-observer computation. | |
void | faudes::calcAbstAlphObs (vGenerator &rGenObs, EventSet &rControllableEvents, EventSet &rHighAlph, EventSet &rNewHighAlph, map< Transition, Idx > &rMapChangedTrans) |
Lm-observer computation. | |
void | faudes::calculateDynamicSystemObs (const vGenerator &rGen, EventSet &rHighAlph, vGenerator &rGenDyn) |
Computation of the dynamic system for an Lm-observer. | |
void | faudes::calcAbstAlphObsOCC (cGenerator &rGenObs, EventSet &rHighAlph, EventSet &rNewHighAlph, map< Idx, set< Idx > > &rMapRelabeledEvents) |
Lm-observer computation including output control consistency (OCC). | |
void | faudes::calcAbstAlphObsOCC (vGenerator &rGenObs, EventSet &rControllableEvents, EventSet &rHighAlph, EventSet &rNewHighAlph, map< Transition, Idx > &rMapChangedTrans) |
Lm-observer computation including output control consistency (OCC). | |
void | faudes::calculateDynamicSystemObsOCC (const vGenerator &rGen, EventSet &rControllableEvents, EventSet &rHighAlph, vGenerator &rGenDyn) |
Computation of the dynamic system for an Lm-observer that also fulfills output control consistency (OCC). | |
void | faudes::forwardReachabilityObs (const vGenerator &rGen, const EventSet &rHighAlph, Idx lowState, Idx mLabel, vGenerator &rGenDyn) |
Forward reachability algorithm to determine locally reachable marked states. | |
void | faudes::backwardReachabilityObsOCC (const TransSetX2EvX1 &rTransSetX2EvX1, const EventSet &rControllableEvents, const EventSet &rHighAlphabet, Idx exitState, Idx currentState, bool controllablePath, map< Idx, map< Idx, bool > > &rExitLocalStatesMap, StateSet &rDoneStates) |
Backward reachability algorithm for the dynamic system compuptation that fulfills the observer and output control consistency (OCC) condition. | |
void | faudes::calcAbstAlphObsLCC (cGenerator &rGenObs, EventSet &rHighAlph, EventSet &rNewHighAlph, map< Idx, set< Idx > > &rMapRelabeledEvents) |
Lm-observer computation including local control consistency (LCC). | |
void | faudes::calcAbstAlphObsLCC (vGenerator &rGenObs, EventSet &rControllableEvents, EventSet &rHighAlph, EventSet &rNewHighAlph, map< Transition, Idx > &rMapChangedTrans) |
Lm-observer computation including local control consistency (LCC). | |
void | faudes::calculateDynamicSystemObsLCC (const vGenerator &rGen, EventSet &rControllableEvents, EventSet &rHighAlph, vGenerator &rGenDyn) |
Computation of the dynamic system for an Lm-observer that also fulfills local control consistency (LCC). | |
void | faudes::backwardReachabilityObsLCC (const TransSetX2EvX1 &rTransSetX2EvX1, const EventSet &rControllableEvents, const EventSet &rHighAlphabet, Idx exitState, Idx currentState, bool controllablePath, map< Idx, map< Idx, bool > > &rExitLocalStatesMap, StateSet &rDoneStates) |
Backward reachability algorithm for the dynamic system compuptation that fulfills the observer and local control consistency (LCC) condition. | |
bool | faudes::relabel (vGenerator &rGenRelabel, EventSet &rControllableEvents, EventSet &rHighAlph, vector< Idx > &rNewPartitions, map< Idx, Idx > &rMapStateToPartition, map< Transition, Transition > &rMapChangedTransReverse, map< Transition, Idx > &rMapChangedTrans, map< Idx, EventSet > &rMapRelabeledEvents) |
Relabeling algorithm for the computation of an Lm-observer. | |
void | faudes::insertRelabeledEvents (cGenerator &rGenPlant, const map< Idx, set< Idx > > &rMapRelabeledEvents, cEventSet &rNewEvents) |
Convenience function for relabeling events in a given generator. | |
void | faudes::insertRelabeledEvents (cGenerator &rGenPlant, const map< Idx, set< Idx > > &rMapRelabeledEvents) |
Convenience function for relabeling events in a given generator. |