Next Article in Journal
An Efficient Path Planning Algorithm Using a Potential Field for Ground Forces
Previous Article in Journal
The Differential Evolution Algorithm for Solving the Problem of Size Selection and Location of Infectious Waste Incinerator
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Modified Kleene Star Algorithm Using Max-Plus Algebra and Its Application in the Railroad Scheduling Graphical User Interface

Department of Mathematics, Faculty of Mathematics and Natural Sciences, Universitas Padjadjaran, Sumedang 45363, Indonesia
*
Author to whom correspondence should be addressed.
Computation 2023, 11(1), 11; https://doi.org/10.3390/computation11010011
Submission received: 2 December 2022 / Revised: 2 January 2023 / Accepted: 3 January 2023 / Published: 9 January 2023

Abstract

:
In max-plus algebra, some algorithms for determining the eigenvector of irreducible matrices are the power algorithm and the Kleene star algorithm. In this research, a modified Kleene star algorithm will be discussed to compensate for the disadvantages of the Kleene star algorithm. The Kleene star algorithm’s time complexity is O ( n ( n ! ) ) , and the new Kleene star algorithm’s time complexity is O ( n 4 ) , while the power algorithm’s time complexity cannot be calculated. This research also applies max-plus algebra in a railroad network scheduling problem, constructing a graphical user interface to perform schedule calculations quickly and easily.

1. Introduction

Max-plus algebra was one of the topics introduced in 1956 [1]. Max-plus algebra is denoted by m a x , defined as m a x = { } , where is a set of real numbers and is accompanied by two binary operations, , which is maximum operation, and , which is regular addition operation. The structure of max-plus algebra is an idempotent semifield. Recently, there has been a great deal of research conducted using max-plus algebra. According to the author of [2], the max-plus algebra approach offers a relatively compact and unified way of describing system dynamics, which may provide a valuable basis for both analytical study and simulation of queueing systems. He demonstrates that the network dynamics also allow for representation in the specific dynamic state equation in terms of max-plus algebra. In 1998, Olsder and Subiono conducted research using a large-scale model of a time table of all train connections of the whole Dutch railway system. It is provided in terms of max-plus algebra [3]. Elmahi et al. [4] used a max-plus algebra approach for modeling and controlling a supply chain. Max-plus algebra is an attractive tool for the modeling of manufacturing systems because any deterministic manufacturing system’s event timing dynamics can express by a set of linear equations [5]. A novel approach to modeling deterministic manufacturing systems was proposed by Imaev and Judd [5]. This model is based on block diagrams and is described using max-plus algebra. Becker and Lastovetsky [6] explored computing max-plus algebra operations and discrete event simulations on parallel hierarchal heterogeneous platforms. The main goal of their research was to present benefits waiting to be exploited by the use of max-plus algebra operations on these platforms, thus speeding up more complex and quite common computational topic areas such as discrete event simulation.
Eigenvalues and eigenvectors in max-plus algebra are important topics because the method used to calculate the eigenvectors in ordinary algebra cannot be used in max-plus algebra matrices. Based on previous studies, there are several algorithms available to determine the eigenvalues and eigenvectors of the irreducible matrix in max-plus algebra. Among them are the power algorithm and the Kleene star algorithm (KSA). The power algorithm was first introduced by Olsder [7] and then developed by Braker [8] and Subiono [9]. Fahim [10] studied this algorithm’s generalization, starting from various existing power algorithms. The resulting algorithm can determine the so-called generalized eigenmode of any regular square matrix using max-plus algebra. The KSA existed before 1992 [11], and is still being discussed and applied in several studies. Furche et al. [12] proposed OXPATH: A language for scalable data extraction, automation, and crawling on the deep web, which use Kleene star iteration in its process. A recent study regarding this algorithm is presented by Ernawati et al. [13]; they apply the KSA to the mRNA translation. The Kleene star matrix has also been applied in several studies, i.e., the tropical optimization technique in bi-objective project scheduling under temporal constraints, as developed by Krivulin [3,14]. Trunk et al. [15] used the Kleene star operator in their research regarding the modeling and controlling of periodic time-variant event graphs in dioids.
The KSA requires improvement, as it takes a significant amount of time to determine the eigenvalues in a large matrix. This study will discuss the modified Kleene star algorithm (MKAS) using the idea of Rudhito [16] to improve the weaknesses that exist in the KSA. Then, the time complexity analysis will be carried over to the KSA, MKSA, and the power algorithm. The complexity value of an algorithm is obtained by calculating the worst time translated into the pseudo-code algorithm. For KSA, the complexity is O ( n ( n ! ) ) , and for MKSA, the complexity is O ( n 4 ) . This proves that the modified Kleene star is superior to the KSA, providing the most efficient algorithm in determining the eigenvectors of an irreducible matrix in max-plus algebra.
In addition, in this paper, the application of max-plus algebra on the scheduling of the railroad network system is presented. The railroad network system will model linear equations in max-plus algebra, and an irreducible square matrix will be obtained from the model. This matrix’s eigenvalue and eigenvector information are essential in determining the railroad schedule. In a complex rail network system, the matrix of the resulting model is large, so a graphical user interface will be created to calculate a schedule for the railroad network system based on information regarding the eigenvalues and eigenvectors in max-plus algebra. This leads to a fast and easy-to-use railroad network scheduling system with an intuitive interface.

2. Research Methods

2.1. Max-Plus Algebra

Suppose max = { } , and two binary operations are defined as follow:
  • a b = max { a , b }
  • a b = a + b , and is normal addition operation.
For each, a , b max . max , with the two binary operations defined above, is defined as max-plus algebra [11].
The identity element of the operation is , which will be further denoted by ε , while the identity element of the operation is 0.

2.2. Matrices in Max-Plus Algebra

A set of matrices of m × n size in max-plus algebra is denoted by max m × n . As in ordinary algebra, if A max m × n , then A is a matrix with m row and n column, with a i j max ,   i = 1 , 2 , , m and j = 1 , 2 , , n .
Addition and multiplication in max-plus algebra matrices are performed in the same way as in ordinary algebra, replacing + and × with and , respectively.
An identity matrix of n × n size in max-plus algebra is denoted as E n , defined as follows. For each i , j = 1 , 2 , , n , then [1]
[ E n ] i j = { 0 ,   i f   i = j ε ,   i f   i j
Theorem 1 
([16]).  A m a x n × n  is irreducible if and only if  ( A A 2 A ( n 1 ) ) i j ε  for each  i , j  and  i j .
Definition 1 
([11]). Suppose  A m a x n × n   is max-plus algebra matrix of  n × n   size. Then, the precedence graph of  A , denoted by  G ( A ) = ( V ( A ) , E ( A ) )   , is a graph with the following characteristics.
  • G ( A )  is a weighted directed graph.
  • The number of vertices of  G ( A )  is  n .
  • If  a i j ε , then edge  ( j , i ) E ( A ) .
  • Element  a i j m a x  is the weight of edge  ( j , i ) . In other words,  a i j = w ( j , i ) .

2.3. Eigenvalues and Eigenvectors in Max-Plus Algebra

Suppose A max n × n , vector v ε in max n is called the eigenvector of the matrix A if there exists a scalar λ max , that fulfills A v = λ v , λ is called the eigenvalue of A , and v is called the eigenvector of the matrix A corresponding to λ [11].
Theorem 2 
([17]). If  A m a x n × n  is an irreducible matrix, and  v  is the eigenvector of the matrix  A  corresponding to eigenvalue  λ  from  A , then  ( α v )  is also the eigenvector of  A , for each  α .

2.4. Model of a Railroad Network System in Max-Plus Algebra

The model of a railroad network system is expressed in following form.
x ( k + 1 ) = A x ( k ) d ( k + 1 )
In the railroad network, A is a matrix in which its elements represent the travel time between two stations, and a i j is the travel time from station j to station i .
Vector x ( k ) max n represents the k th departure time of all trains. Vector d ( k ) represents the k th departure schedule of all trains.
Because train scheduling includes a time span between the current schedule and the previous schedule, the relationship between the departure schedules is as follows:
d ( k ) = d ( k 1 ) T = d ( k 2 ) T 2 = .
Such that,
d ( k ) = d ( 0 ) T k
for each k . Where d ( 0 ) is the initial departure scheduled and T is the span period between scheduled departures. In algebraic expression, it can be written as
d ( k ) = [ d 1 ( 0 ) + ( k T ) d 2 ( 0 ) + ( k T ) d n ( 0 ) + ( k T ) ] .
Definition 2 
([18]). The train departure schedule  d ( k )  is realistic if for all  k = 0 ,   1 ,   2 , , then  A d ( k ) d ( k + 1 ) .
Definition 3 
([18]). A system with departures scheduled is said to be stable if any delays in some departure no longer occur after several subsequent departures.
Theorem 3 
([18]). A system is stable if, and only if,  λ < T , where  λ  is the eigenvalue of  A .
Theorem 4 
([11]). If  A  is irreducible, or equivalently,  if graph  G ( A )   is strongly connected, there exists one, and only one, eigenvalue (out of possibly several eigenvectors).
Lemma 1. 
If  d ( 0 )  is the eigenvector of  A   and the system is stable, then the departure schedule of the system is realistic.

3. Results and Discussion

3.1. Eigenvector Calculation Algorithm in Max-Plus Algebra

Several algorithms for determining the max-plus algebraic eigenvectors are described in the following. In each algorithm, the algorithm’s time complexity is calculated and then the time complexity of all algorithms is compared.

3.1.1. Steps and Time Complexity of the Kleene Star Algorithm

This algorithm is based on finding the maximum average weight of the circuit and determining the critical circuit of the precedence graph from the inputted matrix. Suppose A m a x n × n is irreducible. The steps of the KSA in determining the eigenvalues and eigenvectors are as follow [13].
  • Determine λ as the eigenvalues of A , where λ is the maximum circuit average weight of the matrix A .
  • Determine B = λ A .
  • Determine B * = E n B B 2 B ( n 1 ) .
  • The eigenvectors of A which correspond to λ are the v th columns of B * , where v is a critical circuit of A , or A V c ( A ) .
The KSA requires a comparison of all elementary circuits in the precedence graph of matrix A to determine the eigenvalues and critical circuits. Therefore, an additional algorithm is needed to find all elementary circuits of G ( A ) . One of the efficient and commonly used algorithms to find elementary circuits from a directed graph is the Johnson algorithm, which has an algorithmic complexity of O ( ( n + e ) ( c + 1 ) ) , where n is the number of vertices, e is the number of edges, and c is the number of elementary circuits in the graph G ( A ) [19].
This time complexity calculation considers the worst case, i.e., suppose all elements of the A m a x n × n are not ε . Then, the precedence graph of A has n vertices, e = n 2 edges, and elementary circuits as great as c = i = 1 n ( n n i + 1 ) ( n i ) ! .
The calculation of the time complexity of the algorithm is performed by translating the algorithm into pseudo-code, then counting the number of operations performed. The time complexity of each step of the KSA is:
  • 1st step: T 1 ( n ) = O ( n ( n ! ) )
  • 2nd step: T 2 ( n ) = O ( n 2 )
  • 3rd step: T 3 ( n ) = O ( n 4 )
  • 4th step: T 4 ( n ) = O ( n )
And hence the total time complexity of the KSA is the sum of all the time complexities of each step. Therefore, T ( n ) = T 1 ( n ) + T 2 ( n ) + T 3 ( n ) + T 4 ( n ) = O ( n ( n ! ) ) + O ( n 2 ) + O ( n 4 ) + O ( n ) = O ( n ( n ! ) ) , so that the time complexity of the KSA is O ( n ( n ! ) ) .

3.1.2. Steps and Time Complexity of the Modified Kleene Star Algorithm

The steps of the Modified KSA in determining the eigenvalues and eigenvectors of irreducible matrix A m a x n × n are as follow [16].
  • Determine the eigenvalue λ by formula:
    λ = k = 1 n ( 1 k t r a c e ( A k ) )
  • Determine B * and B + , where B = λ A .
  • Determine a critical vertex of the graph G ( A ) ; that is, when [ B + ] v v = 0 , then v is a critical vertex of the graph G ( A ) .
  • Determine the eigenvectors of A which correspond to λ ; that is the- v th of matrix B * .
The time complexity of each step of the modified KSA is given as follows.
  • 1st step: T 1 ( n ) = O ( n 4 )
  • 2nd step: T 2 ( n ) = O ( n 4 )
  • 3rd step: T 3 ( n ) = O ( n )
  • 4th step: T 4 ( n ) = O ( n )
And hence the total time complexity of the modified KSA is the sum of all the time complexities of each step. Therefore, T ( n ) = T 1 ( n ) + T 2 ( n ) + T 3 ( n ) + T 4 ( n ) = O ( n 4 ) + O ( n 4 ) + O ( n ) + O ( n ) = O ( n 4 ) , so that the time complexity of the modified KSA is O ( n 4 ) .

3.1.3. Steps and Time Complexity of the Power Algorithm

Suppose A m a x n × n is irreducible. The steps of the power algorithm in determining the eigenvalues and eigenvectors of the irreducible matrix A m a x n × n are as follows [9].
  • Choose an initial x ( 0 ) , with x ( 0 ) ε .
  • Iterate x ( k + 1 ) = A x ( k ) ,   k 0 , until there are integers p > q 0 and a real number c , which satisfy x ( p ) = c x ( q ) .
  • Determine the eigenvalue
    λ = c p q
  • Determine eigenvector
    v = p q i = 1 ( λ ( p q i ) x ( q + i 1 ) )
The power algorithm has two inputs, namely an irreducible square matrix of max-plus algebra and the initial vector x ( 0 ) . In the power algorithm, the size of the input matrix does not affect the speed of completion of the algorithm. Instead, the speed of completion of the power algorithm is highly dependent on the selection of x ( 0 ) .
The completion time of the power algorithm is related to the number of iterations performed in the second step, i.e., iteration on equation x ( k + 1 ) = A x ( k ) for k 0 until the termination conditions are met. After the iteration stops, the calculation of the eigenvalues and eigenvectors can be completed using the provided formula. For some of the initial vector selections, the algorithm needs to perform more iterations. On the other hand, choosing the right initial vector causes the algorithm to require only a small number of iterations. For example, if the initial vector x ( 0 ) is an eigenvector of the input matrix, then the power algorithm only needs to complete one iteration to meet the termination conditions.
Because there is no relationship between the size of the input matrix ( n ) and the completion time of the power algorithm, the time complexity of the power algorithm cannot be calculated.

3.1.4. Comparison of Kleene Star Algorithm, Modified Kleene Star Algorithm, and Power Algorithm

In the discussion in Section 3.1.3, it has been concluded that the complexity of the power algorithm cannot be calculated, so this discussion will only compare the algorithmic complexity of the KSA and the MKSA.
It is known from the discussion in Section 3.1.1 and Section 3.1.2 that the time complexity of the KSA is O ( n ( n ! ) ) , and time complexity of the MKSA is O ( n 4 ) . Based on the order of time complexity of the algorithm, the polynomial time complexity is better than the factorial time complexity. However, to more clearly show that the complexity O ( n 4 ) is better than complexity O ( n ( n ! ) ) , the growth rate of the function n ( n ! ) and n 4 will be simulated to a large value of n .
Below is a table of values f ( n ) = n ( n ! ) and g ( n ) = n 4 in relation to the n values to give an idea of the complexity of time O ( n ( n ! ) ) and O ( n 4 ) .
Table 1 shows an illustration of the growth rate of time complexity O ( n ( n ! ) ) and O ( n 4 ) . For n < 5 , the value of function n ( n ! ) is smaller than n 4 , but for n 5 , it can be seen that the growth rate n ( n ! ) increases very rapidly compared to n 4 . This means that with a large size of n , the required completion time will be much longer than that of the MKSA.
Therefore, from the algorithm’s time complexity, it can be concluded that the MKSA is better than the Kleene Star algorithm for this purpose.

3.2. Max-Plus Algebra and Its Application in Railroad Network System

This section discusses the application of max-plus algebra to a real-life problem, namely the railroad network system. The information on the eigenvalues and max-plus algebraic eigenvectors in this problem can be used to arrange regular train departure schedules, with the eigenvectors as vectors for the initial departure schedule and the eigenvalues being the minimum period between the scheduled departures. The variables used in this model are as follows:
  • x ( k ) : represents the k th—departure time of all trains.
  • d ( k ) : represents the k th—departure schedule of all trains.
Suppose there is a railroad network, which is presented in the form of a graph in Figure 1, as follows.
There are three stations, A, B, and C, which are part of a railroad network, as shown in Figure 1. Suppose that the system has four trains running on four routes with the following travel pattern:
  • The first route starts from station A. Each time a train departs on this route, it runs from station A to station B.
  • The second route starts from station B. Each time a train departs on this route, it runs from station B to station C.
  • The third route starts from station C. Each time a train departs on this route, it runs from station C to station B.
  • The fourth route starts from station B. Each time a train departs on this route, it runs from station B to station A.
Suppose the train travel time is in hours and is indicated by the weight of the edge in Figure 1. Therefore, the length of the train journey from station A to station B is 3 h. The length of the train journey from station B to station C is 8 h. The length of the train journey from station C to station B is 5 h. The length of the train journey from station B to station A is 4 h.
The following describes some of the assumptions of this model:
  • The travel time for each train is fixed.
  • The time for arrival, passenger drop-off, passenger boarding, and departure is considered 0.
  • The train departures must wait for the arrival of the train from the previous departure. For example, a train departing from station A to station B must wait for the arrival of a train from station B to station A.
  • Each train departure has a schedule. Trains that arrived earlier than the scheduled departure must wait for the current schedule to depart.
The element of the departure time vector x ( k ) in this model is defined as follows:
  • x 1 ( k ) : k th departure time on the route from station A to B.
  • x 2 ( k ) : k th departure time on the route from station B to C.
  • x 3 ( k ) : k th departure time on the route from station C to B.
  • x 4 ( k ) : k th departure time on the route from station B to A.
Based on the description given above, the railroad network model in Figure 1 can be written in the following equation:
x 1 ( k + 1 ) = max { 4 + x 4 ( k ) , d 1 ( k + 1 ) } x 2 ( k + 1 ) = max { 3 + x 1 ( k ) , d 2 ( k + 1 ) } x 3 ( k + 1 ) = max { 8 + x 2 ( k ) , d 3 ( k + 1 ) } x 4 ( k + 1 ) = max { 5 + x 3 ( k ) , d 4 ( k + 1 ) }
If Equation (4) is written in max-plus algebraic notation, the equation will be written as follow:
x 1 ( k + 1 ) = ( 4 x 4 ( k ) ) d 1 ( k + 1 ) x 2 ( k + 1 ) = ( 3 x 1 ( k ) ) d 2 ( k + 1 ) x 3 ( k + 1 ) = ( 8 x 2 ( k ) ) d 3 ( k + 1 ) x 4 ( k + 1 ) = ( 5 x 3 ( k ) ) d 4 ( k + 1 )
or it can be written in the form of matrix multiplication:
[ x 1 ( k + 1 ) x 2 ( k + 1 ) x 3 ( k + 1 ) x 4 ( k + 1 ) ] = [ ε ε 3 ε ε 4 ε ε ε 8 ε ε ε ε 5 ε ] [ x 1 ( k ) x 2 ( k ) x 3 ( k ) x 4 ( k ) ] d ( k + 1 )
Thus, the equation to calculate the vector of k th departure time is
x ( k + 1 ) = A x ( k ) d ( k + 1 )
for k = 0 ,   1 ,   2 , with A = [ ε ε 3 ε ε 4 ε ε ε 8 ε ε ε ε 5 ε ] .
Before calculating the eigenvalues and eigenvectors, the irreducibility of matrix A in Equation (7) will be checked. Know that:
A = [ ε ε 3 ε ε 4 ε ε ε 8 ε ε ε ε 5 ε ] A A 2 A 3 = [ ε ε 3 ε ε 4 ε ε ε 8 ε ε ε ε 5 ε ] [ ε ε ε ε 9 ε ε 7 11 ε ε 13 ε ε ε ε ] [ ε 17 ε ε ε ε 12 ε ε ε 16 ε ε 15 ε ε ] = [ ε 17 3 ε 9 4 12 7 11 8 16 13 ε 15 5 ε ]
because ( A A 2 A 3 ) i j ε for each i , j = 1 ,   2 ,   3 ,   4 and i j . With Theorem 1, A is irreducible.
After the irreducibility of A is proven, the eigenvalues and eigenvectors of A are calculated with the modified Kleene star algorithm. From the matrix A = [ ε ε 3 ε ε 4 ε ε ε 8 ε ε ε ε 5 ε ] the eigenvalue and eigenvector are λ = 5 and v = [ 2 0 3 3 ] T . Next, a train schedule will be created based on the information on the eigenvalues and eigenvectors that have been obtained.
Based on Lemma 1 for the initial departure vector, d ( 0 ) can be taken from eigenvector of A , that is, v = [ 2 0 3 3 ] T . Remember that the eigenvectors are not singular; therefore, α v for α can also be substituted for d ( 0 ) according to the need. For the conditions of time T , according to Theorem 3, time T has to be larger than eigenvalues T > λ = 5 so that the system becomes stable. The selection of T can be based on various variables, such as passenger needs and others. For this case, the value for T will be selected as T = 6 , so that the departure schedule vector becomes
d ( k ) = d ( 0 ) 6 k = [ 2 + ( k · 6 ) 0 + ( k · 6 ) 3 + ( k · 6 ) 3 + ( k · 6 ) ]   for   k = 0 ,   1 ,   2 ,
Therefore, the vector sequence d ( k ) or k th departure schedule can be derived as
[ 2 0 3 3 ] , [ 8 6 9 9 ] , [ 14 12 15 15 ] , [ 20 18 21 21 ] ,
Because the elements in this railroad network model contain units of travel time in hours, the design of the train departure schedule can be created as follows.
It should be noted that the departure schedule in Table 2 is not unique. The departure schedule depends on the initial schedule d ( 0 ) and the selection of the period between schedules T . Figure 2 shows the comparison of the Kleene star algorithm and the modified Kleene star algorithm complexities. It reveals that for n > 6 the complexity of the KSA is much larger than the complexity of the MKSA.

3.3. Graphical User Interface on Scilab for Railway Network System Scheduling

This section discusses the graphical user interface of the Scilab program version 6.02 to calculate the railroad network schedule in max-plus algebra. Theorem 1 is used for a irreducibility check of the matrix, and the modified Kleene star algorithm is used to determine the eigenvalues and eigenvectors of the Kleene algorithm.
The display of the graphical user interface can be seen in Figure 3. The available menus are explained as follows.
  • Matrix Input: opens the “Variable Editor” window to enter the matrix of the railroad system model.
  • Reset: restores the program to its original state and deletes the previously entered matrix.
  • Select Time Unit: opens the menu to select the unit of time used by the model railroad matrix. There are two options: hours and minutes.
  • Calculate Period: shows the minimum period between departures scheduled. In the space provided, the user then enters a period between schedules that is greater than the minimum schedule period.
  • Print Schedule: shows the departure schedule on the Scilab console.
The following will explain how to use the graphical user interface using the model that has been discussed in Section 3.2 as seen in Figure 4 for the window of matrix input on the graphical user interface. Meanwhile, Figure 5 and Figure 6 show the step three on the graphical user interface and the resulting schedule of railroad network model using the graphical user interface.
The detail steps for the use of the grapichal user interface are as follows:
  • Press the “Input Matrix” button to bring up the “Variable Editor” window and enter the input matrix. Note: the syntax to input on Scilab 6.02 is ‘-%inf,’ without quotes.
  • Close the “Variable Editor” window and select the appropriate time unit. In this case, the unit of time is hours.
  • Press the “Calculate Period” button to bring up the minimum period between schedules and enter the desired period between schedules.
  • Press the “Print Schedule” button to bring up the schedule in the Scilab console window.

4. Conclusions

The modified Kleene star algorithm has a time complexity of O ( n 4 ) , the Kleene star algorithm has a time complexity of O(n(n!)), while the time complexity of the power algorithm cannot be determined. In terms of time complexity, the modified Kleene star algorithm is superior to the Kleene star algorithm. In addition, the eigenvalues and eigenvectors of the train network system model matrix play a very important role in train scheduling.
The graphical user interface using Scilab for calculating a railroad network schedule is proposed in this research. This makes the calculation of the train network system schedule faster and easier.

Author Contributions

Conceptualization, E.C. and A.K.S.; methodology, H.N.; software, R.W.; formal analysis, R.W.; resources, E.C., A.K.S. and R.W.; writing—original draft preparation, R.W.; writing—review and editing, N.A.; visualization, A.K.S.; supervision, E.C. and A.K.S.; project administration, H.N. and N.A. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by Riset Kompetensi Dosen Unpad (RKDU), grant number 2203/UN6.3.1/PT.00/2022 and partially funded by the Academic Leadership Grant to the last author with contract number 2203/UN6.3.1/PT.00/2022.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

The authors wish to thank the Directorate of Research and Community Service (DRPM) of Padjadjaran University.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Farlow, K.G. Max-Plus Algebra; Virginia Polytechnic Institute and State University: Blacksburg, VA, USA, 2009. [Google Scholar]
  2. Krivulin, N.K. The Max-Plus Algebra Approach in Modelling of Queueing Networks. Available online: http://arxiv.org/abs/1212.0895 (accessed on 1 December 2012).
  3. Olsder, G.J.; Subiono. On Large Scale Max-Plus Algebra Models in Railway Systems. IFAC Proc. Vol. 1998, 31, 649–653. [Google Scholar] [CrossRef]
  4. Elmahi, I.; Grunder, O.; Elmoudni, A. A Max Plus Algebra Approach for Modelling and Control a Supply Chain. In Proceedings of the 2003 IEEE Conference on Control Applications, Istanbul, Turkey, 23–25 June 2003; Volume 2. [Google Scholar] [CrossRef]
  5. Imaev, A.; Judd, R.P. Block diagram-based modeling of manufacturing systems using. In Proceedings of the 2009 American Control Conference, St. Louis, MO, USA, 10–12 July 2009. [Google Scholar] [CrossRef]
  6. Becker, B.A.; Lastovetsky, A. Max-Plus Algebra and Discrete Event Simulation on Parallel Hierarchical Heterogeneous Platforms. In Proceedings of the 2010 Conference on Parallel Processing, San Diego, CA, USA, 13–16 September 2010; pp. 63–70. [Google Scholar] [CrossRef] [Green Version]
  7. Olsder, G.J. Eigenvalues of dynamic max-min systems. Discret. Event Dyn. Syst. Theory Appl. 1991, 1, 177–207. [Google Scholar] [CrossRef]
  8. Braker, J.G. Algorithms and Applications in Timed Discrete Event Systems; Delft University of Technology: Delft, The Netherlands, 1993. [Google Scholar]
  9. Subiono. Aljabar Min-Max Plus dan Terapannya. 2015. Available online: https://docplayer.info/68251215-Aljabar-min-max-plus-dan-terapannya.html (accessed on 1 December 2021).
  10. Fahim, K.; Subiono; van der Woude, J. On a generalization of power algorithms over max-plus algebra. Discret. Event Dyn. Syst. 2017, 27, 181–203. [Google Scholar] [CrossRef] [Green Version]
  11. Baccelli, F.; Cohen, G.; Olsder, G.J.; Quadrat, J.-P. Quadrat, Synchronization and Linearity: An Algebra for Discrete Event Systems; John Wiley & Sons: New York, NY, USA, 1992; Volume 7. [Google Scholar]
  12. Furche, T.; Gottlob, G.; Grasso, G.; Schallhart, C.; Sellers, A. OXPath: A language for scalable data extraction, automation, and crawling on the deep web. VLDB J. 2013, 22, 47–72. [Google Scholar] [CrossRef]
  13. Ernawati; Carnia, E.; Supriatna, A.K. Eigenvectors determination of the ribosome dynamics model during mRNA translation using the Kleene Star algorithm. IOP Conf. Ser. Mater. Sci. Eng. 2018, 332, 012019. [Google Scholar] [CrossRef]
  14. Krivulin, N. Tropical optimization technique in bi-objective project scheduling under temporal constraints. Comput. Manag. Sci. 2020, 17, 437–464. [Google Scholar] [CrossRef]
  15. Trunk, J.; Cottenceau, B.; Hardouin, L.; Raisch, J. Modelling and control of periodic time-variant event graphs in dioids. Discret. Event Dyn. Syst. 2020, 30, 269–300. [Google Scholar] [CrossRef]
  16. Rudhito, M.A. Aljabar Max-Plus Dan Penerapannya; Sanata Dharma University Press: Daerah Istimewa Yogyakarta, Indonesia, 2016. [Google Scholar]
  17. Tunisa, K.; Wijayanti, K.; Veronica, R.B. Nilai Eigen Dan Vektor Eigen Matriks Atas Aljabar Max-Plus. UJM 2017, 6, 189–197. [Google Scholar] [CrossRef]
  18. Alfiah, S. Pemodelan Jaringan Kereta Rel Listrik (KRL) Menggunakan Aljabar Max-Plu. Master’s Thesis, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia, 2011. [Google Scholar]
  19. Johnson, D.B. Finding All the Elementary Circuits of a Directed Graph. SIAM J. Comput. 1975, 4, 77–84. [Google Scholar] [CrossRef]
Figure 1. Weighted director graph of a railroad network. The letters A, B, and C indicate the name of railroad stations, which are part of a railroad network.
Figure 1. Weighted director graph of a railroad network. The letters A, B, and C indicate the name of railroad stations, which are part of a railroad network.
Computation 11 00011 g001
Figure 2. (a) Comparison of the Kleene star algorithm and the modified Kleene star algorithm; (b) Kleene star algorithm chart; (c) modified Kleene star algorithm chart.
Figure 2. (a) Comparison of the Kleene star algorithm and the modified Kleene star algorithm; (b) Kleene star algorithm chart; (c) modified Kleene star algorithm chart.
Computation 11 00011 g002
Figure 3. Graphical User Interface.
Figure 3. Graphical User Interface.
Computation 11 00011 g003
Figure 4. Window for matrix input on the graphical user interface.
Figure 4. Window for matrix input on the graphical user interface.
Computation 11 00011 g004
Figure 5. Step three on the graphical user interface.
Figure 5. Step three on the graphical user interface.
Computation 11 00011 g005
Figure 6. Resulting schedule of railroad network model using the graphical user interface.
Figure 6. Resulting schedule of railroad network model using the graphical user interface.
Computation 11 00011 g006
Table 1. Table of function n ( n ! ) and n 4 in regard to the n values.
Table 1. Table of function n ( n ! ) and n 4 in regard to the n values.
Input Value (n) KSA   ( f ( n )   =   n ( n ! ) ) Modified   KSA   ( g ( n )   =   n 4 )
2416
31881
496256
5600625
643201296
735,2802401
204.86 ×   10 19 160,000
307.95 ×   10 33 810,000
403.26 ×   10 49 2,560,000
Table 2. Design of departure schedule in the railroad network model.
Table 2. Design of departure schedule in the railroad network model.
Departure StationArrival StationAvailable Departure Hours
AB02:0008:0014:0020:00
BC00:0006:0012:0018:00
CB03:0009:0015:0021:00
BA03:0009:0015:0021:00
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Carnia, E.; Wilopo, R.; Napitupulu, H.; Anggriani, N.; Supriatna, A.K. Modified Kleene Star Algorithm Using Max-Plus Algebra and Its Application in the Railroad Scheduling Graphical User Interface. Computation 2023, 11, 11. https://doi.org/10.3390/computation11010011

AMA Style

Carnia E, Wilopo R, Napitupulu H, Anggriani N, Supriatna AK. Modified Kleene Star Algorithm Using Max-Plus Algebra and Its Application in the Railroad Scheduling Graphical User Interface. Computation. 2023; 11(1):11. https://doi.org/10.3390/computation11010011

Chicago/Turabian Style

Carnia, Ema, Rinaldi Wilopo, Herlina Napitupulu, Nursanti Anggriani, and Asep K. Supriatna. 2023. "Modified Kleene Star Algorithm Using Max-Plus Algebra and Its Application in the Railroad Scheduling Graphical User Interface" Computation 11, no. 1: 11. https://doi.org/10.3390/computation11010011

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop