1. Introduction
The next-generation mobile communication network is expected to provide communication services for users with different applications anytime and anywhere, such as smart cities, UAVs, ocean surveillance, Internet of Things, and smart industries [
1,
2,
3]. The satellite–ground network is a promising solution to achieve this goal. Satellite communication can solve the coverage constraints of 5G communication, even in remote areas, it can still be connected, and it has great potential for ultra-broadband connections. It has significant coverage advantages in application scenarios such as oil well platforms, ships, and agriculture [
4,
5]. Therefore, the use of satellites as transmission nodes in communication networks has become an important part of the next-generation mobile communication system solutions.
Satellites, including geostationary Earth orbit (GEO) and low Earth orbit (LEO), are essential elements in space to deliver services globally. LEO satellites can offer relatively high data rates and quick propagation delays because they are the closest to Earth. However, LEO satellites move quite quickly relative to the Earth, and it is necessary to transfer satellites frequently to maintain coverage. [
6]. In contrast, despite the lower data rate and longer propagation delay of the farthest GEO satellites, their geosynchronous motion ensures stable and incredibly wide ground coverage, offering mobile users great mobility assistance [
7]. At present, the number of terrestrial terminal users continues to grow rapidly, and the random access of massive terminals can easily lead to network congestion, but the lack of a unified scheduling strategy among satellite networks has brought huge challenges to access control of the users, so how to effectively use the existing resources to meet the increasing user demands has become an opening problem.
By overcoming the limitations of traditional schemes and game theory, matching games have become a potential scheme in network resource allocation [
8,
9,
10,
11,
12]. There are classical matching schemes between two-party entities [
11]. Paper [
9] solved the connection problem between electric equipment and UAVs in the power Internet of Things scenario by using a two-sided matching algorithm. It is important to consider the relationships between all entities and establish a distributed scheme. In the satellite–ground network, three types of entities, GEO satellites, LEO satellites, and end users, need to be considered. The three categories of entities must frequently be decoupled by the two-sided matching algorithm, which results in a lack of preference data for different entities and a reduction in system efficiency. There is a three-sided matching scheme between triple entities, and the relationship problem between three entities (GEO satellites, LEO satellites, and end users) can be reformulated using three-sided matching with size and cycle preference list (TMSC) among the three entities matching game [
13]. Finding a stable match with the highest cardinality among GEO satellites, LEO satellites, and end users is the objective of TMSC. As it is NP-complete to determine whether a stable match exists in the TMSC model [
14], we transformed it into a restricted TMSC by adding some reasonable constraints.
In this paper, we use the three-sided matching theory to solve the satellite–ground network resource allocation problem. Among them, GEO satellites provide users with data backhaul, and LEO satellites provide data transmission services according to users’ requests. Therefore, we propose a three-sided cyclic matching algorithm. The benefits of our suggested solution include the following: (a) in this method, all three entities are considered simultaneously: GEO satellites, LEO satellites, and end users; (b) the distributed nature of matching algorithms makes it possible to effectively alter resource allocation in response to the constantly changing user demands and the time-varying nature of satellites. The main contributions of this paper are as follows:
We propose a satellite-oriented resource allocation model, composed of GEO satellites, LEO satellites, and users. Then, we design a TMSC problem and create a matching issue with three sides including GEO satellites, LEO satellites, and users in which each agent creates a list of preferences by sorting those of the other agents;
It is NP-complete to determine whether a stable match exists in the TMSC model, and by adding some reasonable constraints, we transform it into a restricted TMSC problem. An algorithm is proposed to solve the above problems. It can find stable results;
We conduct a large number of simulation experiments, and compared with the greedy method, the random allocation method, and the two-sided matching method, and verify that the proposed algorithm is effective in delay, satellite revenue, etc.
The rest of this article is organized as follows.
Section 2 introduces the related work in recent years. Then, the model of the satellite–ground network resource allocation system is expounded, and in
Section 4, maximizing satellite revenue is taken as an optimization problem. In
Section 5, a three-sided cyclic matching algorithm is proposed to deal with the optimization problem. Then, in
Section 6, the simulation results and corresponding analysis are given. Finally, conclusions are drawn in
Section 7.
2. Related Work
Recently, to enable seamless mobile communications coverage worldwide, the satellite–ground network attracted tremendous research interest. Reference [
15] developed an air–ground integrated network composed of satellites, UAVs, and ground users, which provided users with lower transmission delay. Reference [
16] proposed a software-defined integrated space–ground network, which provided integrated communication services for various space missions. Reference [
17] proposed a satellite–ground network composed of a ground network and a space network to provide users with global network coverage and less delay. Reference [
18] proposed cognitive radio, which allowed satellite and ground networks to dynamically share their spectrum, so that the network obtained greater throughput. Reference [
19] studied the connection delay between satellite networks in different long-distance intercontinental data communication scenarios, and proved the availability of satellite networks. It can be seen that the efficient transmission of large amounts of data and the limits of network coverage can now be addressed by the integrated satellite–ground network.
Resource allocation is an important research direction to improve the transmission performance of the satellite-–ground network [
20]. Paper [
21] established a joint communication and computation optimization model for satellite networks, which utilized stochastic geometry and queuing theory to achieve the best response delay. Reference [
22] designed a dynamic channel resource allocation algorithm for the satellite ground integration architecture, which improved the number of Internet of Things terminal connections. The literature in [
23] proposed a joint beamforming and carrier allocation scheme to solve the problem of spectrum shortage, which realized reliable satellite ground resource allocation. Reference [
24] studied the problem of maximizing the capacity of all mobile terminals in an air–ground integrated network, and mainly used convex optimization theory to solve the problem. Reference [
25] introduced some challenges faced by satellite–ground communication networks and proposed solutions based on artificial intelligence. The mentioned paper only wanted to improve the date rate of resources and the throughput of the system, and did not allocate resources from the needs of various entities in the network.
Matching is widely used in resource allocation [
26]. The method of using matching theory to obtain optimal resource allocation in network resource allocation has become widespread. Two-sided matching has been widely studied in network resource allocation. Reference [
27] designed an algorithm based on one-to-many matching, which transformed the network optimization problem into a one-to-many matching problem between spectrum resources and end users. Reference [
28] proposed a matching-based theoretical framework to solve the issue of distributing computing resources in a three-layer fog computing network. The above papers only consider the case of two types of entities. However, in the satellite–ground network resource allocation, three different categories of entities must be taken into account equally. In social and commercial domains, three-sided matching problems are particularly prevalent [
29,
30]. Reference [
31] utilized a three-sided matching algorithm to find the optimal matching between space–air–ground network facilities, content sources, and users. Paper [
32] studied the problem of three-sided matching between spectrum, equipment, and user in wireless network virtualization. The above three-sided allocation method provides guidance for our study. However, as far as the author knows, the three-sided matching game is used for the first time in this research to address the issue of multi-party entity matching in the satellite–ground network.
4. Problem Formulation
In
P0, the goal is to maximize the total revenue of satellites. Since users with high priority need fewer delays and pay more for satellites, satellites are more willing to serve such users.
Constraint (8) is the capacity constraint of LEO satellite and the maximum number of users matching each LEO satellite cannot exceed in each slot. Constraint (9) represents , which can match with at most one LEO satellite in time slot . Constraint (10) is the capacity constraint of , and the maximum number of LEO satellites matching each GEO satellite cannot exceed . Constraint (11) means the data transmission rate between and is limited by the channel capacity of . Constraints (12) and (13) represent binary variables of and .
5. System Analysis
In this part, the resource allocation problem is solved using three-sided matching. Finding the most stable match with the highest cardinality in our suggested model is an NP-complete task. By creating some appropriate constraints, we convert it into an R-TMSC problem. We propose a three-sided cyclic matching algorithm for a GEO satellite.
5.1. Principle of Three-Sided Matching
Three-sided matching originates from two-sided matching. Two-sided matching is a matching method proposed by Gale and Shapely, and is widely used in marriage, person post, and other matching. With the increase in the types of matching subjects, the matching problem gradually expands [
33]. Finding a stable outcome for each agent is the aim of the three-sided matching method [
34]. Under the intuitive inspiration of the matching game framework, the relationship between user, LEO satellite, and GEO satellite can be described as a three-sided matching with size and cyclic preference list (TMSC). In TMSC, each type of participant has a preference list, which only includes one type of another agent, that is, GEO satellites only rank users, users only rank LEO satellites, and LEO satellites only rank GEO satellites. TMSC allows each agent to have multiple partners sorted by preference [
35]. Let
represent the set of all possible triples. Therefore,
is a subset. Definition 1 gives the blocking triples representing TMSC stability.
Definition 1. Blocking Triple: A triple (, , ), but (, , ), If all three members of , , and prefer triple (, , ) to at least one of their existing matched partners, then the triple is blocking.
The aforementioned definition shows that each agent in the blocking triple is more eager to match each other as a triple than the current partners in matching
. The matching is deemed steady if
lacks a blocking triple. The TMSC challenge in this study, which is inspired by [
14], is to look for a stable matching with the highest cardinality
.
where,
is the number of triples. Constraint (15) states that a user can communicate with only one LEO satellite each time. Constraint (16) indicates the capacity limit
of the GEO satellite, constraint (17) shows that a LEO satellite can only connect to, at most,
GEO satellites, and constraint (18) ensures no blocking triple in
.
5.2. Three-Sided Cyclic Matching Algorithm
We added two restrictions from TMSC to form R-TMSC. Every GEO satellite has a user preference list that is derived from a master list. It is arranged in descending order based on the priority of the user. Users who demand lower delay will pay more and enjoy greater favor with GEO satellites. The preference list of all GEO satellites comes from the main list. In our example, the identical preference list
is generated by all GEO satellites. (We assume that every GEO satellite can serve every user.)
On the other hand, according to the service quality measured by delay
(generate an acceptable set by Formula (3)), this ranks acceptable LEO satellites. Therefore, the user selects the LEO satellite according to the reciprocal of the expected delay. We represent the user’s preference list
as:
According to the previous subsection, the GEO satellite is independent of the LEO satellite. That is to say, each LEO satellite’s preference list
contains a constraint, and the ranking of all LEO satellites is the same, which can be expressed as:
Before proposing our algorithm, the following notations are defined.
represents the set of users that
prefers over its current matching partner
means the LEO satellite set that
prefers to its present matching partner
.
represents the LEO satellite set that still has capacity for GEO satellite
.
indicates the user set, where a LEO satellite
is preferred by
above its current partner
, and
is also capable of matching with
.
According to above definitions, we propose Algorithm 1. Our algorithm is to look for the “best” triple and add it to the matching
each time, starting from an empty set. Each “best” triple
,
,
is produced by first choosing a GEO satellite that meets specific criteria, after which this chosen GEO satellite selects the best user that satisfies its criteria, and finally this chosen user selects the most qualified LEO satellite.
Algorithm 1: Three-sided Matching Satellite–Ground Network Resource Allocation Algorithm |
1. Phase 1: Initialization; |
2. Input: ; |
3. Set , symbol=1; |
4. Phase 2: Matching; |
5. while perform; |
6. Set ; |
7. for each perform; |
8. ; |
9. if then; |
10. ; |
11. ; |
12. ; |
13. if then; |
14. Choose the worst matched triple for ; |
15. ; |
16. ; |
17. end if: |
18. if then; |
19. ; |
20. ; |
21. end if: |
22. ; |
23. end if: |
24. end for; |
25. end while: |
26. Output the stable result . |
Starting with an empty set, Algorithm 1 runs. As indicated in line 8, adds the better triples to . If is true, line 10–23 will be executed. It is performed by choosing a more suitable user for in line 10. Note that represents the user in that has the highest priority, and then performing the same for in line 13, choosing a more suitable LEO satellite. Finally, in line 22, this triple is added to .
5.3. Performance Analysis
Theorem 1. After a limited number of iterations, the algorithm will terminate and produce a stable match.
Proof of Theorem 1. The algorithm will finish after a set number of steps because there are only so many LEO satellites and users on each user’s preference list. To prove that output matching is stable, we suppose that the output set
is unstable. It implies that there must be a blocking triple (
,
,
), following that:
,
, and
. Thus,
, and
. Then,
, and
. In this situation, the algorithm will not terminate, which is paradoxical. Therefore, the output result
must be stable [
12]. □
Theorem 2. In () iterations, the algorithm can always identify a stable match.
Proof of Theorem 2. If a LEO satellite has a large capacity , only one user will be assigned to that LEO satellite during each iteration. Thus, the total time , user’ number , LEO satellite’ number , and GEO satellite’ number determine the maximum amount of time needed, hence, this algorithm’s time complexity is . However, when is very limited, just one user is assigned to a more suitable LEO satellite in its preference list during each sign iteration, continuing until the sign equals 0 and this algorithm ends. In reality, each user pre-matches every LEO satellite in its preference list when the algorithm is running, which is the worst scenario. Therefore, the length of the user’s preference list, rather than the matching set , dictates the maximum time required, so the time complexity is (). □
6. Performance Results and Analysis
In this part, we choose to compare with two-sided matching method, greedy matching solution, and random matching solution, and evaluate the performance of the proposed algorithm through MATLAB simulation. The algorithms used in the simulation are as follows:
- (1)
Proposed method: a three-sided cycle matching method;
- (2)
Two-sided matching method: it decouples three types of entities into two types for matching;
- (3)
Greedy matching method: it finds the local optimal solution by using the best option in the current situation;
- (4)
Random matching method: random matching of three kinds of entities
The main simulation parameters are listed in
Table 1 [
15,
36]. Within a geographical area of 10 km × 10 km, the users are dispersed at random. There are six LEO satellites, six GEO satellites, and
users in total. Specifically, the orbit height of the LEO satellite is 780 km, the orbit period is 6028 s, and the LEO satellite’s capacity
is 20, and the GEO satellite’s capacity
is 6.
Figure 2 compares the four methods from the perspective of average delay.
In the delay model, the transmission delay experienced by users connected to LEO satellites may be calculated by dividing the task data size
by the associated transmission data rate
. As can be seen in
Figure 2, with the increase in users, the average delay of users is also increasing. Our proposed algorithm can always produce a stable match so it has the lowest user delay. The delay of the two-sided matching and greedy algorithm is higher than the proposed three-sided cyclic matching algorithm, and the random allocation is the worst.
In
Figure 3, the number of users served by the four algorithms is depicted as the user base grows. We increase the number of users from 20 to 140 in 20 steps. According to the figure, we can see that the proposed algorithm, two-sided matching algorithm, and greedy method serve all users until the user number reaches 100. When there are about 120 users, the two-sided matching algorithm tends to be flat. Since then, when the number of users continues to rise, the proposed algorithm tends to be stable when serving about 120 users, because the available LEO satellite capacity is limited. It can be seen that our algorithm is superior to other algorithms in the number of service users.
Figure 4 and
Figure 5 compare the change in satellite revenue with users and the change in satellite revenue at each slot. We increase the number of users from 20 to 140 in 20 steps. As shown in
Figure 4, under all four scenarios, as more users join the network, the user’s income increases. This is because the more users of the service, the more revenue. We can see that when the number of users reaches 120, the revenue is still increasing, because new users may have higher priority. On the other hand,
Figure 5 shows that the revenue of satellites increases as time slots increase. The more users successfully matched, the more revenue the satellite obtains, so it shows an increasing trend. We can also observe from
Figure 4 and
Figure 5 that our proposed algorithm is superior to two-sided matching, greedy, and random allocation methods.
We further study the impact of time slot changes on the number of served users. For clarity, we considered the case where the user set is 120. In addition, we need to assume that the user’s requirements for delay do not change in each time slot, so that we can make a fair comparison. As shown in
Figure 6, the algorithm proposed by us has an obvious growth trend, and it serves more users than the two-sided matching. The greedy algorithm and the random algorithm are far lower than the three-sided matching algorithm. The number of users served by these four algorithms increases with the increase in time slots.