 Next Article in Journal
On the Decomposability of the Linear Combinations of Euler Polynomials with Odd Degrees
Next Article in Special Issue
Converging Cylindrical Symmetric Shock Waves in a Real Medium with a Magnetic Field
Previous Article in Journal
Electronic Structure of Intermetallic Antiferromagnet GdNiGe
Previous Article in Special Issue
Rank Equalities Related to the Generalized Inverses A‖(B1,C1), D‖(B2,C2) of Two Matrices A and D
Article

# An Efficient Algorithm for Nontrivial Eigenvectors in Max-Plus Algebra

1
Department of Mathematics, Quaid-i-Azam University, Islamabad 45320, Pakistan
2
Department of Mathematics and Computer Sciences, Stetson University, DeLand, FL 32723, USA
*
Authors to whom correspondence should be addressed.
Symmetry 2019, 11(6), 738; https://doi.org/10.3390/sym11060738
Received: 30 April 2019 / Revised: 24 May 2019 / Accepted: 27 May 2019 / Published: 30 May 2019

## Abstract

The eigenproblem for matrices in max-plus algebra describes the steady state of the system, and therefore it has been intensively studied by many authors. In this paper, we propose an algorithm to compute the eigenvalue and the corresponding eigenvectors of a square matrix in an iterative way. The algorithm is extended to compute the nontrivial eigenvectors for Latin squares in max-plus algebra.

## 1. Introduction

Discrete event systems can be used to study processes that are driven by the occurrence of events. The relevant variables represent times at which events are taking place. An important class of systems consists of min-max-plus systems in which the operations—the maximization, the minimization and the addition, can describe discrete event dynamic systems. The union of two sets of equations describes the min-max-plus systems, where the maximization and addition are contained in one set of equations and the minimization and addition are contained in another set of equations.
Max-plus algebra $R ϵ = R ∪ { ϵ }$ where $ϵ = − ∞$, is a set which deals with two main operations—⊕ as maximization and ⊗ as addition. These operations endow $R ϵ$ with the structure of a commutative semiring.
There are various applications of max-plus algebra in different areas of mathematics . Max-plus algebra is also considered in traffic control, parallel processing systems, telecommunication networks, manufacturing systems, machine scheduling, and control theory [2,3,4]. In , the author has described the model of all train connections of the whole Dutch railway system with all train types by a max-plus system. Max-plus algebra can be used to model disk events related to synchronization and time delays . A new steganography method has been proposed to hide an image into another image using matrix multiplication operations on max-plus algebra . In  the author has shown how max-plus algebra can be helpful for the dynamic programming of algorithms. The primary reason for the utilization of max-plus algebra in different fields is that many equations which are non-linear in conventional algebra become linear in max-plus algebra .
In this paper, we consider the eigenproblems in max-plus algebra. Eigenproblems are the problems of finding an eigenvalue $λ$ and an eigenvector v from an $n × n$ matrix M such that $M v = λ v$. The algorithm in  can solve these problems.
A novel iterative method is proposed for the computation of eigenvalue and the corresponding eigenvectors in max-plus algebra. To evaluate the eigenvalue and the corresponding eigenvectors of discrete event systems, some algorithms have been established in [8,9,10,11]. The first algorithm to determine the eigenvalue was given by Karp . A new algorithm was proposed to solve systems of max-plus linear inequalities . This algorithm uses the technique of cyclic projectors. In , there is a method for determining the eigenvectors of monotone and homogenous functions.
The paper is structured as follows. In Section 2, basic results and definitions related to max-plus algebra are described. A new algorithm is proposed to determine the eigenvalue and eigenvectors in an iterative way. In Section 3, we discuss the Latin squares in max-plus algebra and extend the algorithm for Latin squares. Conclusions are made in Section 4.

## 2. Max-Plus Algebra

In this section, we recall some basic results and definitions related to the max-plus algebra. The symbols $( R ϵ , ⊕ , ⊗ )$ denote the algebraic structure of max-plus algebra where $R ϵ$ is the set $R ∪ { − ∞ }$ and $⊗ , ⊕$ are the binary operations defined as
$a ⊗ b = a + b ,$
and
$a ⊕ b = m a x ( a , b ) .$
These operations endow $R ϵ$ with a structure of commutative semiring. Both the operations ⊗ and ⊕ satisfy associativity and commutativity.
Also for all $m ∈ R ϵ$
$m ⊕ ϵ = ϵ ⊕ m = m ,$
$m ⊗ 0 = 0 ⊗ m = m .$
So in max-plus algebra, $ϵ$ is a null element and 0 is a unit element.
For $m ∈ R ϵ$ and a non-negative integer n, define
$m ⊗ n = m ⊗ m ⊗ m ⊗ . . . ⊗ m ︸ n − times for n > 0 , 0 for n = 0 .$
Using the standard multiplication in $R$, we have
$m ⊗ n = n m .$
In max-plus algebra, $R ϵ m × n$ and $R ϵ m$ denote the set of all matrices of order $m × n$ with entries in $R ϵ$, and the set of all $m × 1$ vectors respectively. The set of first n natural numbers is denoted by $n ̲$, $i . e .$, $n ̲ = { 1 , … , n }$. Now let $M = ( m i j )$ and $N = ( n i j )$ be elements of $R ϵ m × n$. The sum of these two matrices $M ⊕ N = T = ( t i j )$ is defined as
$t i j = m i j ⊕ n i j = m a x ( m i j , n i j ) for i , j ∈ n ̲ .$
Let $M ∈ R ϵ m × k$ and $N ∈ R ϵ k × n$ be two matrices. The product $M ⊗ N = T ∈ R ϵ m × n$ is defined by the formula
$t i j = ⨁ l = 1 k ( m i l ⊗ n l j ) = m a x l ∈ k ̲ ( m i l + n l j ) for i ∈ m ̲ ; j ∈ n ̲ .$
For $M ∈ R ϵ n × n$, the $k t h$ power of M can be defined as
$M ⊗ k = M ⊗ M ⊗ k − 1 .$
The starting point is the following system of equations describing the time evolution of a discrete event system:
$u i ( k ) = m a x 1 ≤ j ≤ n { m i j + u j ( k − 1 ) } for all i ∈ { 1 , … , n } and k ∈ N ∖ { 0 } .$
This can be written as
$u i ( k ) = ⨁ j = 1 n ( m i j ⊗ u j ( k − 1 ) ) .$
Finally, the previous equation can compactly be written as
$u ( k ) = M ⊗ u ( k − 1 ) ,$
where $u ( k − 1 ) = [ u 1 ( k − 1 ) , … , u n ( k − 1 ) ] T ∈ R ϵ n$, $M ∈ R ϵ n × n$.
System (1) has an eigenvalue $λ ∈ R$ and the corresponding eigenvector $v ∈ R n$ if
$M ⊗ v = λ ⊗ v .$
For each matrix $M ∈ R ϵ n × n$, we can construct a directed graph (digraph) $G ( M ) = G ( N , E )$, where N is the set of vertices and E represents the set of edges. There exists an arc $i → j$ if $m j i ≠ − ∞$; such an arc will be denoted by $( i , j )$. The weight $ω ( j , i )$ for each $( i , j )$-arc is defined as $ω ( j , i ) = m j i$. If $m j i = − ∞$, then there is no $( i , j )$-arc. A path is a sequence of arcs $( a 1 , a 2 ) , … , ( a k − 1 , a k )$. If all vertices $a 1 , … , a k$ are different then the path is called an elementary path. An elementary path of the form $( a 1 , a 2 ) , … , ( a k − 1 , a 1 )$ is known as a circuit. A loop is a circuit consisting of an edge that connects a vertex to itself. The weight of a path $p = ( a 1 , a 2 ) , … , ( a k − 1 , a k )$, denoted by $ω ( p )$, is defined as the sum of weights of each arc. The length of p, denoted by $l ( p )$, is equal to the number of arcs in the path p. The average weight of a path p is defined by $ω ( p ) l ( p )$. A critical circuit is a circuit with maximum average weight. If there exists a path from each vertex i to each vertex j then the graph is said to be strongly connected. A matrix M is irreducible if and only if the digraph of M is strongly connected .
The eigenvalue of a matrix M is equal to the maximal average weight in $G ( M )$ . The eigenvalue for an irreducible matrix M, if it exists, is unique . So, problem of getting the eigenvalue of a matrix M related to the problem of getting the critical circuits in $G ( M )$.
In this paper, we find the eigenvalue $λ ∈ R$ of a matrix $M ∈ R ϵ n × n$ with the help of the maximal average weight in $G ( M )$ as done in . Then we define the matrix $M λ$ as $M λ = − λ ⊗ M$, in other words $[ M λ ] i , j = [ M ] i , j − λ$. At the end, we define
$u * ( k ) = M λ ⊗ u * ( k − 1 ) ,$
for $k ∈ N ∖ { 0 }$, where $u * ( k − 1 ) = [ u 1 * ( k − 1 ) , … , u n * ( k − 1 ) ] T ∈ R ϵ n$. Using this relation, an algorithm is derived to calculate the associated eigenvectors of a matrix M.
Theorem 1.
Let $M ∈ R ϵ n × n$ be a matrix and let
$u * ( k ) = M λ ⊗ u * ( k − 1 ) ,$
for $k ∈ N ∖ { 0 }$, where $u * ( 0 ) ≠ ϵ$. If there exist some positive integers $r > s ≥ 0$, such that $u * ( r ) = u * ( s )$, then
$M ⊗ v = λ ⊗ v ,$
where
$v = u * ( s ) ⊕ … ⊕ u * ( r − 1 ) .$
Proof of Theorem 1.
The main task is to prove that $M ⊗ v = λ ⊗ v$. Indeed, we have
$M ⊗ v = λ ⊗ ( − λ ) ⊗ M ⊗ v = λ ⊗ M λ ⊗ v = λ ⊗ M λ ⊗ { u * ( s ) ⊕ . . . ⊕ u * ( r − 1 ) } = λ ⊗ { M λ ⊗ u * ( s ) ⊕ . . . ⊕ M λ ⊗ u * ( r − 1 ) } = λ ⊗ { u * ( s + 1 ) ⊕ . . . ⊕ u * ( r ) } = λ ⊗ v .$
The main algorithm of this article stated below (Algorithm 1) gives the eigenvalue and the corresponding eigenvectors. This algorithm consists of the following steps:
 Algorithm 1 Eigenproblems in Max-Plus Algebra Compute the maximal circuit mean $λ$, in $G ( M )$.Define $M λ = − λ ⊗ M$.Define an arbitrary initial vector $u * ( 0 ) ≠ ϵ$.Iterate $u * ( k ) = M λ ⊗ u * ( k − 1 ) ,$ for $k ∈ N ∖ { 0 }$, until there are positive integers $r > s ≥ 0$, such that $u * ( r ) = u * ( s )$.Compute the eigenvector $v = u * ( s ) ⊕ … ⊕ u * ( r − 1 ) .$
Each step of the above algorithm is explained with the help of the following example.
Example 1.
Consider the following matrix $M ∈ R ϵ 4 × 4$
$M = ϵ 5 2 2 3 ϵ 1 ϵ 2 1 3 ϵ ϵ 2 2 ϵ .$
The corresponding graph $G ( M )$ is depicted in Figure 1. Since the average weight of the circuit $1 → 2 → 1$ is the maximal circuit mean, the eigenvalue $λ = 4$. Now we get
$M λ = ϵ 1 − 2 − 2 − 1 ϵ − 3 ϵ − 2 − 3 − 1 ϵ ϵ − 2 − 2 ϵ .$
Now take the initial vector
$u * ( 0 ) = 0 ϵ ϵ ϵ .$
The following sequence is obtained by iterating (3),
$u * ( 1 ) → u * ( 2 ) → u * ( 3 ) → u * ( 4 ) = u * ( 2 ) ϵ − 1 − 2 ϵ → 0 − 5 − 3 − 3 → − 4 − 1 − 2 − 5 → 0 − 5 − 3 − 3 = u * ( 2 ) .$
It follows that $s = 2 , r = 4$. We proceed with the computation of the vector v.
$v = u * ( 2 ) ⊕ u * ( 3 ) = 0 − 5 − 3 − 3 ⊕ − 4 − 1 − 2 − 5 = 0 − 1 − 2 − 3 .$
It is easy to see that indeed
$M ⊗ v = 4 3 2 1 = λ ⊗ v .$
Hence for the eigenvalue $λ = 4$, the corresponding eigenvector v of the matrix M resulting from the above algorithm is a correct eigenvector.

## 3. Latin Square

In this section, the proposed algorithm is used to compute the eigenvalue and the corresponding eigenvectors of Latin squares. A Latin square is a square matrix of size $n × n$ with n different numbers such that each row and each column contains distinct numbers . An example of a Latin square is given in the following
$L = 3 2 4 1 4 1 3 2 2 4 1 3 1 3 2 4 .$
The purpose behind considering eigenproblems for Latin squares in max-plus algebra is that similar issues have been examined for different matrices like circulant matrices [18,19], Monge matrices  and inverse Monge matrices . Eigenproblems for these special matrices are more easy to answer. For example, the maximal entry in circulant matrices is its eigenvalue.
Now we will discuss two different types of Latin square.
• The entries of L are $n ̲ = { 1 , … , n }$.
• The entries of L are $n ̲ ϵ = { 1 , … , n − 1 , ϵ }$.
Let L be a Latin square with entries in $n ̲$. Since each entry in L is finite, the corresponding graph $G ( L )$ is strongly connected. Similarly, for a Latin square L with entries in $n ̲ ϵ$, exactly one infinite entry appears in each row and column. So there exists a path of length 2 from each vertex r to each vertex s in $G ( L )$. Consequently, the graph $G ( L )$ is strongly connected. Hence in both cases, a Latin square is an irreducible matrix. In  authors show that for a Latin square L, the maximal number in L is equal to the maximal circuit mean in $G ( L )$. Therefore the eigenvalue of a Latin square L is equal to the maximal number in L .
Now using this concept, the proposed algorithm (Algorithm 2) computes the eigenvalue and eigenvectors of Latin square as follows:
 Algorithm 2 Eigenproblems for Latin Square Compute the eigenvalue $λ$ as the maximal number in L.Define $M λ = − λ ⊗ M$.Define an arbitrary initial vector $u * ( 0 ) ≠ ϵ$.Iterate $u * ( k ) = M λ ⊗ u * ( k − 1 ) ,$ for $k ∈ N ∖ { 0 }$, until there are positive integers $r > s ≥ 0$, such that $u * ( r ) = u * ( s )$.Compute the eigenvector $v = u * ( s ) ⊕ … ⊕ u * ( r − 1 ) .$
Also, recall the power algorithm presented by Subiono . This algorithm computes the eigenvalue and corresponding eigenvector for max-plus systems of type $( 1 )$.
Now we illustrate the Algorithms 2 and 3 by means of an example. In the following example, based on Algorithms 2 and 3, M is a Latin square with entries in $n ̲ ϵ$.
 Algorithm 3 Eigenproblems for Max-Plus Algebra Take an arbitrary initial state vector $u ( 0 )$$≠ ϵ$.Iterate $( 1 )$ until there are integers $p ; q$ with $p > q ≥ 0$ and a real number c, such that $u ( p ) = c ⊗ u ( q )$.Define as eigenvalue $λ = c / p − q$ (in the conventional sense).Define as eigenvector $v = ⊕ j = 1 p − q ( λ ⊗ ( p − q − j ) ⊗ u ( q + j − 1 ) )$.
Example 2.
Consider a Latin square
$M = 2 1 3 ϵ 1 ϵ 2 3 3 2 ϵ 1 ϵ 3 1 2 .$
1.
By Algorithm 2, the maximal number in M is the eigenvalue, $i . e .$,
$λ = m a x ( M ) = 3 .$
Consequently,
$M λ = − 1 − 2 0 ϵ − 2 ϵ − 1 0 0 − 1 ϵ − 2 ϵ 0 − 2 − 1 .$
Next, consider the initial vector
$u * ( 0 ) = 0 ϵ ϵ ϵ .$
After iterating $( 3 )$, the following sequence is obtained:
$u * ( 1 ) → u * ( 2 ) → u * ( 3 ) → u * ( 4 ) = u * ( 2 ) − 1 − 2 0 ϵ → 0 − 1 − 1 − 2 → − 1 − 2 0 − 1 → 0 − 1 − 1 − 2 = u * ( 2 ) .$
It follows that $s = 2 , r = 4$. To compute a corresponding eigenvector we proceed with the computation of the vector v.
$v = u * ( s ) ⊕ … ⊕ u * ( r − 1 ) = u * ( 2 ) ⊕ u * ( 3 ) = 0 − 1 − 1 − 2 ⊕ − 1 − 2 0 − 1 = 0 − 1 0 − 1 .$
It is easy to check whether or not $M ⊗ v = λ ⊗ v$. It follows that
$M ⊗ v = 3 2 3 2 = λ ⊗ v .$
Hence for the eigenvalue $λ = 3$, the corresponding eigenvector v of the matrix M resulting from the above algorithm is a correct eigenvector.
2.
For Algorithm 3, consider the initial vector
$u ( 0 ) = 0 ϵ ϵ ϵ .$
Iterating $( 1 )$, we obtain
$u ( 1 ) → u ( 2 ) → u ( 3 ) → u ( 4 ) = u ( 2 ) 2 1 3 ϵ → 6 5 5 4 → 8 7 9 8 → 12 11 11 12 = 6 ⊗ u ( 2 ) .$
It follows that $q = 2 , p = 4$. The vector v resulting from Algorithm 3, is given as
$v = ⊕ j = 1 p − q ( λ ⊗ ( p − q − j ) ⊗ u ( q + j − 1 ) ) = ⊕ j = 1 2 ( λ ⊗ ( 2 − j ) ⊗ u ( 2 + j − 1 ) ) = λ ⊗ u ( 2 ) ⊕ u ( 3 ) = 3 ⊗ 6 5 5 4 ⊕ 8 7 9 8 = 9 8 8 7 ⊕ 8 7 9 8 = 9 8 9 8 .$
Which is the correct eigenvector.
Remark 1.
The main purpose of this article is to present an alternative algorithm for the computation of an eigenvalue and the associated eigenvector in max-plus algebra. This algorithm works in an iterative way. Here we give a computational comparison of the Algorithm 2 with the Algorithm 3 given by Subiono and van dar Woude . In the case of a circulant matrix or a Latin square, the maximum value is the eigenvalue. Therefore the Algorithm 2 works quite easily compared to the Algorithm 3 This is because Algorithm 3 ends up in a periodic behavior if there exists a real number c and integers $r > s ≥ 0$, such that $u ( r ) = c ⊗ u ( s )$, while in the case of Algorithm 2, we do not need any real number c. Also the Algorithm 3 gives an eigenvector v as
$v = ⊕ j = 1 r − s ( λ ⊗ ( r − s − j ) ⊗ u ( s + j − 1 ) ) ,$
however, when using the Algorithm 2 one gets an eigenvector v as $v = u * ( s ) ⊕ … ⊕ u * ( r − 1 )$. Hence the computation of an eigenvector using the Algorithm 2 is quite easy compared to the Algorithm 3.

## 4. Conclusions

In this article, the eigenproblem for max-plus algebra is discussed. A detailed proof has been presented for the proposed algorithm that can calculate the eigenvalue and the corresponding eigenvectors of strongly connected max-plus algebra systems. The algorithm is implemented by means of a simple example. In addition, this algorithm has been extended for Latin squares in max-plus algebra and compared with other existing algorithms. In the future, using the idea of this article, an algorithm can be derived to compute the eigenvalue and an associated eigenvector for bipartite (min, max, +)-systems.

## Author Contributions

All authors contributed equally to this work.

## Funding

Fazal Abbas acknowledges the financial support provided by the College of Arts and Sciences, Stetson University, USA.

## Acknowledgments

We thank the referees for their valuable suggestions and helpful remarks.

## Conflicts of Interest

The authors declare no conflict of interest. The funding sponsors had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, and in the decision to publish the results.

## References

1. Halburd, R.G.; Southall, N.J. Tropical nevanlinna theory and ultra-discrete equations. Int. Math. Res. Not. 2009, 5, 887–911. [Google Scholar]
2. Cuninghame-Green, R.A. Lecture notes in economics and mathematical systems. In Minimax Algebra; Springer-Verlag: New York, NY, USA, 1979. [Google Scholar]
3. De Shutter, B. On the ultimate behavior of the sequence of consecutive powers of a matrix in the max-plus algebra. Linear Algebra Its Appl. 2000, 307, 103–117. [Google Scholar] [CrossRef]
4. Gaubert, S. Methods and applications of (max,+) linear algebra. In Annual Symposium on Theoretical Aspects of Computer Science; Springer-Verlag: Berlin/Heidelberg, Germany, 1997; pp. 261–282. [Google Scholar]
5. Subiono on Classes of Min-Max-Plus Systems and Their Application. Ph.D. Thesis, Delft University of Technology, Delft, The Netherlands, 2000.
6. Kubo, S.; Nishinari, K. Applications of max-plus algebra to flow shop scheduling problems. Discret. Appl. Math. 2018, 247, 278–293. [Google Scholar] [CrossRef]
7. Santoso, K.A.; Suprajitno, H. On Max-Plus Algebra and Its Application on Image Steganography. Sci. World J. 2018, 2018, 6718653. [Google Scholar] [CrossRef] [PubMed]
8. Braker, J.G.; Olsder, G.J. The power algorithm in max algebra. Linear Algebra Its Appl. 1993, 182, 67–89. [Google Scholar] [CrossRef]
9. Subiono; van der Woude, J. Power algorithms for (max,+)- and bipartite (min,max,+)-systems. Discret. Event Dyn. Syst. 2000, 10, 369–389. [Google Scholar] [CrossRef]
10. Garca-Planas, M.I.; Magret, M.D. Eigenvectors of permutation matrices. Adv. Pure Math. 2015, 5, 390–394. [Google Scholar] [CrossRef]
11. Mufid, M.S.U. Subiono Eigenvalues and eigenvectors of latin squares in max-plus algebra. J. Indones. Math. Soc. 2014, 20, 37–45. [Google Scholar] [CrossRef]
12. Karp, R.M. A characterization of the minimum cycle mean in a digraph. Discret. Math. 1978, 23, 309–311. [Google Scholar] [CrossRef]
13. Akian, M.; Gaubert, S.; Nitica, V.; Singer, I. Best approximation in maxplus semimodules. Linear Algebra Its Appl. 2011, 435, 3261–3296. [Google Scholar] [CrossRef]
14. Gunawardena, J. Min-max functions. Discret. Event Dyn. Syst. 1994, 4, 377–407. [Google Scholar] [CrossRef]
15. Brualdi, R.A.; Ryser, H.J. Combinatorial Matrix Theory; Cambridge University Press: Cambridge, UK, 1991. [Google Scholar]
16. Subiono, A.M. Aljabar max-plus dan terapannya. Buku Ajar Mata Kuliah Pilihan Pasca Sarjana Matematika. In Proceedings of the National Graduate Seminar XII—ITS, Surabaya, Indonesia, 11–12 October 2012. [Google Scholar]
17. McKay, B.D.; Wanless, I.M. On the number of Latin squares. Ann. Comb. 2005, 9, 334–344. [Google Scholar] [CrossRef]
18. Tomaskova, H. Eigenproblem for circulant matrices in max-plus algebra. In Proceedings of the 12th WSEAS International Conference on Mathematical Methods, Computational Techniques and Intelligent Systems, Kantaoui, Sousse, Tunisia, 3–6 May 2010; World Scientific and Engineering Academy and Society (WSEAS): Cambridge, UK, 2010; pp. 158–161. [Google Scholar]
19. Ulfa, M. Analysis on Eigenvector of Circulant Matrix in Max-Plus Algebra. Master’s Thesis, Mathematics and Natural Science Faculty, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia, 2009. (In Indonesian). [Google Scholar]
20. Gavalec, M.; Plavka, J. Structure of the eigenspace of a Monge matrix in max-plus algebra. Discret. Appl. Math. 2008, 10, 596–606. [Google Scholar] [CrossRef]
21. Imaev, A.A.; Judd, R.P. Computing an eigenvector of an inverse Monge matrix in maxplus algebra. Discret. Appl. Math. 2010, 158, 1701–1707. [Google Scholar] [CrossRef]
Figure 1. Graph representation of matrix M.
Figure 1. Graph representation of matrix M. 