## 4 Proposed Scheduling Algorithm
### Applying Linear Structure to Get the Minimum Scheduling Time for Convergecast  
The algorithm produces the line structure of each spanning tree. We applied the algorithm of [PERSON] _et al._[3] to get the minimum scheduling time. The authors have proposed an optimal convergecast scheduling algorithm based on the line topology with a fixed transmission range. The developed algorithm consists of four different algorithms. When the number of sensors is in a range less than the transmission range, the SIMPLE algorithm is used to send a message to the sink node directly. If the number of sensors is placed in the \(p\leq n\leq p(p+1)\) range, where \(n\) is the number of sensors and \(p\) is the transmission power, then apply the TABLE and ADJUST algorithms. If the number of sensors is placed in the \(p\)\((p+1)<n\) range, then apply the REDUCE algorithm first to use TABLE and ADJUST. The algorithms, SIMPLE, TABLE, ADJUST and REDUCE, are described in more detail as follows:  
Figure 4: Constructing the minimum spanning trees for nodes in the node set (_Ns_) using the FMLSP algorithm. (1) If \(n<p\), then apply the SIMPLE algorithm, which can allocate \(n\) time slots for the messages (\(m_{i}\), \(1\leq i\leq n\)) to send a message from node \(i\) to the sink node at time slot \(i\), because each node directly sends the message to the sink node in the given condition. (2) If \(p\leq n\leq p(p+1)\), then apply the TABLE and ADJUST algorithms. The TABLE algorithm allows us to allocate \(2p(p+1)-p\) time slots to deliver any \(p(p+1)\) messages; on the other hand, the ADJUST algorithm reallocates it for \(p(p+1)\) nodes and then allocates the time slots for \(n\) nodes. (3) If \(p(p+1)<n\), then apply the REDUCE algorithm with (\(n-p\)) nodes and then apply the TABLE and ADJUST algorithms. Table 3 explains the minimum time schedule for using these algorithms. The above table is the output of the TABLE algorithm and function TABLE, with 11 nodes, including the sink node and three transmission ranges. We want to deliver the individual contents to the sink node, where the content number is the message originating from the cell number. The algorithms assumed that they can use virtual nodes, which are not physically used. The virtual node numbers used in this algorithm are {11, 12, 13, 15, 16, 18, 19}. In the  
there is no message delivered at the assigned time slot. For example, for the node number \"1\" and time slot \"1\", there is content from the node \"4\". For the node number \"8\" and time slot \"1\", there is content from the node \"11\", which is the virtual node. When we send Contents 4, 5 and 6 to Nodes 1, 2 and 3, we move the non-conflicting messages in the same time slot as follows:  
When sending 4 to 1, then move 11 to 8, and 18 to 15, and so on, up to \(n+p^{2}\) (here, \(10+9=19\)); when sending 5 to 2, then move 12 to 9 and 19 to 16, when sending 6 to 3; then move 13 to 10. When we send Contents 1, 2 and 3 to the sink node, we also move the non-conflicting messages in the same time slot as follows:  
When sending 1 to the sink node (0), then move 8 to 5 and 15 to 12; when sending 2 to the sink node (0), then move 9 to 6 and 16 to 13; when sending 3 to the sink node (0), then move 10 to 7. When we send Contents 4, 5 and 6 to the sink node, we move non-conflicting messages as follows:  
When sending 4 to 1, then move 11 to 5 and 18 to 12; when sending 5 to 1, then move 12 to 6 and 19 to 13; when sending 6 to 1, then move 13 to 7. After we send Content 15 to 3 in time slot 18 and 18 to 3 in time slot 19, Contents 15 and 18 arrive at the sink node in Time Slots 20 and 21. Table 4 is made, and it has \(p(p+1)\) messages in the sink node, because n is always less than or equal to \(p(p+1)\).