# An Efficient Satellite Resource Cooperative Scheduling Method on Spatial Information Networks
## 4 Resource Request Queue Reconstruction and Collaborative Scheduling Method
### Resource Cooperative Allocation Optimization  
The multi-satellite resource coordination and allocation optimization problem requires multiple satellites to provide various resources for mission execution. Multi-satellite and multi-mission scenarios usually have multiple sources and multiple sink satellites. Due to time variation and communication latency issues, it is difficult to assign tasks based on satellite resource status. This may result in an imbalance of mission requests processed by satellites, with some satellites being overstressed and others being relatively underloaded. Meanwhile, the satellite resources cannot handle the tasks in time. Therefore, the multi-satellite resource coordination problem can be solved based on the minimum cost multimodal network flow theory. The model is constructed as follows,\[\min\sum_{t=1}^{r}\sum_{(u,v)\in E}\left(U_{u,v}(t)\sum_{r=1}^{R}f_{u,v} ^{r}(t)\right)\] \[s.t.\] \[\text{C1}:\sum_{v\in s}f_{u,v}^{r}(t)=0,u\
eq s_{\text{source}},s_ {\text{target}}, \tag{4}\] \[\text{C2}:\sum_{w\in V}f_{u,w}^{r}(t)<f_{u,v}^{r}(t),l_{s,g^{ \prime}}^{\min}\leqslant f_{u,v}^{r}(t)\leqslant l_{s,g^{\prime}}^{\max},\] \[\text{C3}:\sum_{w\in V}f_{s_{\text{source}},w}^{r}(t)\Leftrightarrow \sum_{w\in V}f_{w,s_{\text{target}}}^{r}(t).\]  
As shown in Formula (4), it describes the least cost incurred by the multi-satellite resource allocation scheme within the discrete time-period \(\tau\). The nodes in the network are represented as satellites, and the edges on the network are represented as visible links between satellites. \((u,v)\) denotes the visible links from satellite \(u\) to \(v\), \(E\) denotes all links on the network at the slot \(t\). \(U_{u,v}(t)\) denotes the time consumption per unit of the flow on the visible link \((u,v)\), and \(\sum_{r=1}^{R}f_{u,v}^{r}(t)\) denotes the flow of the task \(r\) over the link \((u,v)\). In addition, \(\text{C1}\) is the inter-satellite link capacity constraint. \(\text{C2}\) is the inter-satellite transmission flow storage constraint, which indicates that no data is stored on the satellite during the data transmission. \(\text{C3}\) denotes the resource requirement satisfaction constraint. Meanwhile, we identify the traffic scheme when we have solved for the minimum value. We assume that the satellite whose mission exceeds the load is a source node in the satellite networks. Then, we assign resources to the target satellite based on the flow from the source node to other nodes. Therefore, we can obtain the multi-satellite resource allocation scheme by calculating the minimum cost flow of the network, while we can ensure the minimum cost consumption of the resource allocation scheme. ```
Input: Given network \(G\big{(}V,E,s_{\text{source}},s_{\text{target}},U,l\big{)}\). Initialize the number of transmissions \(d_{i}\), the time \(U_{u,v}^{r}\) consumed per unit of data transmission, link bandwidth \(l_{s,g^{\prime}}^{\max}\), source point \(s_{source}\), and sink point \(s_{\text{target}}\), Output: Network flow allocation time \(Time\) if\(s_{source}\
eq\varnothing\delta s_{\text{target}}\
eq\varnothing\)then
2 superSourceNode.next() = \(s_{source}\) ;
3 superTargetNode.next() = \(s_{target}\) ;
4 G.add(superSourceNode);
5 G.add(superTargetNode);
6 MF=FordFulkerson(\(d_{s,g^{\prime}}^{\max}\));// Use the algorithm Ford-Fulkerson to calculate the maximum flow value MF allowed in the network \(G\) ; for each \((u,v)\in E\)do
7 Time = Time + \(U_{u,v}^{r}\times MF(u,v)\);
8 Time = time + \(\Phi\);// The sum time consumed is the sum of link data transmission time, antenna switching, satellite internal calculations, and other operations. return Time
```  
**Algorithm 1** Maximum traffic allocation of inter-satellite link resources  
As shown in Figure 5, we can observe the inter-satellite links and the satellites' initial state in the spatial information network. Our purpose is to find all paths that consume the shortest time. As shown in Table 2, we give a simple resource type and predefined value of the demand quantity on the network \(G\).