1. Introduction
Time evolution of discrete event dynamic systems can be described through equations composed using three operations the maximum, the minimum and the addition. Such systems are described as min-max-plus systems. The bipartite min-max-plus systems are determined by the union of two sets of equations: one set of equations containing the maximization and the addition; and another set of equations containing the minimization and the addition.
The idea of max-plus algebra was first seen in the 1950s or even at an earlier period. Nowadays, it has been studied intensively. In [
1], the authors have investigated the set of invertible linear operators over a subalgebra of max-plus algebra. For a matrix in max-plus algebra, some necessary and sufficient conditions have been established to possess various types of g-inverses including Moore–Penrose inverse [
2]. In [
3], the authors have characterized the linear operators which preserve the maximal column rank of matrices over max-plus algebra.
Max-plus algebra has many applications in mathematics as well as in different areas such as mathematical physics, optimization, combinatorics, and algebraic geometry [
4]. Max-plus algebra is used in machine scheduling, telecommunication networks, control theory, manufacturing systems, parallel processing systems, and traffic control [
5,
6,
7]. Max-plus algebra is also used in image steganography [
8]. Max-plus algebra can be used to model disk events related to synchronization and time delays [
9]. In [
10] the authors have shown how max-plus algebra can be helpful for the dynamic programming of algorithms. In [
11], the author has described the whole Dutch railway system by a max-plus system.
The eigenproblems for a matrix
A of order
are the problems to find out an eigenvalue
and the eigenvector
v, such that
. In this article, we consider eigenproblems for the bipartite min-max-plus systems. Mostly, power algorithm [
12], is used to compute the eigenvalue and eigenvectors in an iterative way. Umer et al. [
13] developed an efficient algorithm to solve the eigenvalue problem in max-plus systems, which computes the eigenvalue as a maximal cycle mean and use an iterative approach to determine the eigenvectors. In [
14], the authors have demonstrated that the presence of eigenvectors (non-trivial) depend on the position of the greatest and the least elements in the Latin squares in a bipartite min-max-plus system. For further study of eigenproblems for discrete event systems, see [
10,
14,
15,
16].
As per our knowledge and from the literature review, one of the open problems in the max-plus algebra is to come up with an efficient and fast algorithm to solve the eigenproblems for these systems. In this paper, a robust algorithm is developed, that can calculate the eigenvectors corresponding to an eigenvalue
in an iterative way. In particular, we apply this algorithm to find the eigenvectors (trivial and non-trivial) for Latin squares in bipartite min-max-plus systems. A computational comparison of the proposed algorithm and the power algorithm presented by Subiono and van der Woude [
12] is given, which shows the efficiency of the proposed algorithm.
The structure of the paper is along these lines. First of all, some preliminary notions and bipartite min-max-plus systems are presented in
Section 2, then a robust algorithm is developed for determining the eigenvalue and eigenvectors of such systems. In
Section 3, we present these systems for the Latin squares and calculate trivial and non-trivial eigenvectors for such models. The proposed algorithm and the power algorithm presented by Subiono and van der Woude [
12], are implemented in MATLAB (using max-plus algebra toolbox for MATLAB [
17]). A time complexity comparison of these algorithms has been given at the end of
Section 3. Finally, the conclusion are made in
Section 4.
2. Bipartite Min-Max-Plus Systems
First of all we denote the set of real numbers and the set of whole numbers by
and
respectively, then we define
,
, where
,
. A matrix or a vector where all components equal to
is represented by
, whereas a matrix or a vector where all components equal to
is represented by
.
denotes the set of first
n positive integers, i.e.,
. The following scalar operations are introduced as;
The algebraic structure represents min-plus algebra and represents max-plus algebra. Since in both and the multiplication operator is defined by addition, therefore in both systems the notation for multiplication operator is the same.
The collection of all matrices of order in min-plus and max-plus algebra is represented as and respectively. While and denotes the set of all vectors in min-plus and max-plus algebra respectively. The scalar operations to matrices are extended as follows.
Suppose that
,
,
,
such that
;
and
then
If
,
,
and
, then
One can see that the notation of the multiplication operator in both systems is different. The addition is defined as maximum (minimum) in
(respectively,
). A bipartite min-max-plus system can be represented as:
where
;
;
for all
;
. These equations can be written as;
The above equations can be denoted as;
where
is the set of whole numbers and
Compactly, system
can be written by a mapping
, such that
For a system of type
, the notion of eigenvalue and eigenvectors is defined as follows. A real number
is said to be an eigenvalue corresponding to an eigenvector
if
The cycle time vector in a system of type
is defined as
The cycle time vector
is a vector such that each component is equal to the eigenvalue for the given system of type (2). The cycle time vector is independent of initial vector
. In this section, we determine the eigenvalue
by computing cycle time vector. To compute the eigenvectors, we propose an iterative algorithm. For this purpose, define
and
, corresponding to the eigenvalue
of a system of type (2). Also define
for
, where
and
.
System (4) can be denoted as,
for
. Let
v be a vector, then
represents a vector obtained after applying
on the vector
v by
l times. A relation between (2) and (5) is shown in the following theorem.
Theorem 1. Let λ be an eigenvalue for a system of type (2) and be a vector, then Corollary 1. Let v be an eigenvector corresponding to the eigenvalue λ of a system of type . Then Proof. By definition, . Using Theorem 1, we get, . Hence . □
Theorem 2. Let λ be an eigenvalue of a system of type (2) and letfor , where is an initial state vector. If for some integers , thenwhere Now we present Algorithm 1 in the following, which gives the eigenvectors corresponding to the eigenvalue . But, first we give three basic assumptions in the following that are necessary for the convergence of the algorithm.
For any arbitrary initial vector , the system of type (2), ends up in a periodic behavior, after a finite number of iterations.
Eigenvalue of the system exists.
Every periodic behavior has the same average weight, equal to eigenvalue.
Algorithm 1 Eigenvectors for systems of type (2) |
Compute the eigenvalue , by calculating the cycle time vector . Define , and . Take an initial state vector . Iterate , for , until there are positive integers , such that . Compute the candidate eigenvector
If then v is the correct eigenvector and algorithm stops. Else if then go to the following step. Take v as new starting vector and iterate , until for some , it holds that . Finally is an eigenvector.
|
Theorem 3. Let λ be an eigenvalue and v be a vector computed as in Algorithm 1
for a system of type (2), then Proof. These inequalities imply that
□
Lemma 1. Let v be a vector computed as in the above Algorithm 1
for a bipartite min-max-plus system. Let (5) be restarted with , then Proof. Since
, which implies that
□
Proof of Algorithm 1. Since the system ends up in a periodic behavior aftera finite number of iterations, therefore step 3 of the algorithm performs. If then v is the correct eigenvector and clearly algorithm can stop. If then start by considering as new initial vector and iterate (5).
By first assumption, there exist integers , with . By Lemma 1, for all . Our goal is to show that for all . Suppose on contrary that , for some integers such that, and . We obtain that , which is a contradiction because . Hence for all . Which completes the proof. □
Example 1. Consider a system of type (2), given as follows: Since the cycle time vector is equal to . Therefore the eigenvalue .
Now, take the initial state vector The following sequence is obtained, after iterating (5), Since , therefore , . To compute a corresponding eigenvector we proceed with the computation of the vector v. Now verify that either v is the correct eigenvector or not. So Which shows that the eigenvector v is the correct eigenvector obtained by Algorithm 2.
3. Latin Squares in Bipartite (Min, Max, Plus)-Systems
A Latin square is a square matrix of order
n, with elements from
n independent variables over
in such a way that each row and each column is a different permutation of the
n variables [
18]. In the following, an example of a Latin square of order 4 is given
We consider the Latin squares of size n in a system of type (2). We have four possibilities for the Latin squares in a system of type (2): (1) The entries of both matrices A and B are ; (2) The entries of matrix A are and the entries of matrix B are ; (3) The entries of matrix A are and the entries of matrix B are ; (4) The entries of matrix A are and the entries of matrix B are , where and .
In this section, we consider Latin squares for systems of type (2) and Algorithm 1 is extended to calculate the eigenvalue and eigenvectors for such type of systems. In [
14], authors show that for Latin squares in a system of type (2), the eigenvalue
is determined as
Now, we propose Algorithm 2 to solve eigenvalue problem for Latin squares in a system of type (2) as follows:
Algorithm 2 Eigenvalue and Eigenvectors for Latin squares in a system of type (2) |
|
Compute the eigenvalue as, . Define , and . Take a starting vector . Iterate (5), until for some integers , it holds that . Determine the eigenvector as,
If then v is the correct eigenvector corresponding to the eigenvalue and algorithm can stops. Else if then go to the following step. Take v as initial state vector and iterate , until for some , it holds that . Finally is an eigenvector.
|
Here we find the eigenvalue and eigenvectors for Latin squares in systems of type (2) by using Algorithm 2. First, recall the power algorithm (Algorithm 3) for systems of type (2), proposed by Subiono and van der Woude [
12], then we compare it with Algorithm 2.
Algorithm 3 Eigenproblems for Bipartite (Min, Max, Plus)-Systems |
|
Define a starting vector . Iterate (2), until there exist a real number c and positive integers , such that with . The eigenvalue is obtained as, Determine the eigenvector as, If then v is the required eigenvector corresponding to the eigenvalue and algorithm can stop. If , then the algorithm has to be continued as follows. Define as new starting vector and restart ( 2), until for some r, there holds . Then is a correct eigenvector of system ( 2).
|
To illustrate the Algorithms 2 and 3, consider the following example. In this example, we consider a system of type (2), where A and B are Latin Squares with entries in and respectively.
Example 2. Let A and B are Latin squares in a system of type (2), given as follows: - 1.
The eigenvalue λ is given as, Now, take the initial state vector The following sequence is obtained, after iterating (5), Since , therefore . The required eigenvector v is computed as, Now verify that either v is the correct eigenvector or not. So Which shows that the eigenvector v is the correct eigenvector obtained by Algorithm 2.
- 2.
For Algorithm 3
, take the initial vector The following sequence is obtained, after iterating (2)
Since . It follows that , and . The corresponding eigenvector v is obtained as Which is the correct eigenvector.
Using Algorithm 3 in Example 2, system ends up in a periodic behaviour after
6th iteration and we get , and . If we consider in Example 2, then we get , and . So in case of Algorithm 3, one can get different value of c for different initial state vectors, while in Algorithm 2, we need not a real number c.
Remark 1. The main focus in this paper is to develop an efficient algorithm to find out the eigenvectors for systems of type (2). Also, we have made computational experiment to compare the Algorithms 2 and 3 for Latin squares. We have implemented both algorithms in MATLAB for , and such that . Here represents the cardinality of each set . In case of Algorithm 3, it stops if there exists a positive integers and a real number c with , while in that of Algorithm 2, it stops if for some integers it holds . Therefore, the time complexity of Algorithm 3 is , while the time complexity of Algorithm 2 is . Thus the proposed algorithm takes less time than the compared one.
The computational efficiency of the proposed method can be seen by comparing the runtimes of Algorithm 2
and 3
. Both algorithms are executed under the same Laptop environment with 1.70 GHz CPU, 4 GB RAM, MATLAB (R2015a) simulation software. We computed the time of calculating eigenvalue and eigenvector for Example 2
by both algorithms. The time consumptions of Algorithm 2
and 3
are 0.088783 s and 1.718662 s respectively, which clearly reveals that the proposed algorithm is faster than the other one. Also in case of Algorithm 2
, we obtain the eigenvector v by a simple formula, given as however, while using that Algorithm 3
an eigenvector is obtained aswhich is quite difficult compared to Algorithm 2.