Observer for Timed Event Graphs, i.e., max-plus linear systems
A timed event graph is a dynamic system admitting an unique (max,+) linear model.
Above we propose a flash animation which illustrates the running of an observer for a such dynamic system.
It is an illustrative example of the paper "Observer Design for (max,+) Linear Systems" by L. Hardouin et al. , published in IEEE Transaction on Automatic Control , february 2010 (BibTex Entry).
Extra developments are also available in " Max-plus Linear Observer: Application to Manufacturing Systems" , see the specific LinkWodes2010
In the upper part, the system is drawn in black, it is a timed event
graph with disturbances which disable the firing of some transitions.
These disturbances are drawn in red and are labelled q1, q2 and q3
(they can be seen as uncontrollable inputs, e.g. machine breakdowns). The buttons "Disable"
allow to disable or enable the corresponding transition.
In blue "xi(t)=0" is the time evolution of the associated transition,
it corresponds to the number of firing at time t. It is a counter.
In the lower part, the model of the system is drawn in black , it is the system without the unknown distrubances .
In green, there is the observer obtained thanks to the results given in the paper (BibTex Entry).
In blue "errorxi(t)" is the error evolution defined as the difference
between the estimated state xi(t) (in the lower part) and the state of
the system xi(t) (in the upper part), this error is always greater than
or equal to zero since we assume that the disturbances only delay the
firing of transitions.
To run the animation you have to press on button labelled "10 tokens",
at each time, you will add 10 tokens on each entry labelled u1 and u2.
You can also put inside 1 token for 1 input with the button labelled "1
token".
You can then check that the estimated state and the real state are equal, the errors stay to zero.
By selecting button "Disable" on the system (it can depict a break down
in the system localized on the corresponding transition) you can check
that the estimated state is informed thanks to the green observer and
that it is as close as possible to the real one.
Sometimes there is not equality but it is still the best which can be done with this observer. Results in LinkWodes2010 allow to get the bounds of these errors.
To
ensure a null error whatever be the disturbances (or the initial
conditions) an assumption has to be fulfilled (see the proposition 4 in
the paper to obtain this one).
This assumption is not fulfilled here, nevertheless the one of the
proposition 3 is fulfilled and then it is guaranteed that the error is
bounded since the asymptotic behavior of the state and of the estimated
state are equal. The details of the computation are given in the paper.
The example are computed thanks to the minmaxgd toolbox, it runs with Scilab. The Scilab script is given here : ObserverIEEETAC.sce and the library is available here : Minmaxgd Library. Some other source codes are available here LinkWodes2010.