Disclosure of Invention
Aiming at the defects of the existing method, the invention provides an energy distribution method of a zero-forcing MIMO communication system, which can fully utilize the piecewise linear characteristic of multi-user energy distribution under the constraint condition of total energy in the environment of a multi-user MIMO communication system to realize the redistribution of an energy output result with better energy efficiency, and has small overall calculated amount and wider application range.
In order to achieve the above object, the energy allocation method for a zero-forcing MIMO communication system proposed by the present invention reallocates an energy output result with better energy efficiency under a total energy constraint condition in a multi-user MIMO communication system environment, which comprises the following steps:
s1) obtaining the total user number, the antenna number of each user and the base station channel state information thereof, and constructing an information matrix of each user;
s2) performing singular value decomposition on all information matrices, respectively, to generate a subchannel gain value corresponding to each user;
s3) inputting all subchannel gain values into a breakpoint function to generate complex breakpoint values;
s4) initializing the antenna energy distribution values of all users and establishing a complex temporary storage set;
s5) a breakpoint value is taken out to be compared with all the subchannel gain values in sequence, and the comparison result is updated to the corresponding temporary storage set;
s6) constructing an energy efficiency function according to the values generated in the previous step;
s7) inputting the breakpoint value as a variable into an energy efficiency function to generate a result value, judging whether the result value is larger than a threshold value, if so, returning to the step S5 until all the breakpoint values are calculated; if the result value is smaller than the threshold value, go to step S8;
s8) extracting the root value of the energy efficiency function, calculating new antenna energy distribution values of all users by inputting the root value into the energy distribution function, and outputting the energy.
Further, the information matrix is N × M
kA matrix of dimensions, where N denotes the number of antennas of the base station and M
kRepresenting the number of antennas for the k-th user. In step S2, the information matrix H
kPerforming singular value decomposition to obtain
Wherein (·)
HWhich represents the transpose of the conjugate,
represents M
k×M
kMatrix of singular values of the dimension, λ
kmRepresents H
kOf the m-th singular value, U
kAnd V
kRespectively represent N × M
kLeft singular vector matrix sum M of dimensions
k×M
kThe right singular vector matrix of the dimension.
Further, step S3 interrupts the point function as
Where K is the total number of users, M
kIndicates the number of antennas, gamma, of the k-th user
kmIs a subchannel gain value representing the mth antenna of the kth user. And the number of breakpoint values is Q,
μ
kdetermined by water injection, i.e. solving equations
Wherein (x)
+=max{x,0},
Representing the upper limit of the energy of the transmitter of the kth user.
The breakpoint value generated by the above is recorded as mu(1),μ(2),...μ(Q)And arranged in descending order.
Further, in step S4, the plural temporary signals are transmittedThe storage sets at least include a first storage set, a second storage set and a third storage set, respectively A, B and E
kAnd (4) showing. In step S5, one of the breakpoint values is taken out and compared with all the subchannel gain values, and the following judgment is performed according to the breakpoint value: if it is
Where K 'is a {1, 2.,. K }, and M' is a {1, 2.,. M }, in that
kE, the third temporary storage set is updated to E
k=E
kU { m' }; if it is
μ(q)=μ
k′And if K ' is larger than {1, 2., K }, updating the first temporary set to a ═ u { K ' } and updating the second temporary set to B ═ B/{ K ' }.
Further, the energy efficiency function in step S6 is
Wherein the coefficients a, b, c are defined as:
wherein P is
rRepresenting the fixed loss of the communication system in addition to the transmitted energy,
indicating the efficiency of energy conversion.
Further, the threshold value is set to 0 in step S7.
Further, the energy distribution function in step S8 is
Wherein mu
*Is the root value of the energy efficiency function.
After the total user number, the antenna number of each user and the base station channel state information of the users in the multi-user MIMO communication system are obtained, the step can be performed, the piecewise linearity characteristic of multi-user energy distribution is fully utilized under the condition of total energy constraint, and the energy output result with better energy efficiency is redistributed.
Detailed Description
FIG. 1 is a schematic representation of the steps of the present invention. The steps are realized through a computer program, the whole calculation amount is small, the processing speed is far better than that of the traditional method, and the burden and the cost of hardware equipment can be reduced. In the figure, steps S1 to S8 are arranged schematically, and steps S5 to S7 are loop processing for obtaining a new antenna energy allocation value after all the breakpoint values are calculated, wherein step S7 is decision making, and determines whether a result value generated after the breakpoint values are input into the energy efficiency function is greater than a threshold value, and returns to step S5 according to the result until all the breakpoint values are calculated or step S8 is performed. After all the calculations are completed, a new antenna energy allocation value is output to each antenna, so that the allocation with the best energy efficiency is achieved, and further, the overall calculation amount is small, so that the burden of hardware equipment is reduced.
FIG. 2 is a schematic flow diagram of the present invention. The steps after subdivision are of course also realized by means of a computer program.
In step S201, the total number of users, the number of antennas per user and the bs channel state information are obtained, wherein the total number of users is defined as K, MkDenotes the number of antennas for the kth user, where K is 1, 2.
In step S202, each of the building blocks is constructedInformation matrix of individual users, wherein the information matrix is defined as HkThe information matrix HkIs NxMkMatrix of dimensions, MkAs well defined above, N represents the number of antennas of the base station.
In step S203, all information matrices are subjected to singular value decomposition, respectively, each information matrix H
kThrough singular value decomposition to obtain
Wherein (·)
HWhich represents the transpose of the conjugate,
represents M
k×M
kSingular value matrix of dimension, and λ
kmRepresents H
kOf the m-th singular value, U
kRepresents NxM
kLeft singular vector matrix of dimension, and V
kRepresents M
k×M
kThe right singular vector matrix of the dimension.
In step S204, a subchannel gain value corresponding to each user is generated, wherein the mth subchannel gain value of the kth user is defined as γ
km. Subchannel gain value gamma
kmThe calculation method of (c) is specifically as follows, first defining the zero-forcing filter matrix G ═ (U)
HU)
-1U
HWherein U ═ U
1,U
2,...,U
K]Reconstructing a subchannel gain value of
Wherein sigma
2Variance, u, representing white Gaussian noise
kmRepresentation matrix (U)
HU)
-1To (1) a
A diagonal element, L
kIndicating the propagation loss of the electromagnetic wave corresponding to the k-th user.
In step S205, all the sub-channel gain values are input into a breakpoint function to generate a complex breakpoint value, wherein the breakpoint function is
Where K is the total number of users, M
kThe number of antennas for the k-th user as described above. And the number of breakpoint values is Q,
in addition, μ in the breakpoint function
kDetermined by water injection, i.e. solving equations
Wherein (x)
+=max{x,0},
Representing the upper limit of the energy of the transmitter of the kth user.
In step S206, the antenna energy allocation values of all users are initialized, and in order to ensure that the subsequent operations are not affected by the previous values to generate errors, the initialized values are zero, and further, the initialization is pkm=0,k=1,2,...,K,m=1,2,...,MkWherein p iskmRepresenting the amount of energy allocated on the mth antenna of the kth user.
In step S207, a plurality of temporary storage sets, which are a first temporary storage set a, a second temporary storage set B and a third temporary storage set E, are established
kAnd the temporary storage sets are respectively
Where K is 1, 2.
In step S208, a count variable q is set to 1, so as to sequentially take out the breakpoint values and sequentially compare the breakpoint values with the subchannel gain values, and the comparison method makes the following determination according to the sources of the breakpoint values:
if it is
Where K 'is a {1, 2.,. K }, and M' is a {1, 2.,. M }, in that
kAnd updating the third temporary storage set to E
k=E
k∪{m′};
Mu.s of(q)=μk′And if K ' is larger than {1, 2., K }, updating the first temporary set to a ═ u { K ' } and updating the second temporary set to B ═ B/{ K ' }.
In step S209, the comparison result is updated to the corresponding temporary storage set.
In step S210, an energy efficiency function is constructed according to the values generated in the previous steps, wherein the energy efficiency function is
Wherein the coefficients a, b, c are defined as:
wherein P is
rRepresents the fixed loss of the communication system in addition to the transmitted energy, and
indicating the efficiency of energy conversion.
In step S211, the breakpoint value is input as a variable into the energy efficiency function to generate a result value, i.e., the breakpoint value μ(q+1)The resulting value f (mu) is generated as a variable x in the energy efficiency function f (x)(q+1)) That is, the result value is determined by the energy efficiency function f (x) when x is equal to μ(q+1)The magnitude of the time.
In step S212, it is determined whether the result value is greater than a threshold value, wherein the threshold value is set to 0. When the result value is greater than the threshold value, i.e. f (mu)(q+1)) If not, returning to the step S208 until all the breakpoint values are calculated; when the result value is smaller than the threshold value, i.e., f (mu)(q+1)) If < 0, go to step S213.
In step S213, the root value of the energy efficiency function, that is, the root value of equation f (x) 0, that is, the root of equation f (x) 0, is extracted, and the root value is represented as μ*。
In step S214, the energy distribution function is inputted to the root, new antenna energy distribution values of all users are calculated, and the energy values are outputted, wherein the energy distribution functionIs composed of
The root value is the best solution on the premise of energy efficiency priority, and after the calculation of the energy distribution value is completed, the energy distribution value is output to the antenna.
In the above description, the steps S201 to S207 are detailed as the steps S1 to S4 in fig. 1, and the steps S208 to S214 are detailed as the steps S5 to S8 in fig. 1, and the definitions mentioned in each step are described in detail, so that the relationship therebetween can be more easily understood.
FIG. 3 is a block diagram of steps of an exemplary embodiment of the present invention, which particularly and concisely represents technical focus of the present invention to make the overall understanding more rapid and clear.
In step S301, an information matrix H of each user is constructedkThat is, the pre-operation mentioned in step S1 in fig. 1 is completed together, and the information matrix H required to be used subsequently is generatedk。
In step S302, each information matrix HkPerforming singular value decomposition to generate a subchannel gain value gamma corresponding to each userkmThat is, the subchannel gain value γ is obtained in step S2 in fig. 1kmFor use in subsequent calculations of the breakpoint values.
In step S303, Q breakpoints are calculated and arranged in descending order and are respectively recorded as mu(1),μ(2),...μ(Q)The method aims to adopt descending order arrangement to be beneficial to subsequent calculation processing.
In step S304, the antenna energy allocation values of all users are initialized to 0, and a temporary storage set A, B, E is createdk. As described above, the power allocation for the antennas is initialized to 0 to avoid interference from previous values and to establish a temporary set A, B, E for use in subsequent loop calculationskAnd the count variable q for the loop is set to 1.
In step S305, according to the breakpoint value mu(q)The source of the value of (c), the corresponding update register set A, B, Ek。
Step (ii) ofIn step S306, the temporary storage set A, B, E updated according to step S305kAnd constructing an energy efficiency function f (x).
In step S307, it is judged whether f (μ)(q+1)) And ≧ 0, that is, whether the determination result value is greater than the threshold value, if so, the count variable is updated to q +1, and the process returns to step S305, and if so, the process proceeds to step S308.
In step S308, the root of equation f (x) 0 is extracted, that is, the root of equation f (x) 0 is solved, and the root is expressed as μ
*. Then, the root value is input into an energy distribution function, new antenna energy distribution values of all users are calculated, and energy values of the new antenna energy distribution values are output, wherein the energy distribution function is
The root value is the best solution on the premise of energy efficiency priority, and after the calculation of the energy distribution value is completed, the energy distribution value is output to the antenna. In other words, the energy allocation value of the antenna with the best energy efficiency is obtained, and the energy is allocated to each antenna as a result.
For convenience of explanation, in fig. 3, it is not repeatedly confirmed whether all the breakpoint values are completed, but only whether the value of f (x) is smaller than the threshold value 0 is explained, and it can be understood that all the antenna energy allocation value calculations are completed by one processing.
Fig. 4 is a schematic diagram of energy efficiency values obtained by the present invention and the conventional method when the distance between the transceivers varies from 0.1 to 1.5 km under the condition of 1000 monte carlo experiments. To illustrate the performance of the method, assume that there is a multi-user MIMO communication system, where the number of users K is 3, the number of base station antennas N is 6, and the number of antennas of each user is M
k2, K is 1, 2. Each element of the channel state information matrix obeys independent Gaussian distribution of zero mean unit variance, the bandwidth of the system is 10MHz, the noise power is-130 dBm/Hz, and the energy conversion efficiency
Fixed loss P
r140dBm for eachThe energy constraints for the user are an upper transmitter power limit of 0.15W and an electromagnetic propagation loss of 128.1+37.61g (d), where d represents the distance between the transceivers in kilometers.
According to the above assumed multi-user MIMO communication system, the energy allocation method of the present invention shown in fig. 3 is performed as follows:
1) in step S301, the transceiving distance d is 0.1 km, and the estimated channel state information matrix of each user is assumed to be:
2) in step S302, the matrix H is divided into1,H2,H3Performing singular value decomposition to generate a subchannel gain value of each user, and obtaining:
γ11=0.6531,γ12=0.5958
γ21=1.9467,γ22=1.8082
γ31=1.6445,γ32=1.0933
3) in step S303, 8 breakpoint values may be calculated:
arranging in descending order to obtain 8 breakpoint values:
μ(1)=0.5137,μ(2)=0.5530,
μ(3)=0.6081,μ(4)=0.6084,
μ(5)=0.7581,μ(6)=1.5311,
μ(7)=1.6783,μ(8)=1.6797
4) in step S304, all energy allocation values are initialized to zero, i.e. p11=p12=p21=p22=p31=p32=0;
Initializing a scratch set
The counting variable q is set to 1.
5) In step S305, when q is 1,
thus, the temporary set E is updated
2={1}。
6) In step S306, an energy efficiency function is constructed
Wherein the values of a, b and c are respectively as follows:
a=0.9611
b=-0.1137
c=1
7) in step S307, f (μ)(2)) Since f (0.5530) is 1.0396 > 0, q is set to 2, and the process returns to step S305.
8) In step S305, when q is 2,
thus, the temporary set E is updated
2={1,2}。
9) In step S306, an energy efficiency function is constructed
Wherein the values of a, b and c are respectively as follows:
a=1.8156
b=-0.6667
c=2
10) in step S307, f (μ)(3)) Since f (0.6081) is 1.8465 > 0, q is 3, and the process returns to step S305.
11) In step S305, when q is 3,
thus, the temporary set E is updated
3={1}。
12) In step S306, an energy efficiency function is constructed
Wherein the values of a, b and c are respectively as follows:
a=2.5332
b=-1.2748
c=3
13) in step S307, f (μ)(4)) Since f (0.6084) is 2.7681 > 0, q is 4, and the process returns to step S305.
14) In step S305, when q is 4, μ(q)=0.6084=μ2Therefore, the update temporary set a ═ {2} and B ═ 1, 3 }.
15) In step S306, an energy efficiency function is constructed
Wherein the values of a, b and c are respectively as follows:
a=1.0992
b=-0.0581
c=1
16) in step S307, f (μ)(5)) Since f (0.7581) is 0.6324 > 0, q is 5, and the process returns to step S305.
17) In step S305, when q is 5, μ(q)=0.7581=μ3Therefore, the update temporary set a ═ {2, 3} and B ═ 1 }.
18) In step S306, an energy efficiency function is constructed
Wherein the values of a, b and c are respectively as follows:
a=0.6997
b=0.7000
c=0
19) in step S307, f (μ)(6)) Since f (1.5311) is 0 ≧ 0, q is 6, and the process returns to step S305.
20) In step S305, when q is 6,
thus, the temporary set E is updated
1={1}。
21) In step S306, an energy efficiency function is constructed
Wherein the values of a, b and c are respectively as follows:
a=0.0851
b=-0.8311
c=1
22) in step S307, f (μ)(7)) When f (1.6783) — 0.1038 < 0, step S308 is performed.
23) In step S308, the root of equation f (x) is solved to obtain a root value μ*The final result of the output energy allocation is 1.5311:
p11=0,p12=0,
p21=0.0947,p22=0.0553,
p31=0.1500,p32=0
in the above, it can be seen that steps 5 to 22 are circularly calculated in steps S305 to S307. Through the energy distribution method of the invention, the difference between the advantages and disadvantages of the traditional method can be obviously seen from the curve change in fig. 4, and the distribution scheme for optimizing the energy efficiency of the antenna is realized.
The above description is only exemplary of the present invention and should not be taken as limiting the invention, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.