# A MAP Overhead Aware Two-Dimensional OFDMA Burst Construction Algorithm
## 4 Proposed Algorithm: Enhanced Burst Indexing Aware Algorithm
Through the formula of the MAP message size, the MAP message size is nine slots and allocated in two columns. The slots occupied by the MAP message are 16 slots. We inverse derive the total number of bursts \(NoB=11\) that the MAP would provide in a downlink subframe and assign the number of bursts \(B\) to each connection that \(B_{1}=4\) for connection \(C_{1}\), \(B_{2}=4\), and \(B_{3}=3\) for connection \(C_{2}\) and \(C_{3}\), respectively. The matrix \(M\_Tp\) shows the throughput of \(C_{i}\) in each subchannel of unused slots. \[M\_Tp=\left[\begin{array}{c}C_{1}\\ C_{1}\\ C_{1}\\ C_{1}\\ C_{2}\\ C_{  
In order transform the profit matrix to the cost matrix that is suitable for the Hungarian Algorithm, we find the maximal throughput \(t=162\) in the profit matrix and subtract each profit value by \(t\). In the result, the profit matrix is transformed to the cost matrix shown in matrix \(M\_Tp2\). \[M\_Tp2=\left[ \begin{array}{c}C_{1}\\ C_{1}\\ C_{1}\\ C_{1}\\ C_{2}\\ C_{2}\\ C_{2}\\ C_{2}\\ C_{3}\\ C_{3}\\ C_{3}\\ C_{3}\\ \end{array} \right]=\left[ \begin{array}{cccccccccccc}0&1&2&3&4&5&6&7\\ 0&54&18&0&0&90&126&108&0&0&0\\ 0&54&18&0&0&90&126&108&0&0&0\\ 0&54&18&0&0&90&126&108&0&0&0\\ 0&54&18&0&0&90&126&108&0&0&0\\ 0&54&18&0&0&90&126&108&0&0&0\\ 90&126&0&0&54&18&54&90&0&0&0\\ 90&126&0&0&54&18&54&90&0&0&0\\ 90&126&0&0&54&18&54&90&0&0&0\\ 90&126&0&0&54&18&54&90&0&0&0\\ 108&108&90&126&54&18&0&126&0&0&0\\ 108&108&90&126&54&18&0&126&0&0&0\\ 108&108&90&126&54&18&0&126&0&0&0\\ 108&108&90&126&54&18&0&126&0&0&0\\ 108&108&90&126&54&18&0&126&0&0&0\\ \end{array} \right]\]  
Next, we find the minimum element in each row/column and subtract it from all elements in that row/column. After obtaining \(M\_Tp3\), we can draw eleven lines to cover all zeros in the matrix and then find the optimal solution from \(M\_Tp4\) and assign one subchannel to one connection \(BuildList[y]\). \[M\_Tp3=\left[ \begin{array}{c}C_{1}\\ C_{1}\\ C_{1}\\ C_{2}\\ C_{2}\\ C_{2}\\ C_{2}\\ C_{3}\\ C_{3}\\ C_{3}\\ C_{3}\\ C_{3}\\ \end{array} \right]=\left[ \begin{array}{cccccccccccc}0&1&2&3&4&5&6&7\\ 0&0&18&0&0&72&126&18&0&0&0\\ 0&0&18&0&0&72&126&18&0&0&0\\ 0&0&18&0&0&72&126&18&0&0&0\\ 90&72&0&0&54&0&54&0&0&0&0\\ 90&72&0&0&54&0&54&0&0&0&0\\ 90&72&0&0&54&0&54&0&0&0&0\\ 90&72&0&0&54&0&54&0&0&0&0\\ 108&54&90&126&54&0&0&36&0&0&0\\ 108&54&90&126&54&0&0&36&0&0&0\\ 108&54&90&126&54&0&0&36&0&0&0\\ 108&54&90&126&54&0&0&36&0&0&0\\ 108&54&90&126&54&0&0&36&0&0&0\\ 108&54&90&126&54&0&0&36&0&0&0\\ \end{array} \right]\]  
By \(BuildList[y]\), \(C_{1}\) can use subchannel 0, 1, 3, and 4 to transmit its data. \(C_{2}\) can use subchannel 2, 5, and 7 to transmit its data and \(C_{3}\) is assigned to use subchannel 6. \(C_{1}\) is assigned to subchannels 0, 1, 3, and 4, the MCSs are 27, 18, 27, and 27, respectively. Assign \(C_{1}\) to use higher subchannel qualities (MCS 27) first. Figure 6(a) shows that \(C_{1}\) uses the good subchannel quality 0 and 3 to construct its bursts and transmit its complete data of 290 bytes. \(C_{2}\) uses the good subchannel quality 2 and 5 to construct its bursts as shown in Figure 6(b). Notably, the available number of slots for \(C_{2}\) is 12. Therefore, \(C_{2}\) only transmits the data of 306 bytes. Figure 6(c) shows connection \(C_{3}\) is assigned to use subchannel 6 and transmits the data of 162 bytes. After first mapping process, there still remain 6 bursts which can be created and \(C_{3}\) remains \(BWR_{3}=18\) bytes and \(BWA_{3}=1\) slots. Therefore, we construct burst \(B_{3}^{2}\) for connection \(C_{3}\) and \(C_{3}\) transmit its data of 180 bytes completely (Figure 6(d)).