Max-plus algebra generalization eigenvalue and eigenvector
[eta,v,sigma,q] = maxplusmaxalgolgeneral(A,x0)
: number of periodicity
: number of iteration
The function valid for both an irreducible and a reducible matrix A (regular matrix), and returns generalization of eigenvector (v) and a cycle time vector of matrix A (eta). If the condition is not satisfied the function returns error. And if numerical error this function maxplusmaxalgol still work but A⊗v≠l⊗v and the norm of A⊗v - (eta+v) given by norm(A⊗x - l⊗v)≤4.019D-14 .
If the matrix A irreducible, instead of use function maxalgol, the time computation will more faster. More details, you can see at http://dx.doi.org/10.1007/s10626-016-0235-4 .
A = [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.]; x0=zeros(10,1); [eta,v,sigma,q] = maxplusmaxalgolgeneral(A,x0) e=-%inf; B=[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]; [eta,v,sigma,q] = maxplusmaxalgolgeneral(B,x0) | ![]() | ![]() |