<< pipesimulation MaxPlusAndPetrinet readpipe >>

MaxPlusAndPetrinet >> MaxPlusAndPetrinet > policyIteration

policyIteration

Max-plus algebra eigenvalue and eigenvector

Calling Sequence

[eigvalMode,x,criticalcircuit] = policyIteration(A)

Parameters

A
: input matrix have size nxnxp.
criticalcircuit
: an criticalcircuit of the graph G(A) have size mxn.
eigenvalMode
: an eigenvalue of the matrix A have size nx1.
x
: a corresponding eigenvector of the matrix A .

Description

The function valid for both an irreducible and a reducible matrix A since it has least one non-zero entry per row, and matrix A (:,:,1) contains no circuits. If the condition is not satisfied the function returns error. This function determine matrix eigvalmode and x such that D⊗m⊗x=A (D⊗-1)⊗D⊗m⊗x where diag(D)=eigvalmode using Policy Iteration Algorithm.

For details see: J.van der Woude (2000); "On the behaviour in classes of min-max-plus system", page 33.

Examples

A =[-%inf  3. -%inf -%inf 7. -%inf;
       2. -%inf 6. -%inf 7. 2.;
       -%inf 7. 8. 9. -%inf -%inf;
       -%inf -%inf -%inf 1. 2. -%inf;
       8. -%inf 7. -%inf -%inf 2.;
       0. -%inf -%inf 6. 5. -%inf]; 
C=maxpluszeros(6,6);
C(:,:,2)=A;
[eigvalmode,x,criticalcircuit] = policyIteration(A)
//or yo can write
[eigvalmodeA,xA] = policyIteration(C)

B = [12. -%inf -%inf  19. 13.  5.  15. -%inf -%inf -%inf;   
     11.  10.   16.    9. -%inf  13.  6.  8.  5. 18.;  
     -%inf  8. -%inf -%inf  19. -%inf  8. -%inf  4. -%inf;   
     17. -%inf  16. -%inf  -%inf  5. -%inf 17. 16. 19.;  
     -%inf -%inf 4. -%inf  8. -%inf  20. -%inf  16. 14.;  
     6.  2. 7. -%inf -%inf -%inf -%inf -%inf 10. 19.;  
     -%inf 1. -%inf -%inf 9. -%inf 14. 5. -%inf 1.;   
     19. -%inf 9. 19. 4. 20. 18. 10. 16. 11.;  
     5. -%inf 13. 15. -%inf -%inf -%inf 20. 3. -%inf;   
     18.  15. -%inf -%inf 7. -%inf 13. 9. 15. 6.];
[eigvalmodeB,xB,criticalcircuitB]=policyIteration(B)

e=-%inf;
C=[e e 16 e e e e e e e;   
     14 15 18 e e e e e e e;  
     14 2 e 1 e e e e e e;   
     17 3 e 12 2 e 3 e e e;  
     12 e e 1 e e e e e e;  
     e e e e e 8 e e e e;  
     e e e e e e 7 19 e e;   
     e e e e e e e e 2 e;  
     e e e e e e e 13 e e;   
     e e e e e 10 7 12 2 5];
[eigvalmodeC,xC,criticalcircuitC]=policyIteration(C)

Author

"Max-Plus Algebra And Petrinet Toolbox", ver. 1.1.0, February, 2013.

See Also


Report an issue
<< pipesimulation MaxPlusAndPetrinet readpipe >>