Global navigation satellite system-aided deep learning-based beam prediction and tracking for unmanned aerial vehicle-enabled millimeter-wave communication
Patent Information
- Application Number
- KR1020250031583
- Authority / Receiving Office
- KR · KR
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-03-11
- Publication Date
- 2026-09-18
Smart Images

Figure P1020250031583_ABST
Abstract
Description
Technology Field
[0001] The present disclosure relates to deep learning-based beam prediction and tracking assisted by a Global Navigation Satellite System (GNSS) (e.g., Global Positioning System: GPS) for millimeter-wave (mmWave) communication capable of unmanned aerial vehicles (UAVs). Background Technology
[0002] UAVs (e.g., drones) have become available in various wireless communication networks. In such UAV-enabled wireless communication, UAVs are expected to serve as User Equipment (UE) accessing cellular networks—that is, as cellular-connected UAVs—or as UAV-assisted communication platforms providing airborne base stations (BS) and relays to ground users.
[0003] In particular, cellularly connected UAVs can enable communication at high data rates over the mmWave band. Such UAV-enabled mmWave communication can support very high data traffic and various UAV applications, such as aerial surveillance and disaster rescue, due to the wide bandwidth of mmWave frequencies. However, the high path loss characteristic of mmWave and the dynamic nature of UAV mobility can compromise the stability of the communication link between the UAV and the BS. To mitigate such path loss, it is helpful to deploy a large antenna array on the BS side to generate a narrow beam with strong beamforming gain. Consequently, mmWave communication relies heavily on efficient beam management that minimizes the risk of beam misalignment by rapidly selecting the appropriate beam during intra-cell and inter-cell movement. Furthermore, as the high mobility of UAVs introduces uncertainty into parameters such as speed and acceleration, it may be very important to make beam management robust—for example, by performing it in a dedicated manner customized for the UAV—in order to enable high-speed mmWave communication for UAV-assisted cellular networks.
[0004] Building upon existing advancements in beam training and tracking, sensing-aided DL approaches utilizing sensor data were studied to further improve system performance. J. Morais, A. Bchboodi, H. Pezeshki, and A. Alkhateeb, "Position-Aided Beam Prediction in the Real World: How Useful GPS Locations Actually are?" in ICC 2023 - IEEE International Conference on Communications , May 2023, pp. 1824–1829 addressed GPS-assisted beam prediction in vehicle-to-infrastructure (V2I) scenarios, utilizing GPS data and applying a Multi-Layer Perceptron (MLP) model. S. Jiang, G. Charan, and A. Alkhateeb, "LiDAR Aided Future Beam Prediction in Real-World Millimeter Wave V2I Communications," IEEE Wireless Communications Letters , vol. 12, no. 2, pp. 212-216, Feb. 2023 presented LIDAR-assisted beam prediction in V2I scenarios. G. Charan, T. Osman, A. Hredzak, N. Thawdar, and A. Alkhateeb, "Vision-Position Multi-Modal Beam Prediction Using Real Millimeter Wave Datasets," in 2022 IEEE Wireless Communications and Networking Conference (WCNC). Austin, TX, USA: IEEE , Apr. 2022, pp. 2727-2731 combines GPS and vision data for vision and location-based beam prediction in V2I scenarios. H. Luo, U. Demirhan, and A. Alkhateeb, "Millimeter Wave V2V Beam Tracking using Radar: Algorithms and Real-World Demonstration," in 2023 31st European Signal Processing Conference (EUSIPCO) , Sep. 2023, pp. 740–744 covered radar-assisted beam tracking in vehicle-to-vehicle (V2V) communication. S. Jiang and A. Alkhateeb, "Computer Vision Aided Beam Tracking in A Real-World Millimeter Wave Deployment," in 2022 IEEE Globecom Workshops (GC Wkshps) ..., Dec. 2022, pp. 142-147 utilized computer vision for beam tracking in V2I scenarios. Meanwhile, the following technique for performing beam prediction using a camera in UAV-based mmWave communication, which has motion characteristics different from V2I and V2V scenarios, was studied: G. Charan, A. Hredzak, C. Stoddard, B. Berrey, M. Seth, H. Nunez, and A. Alkhateeb, "Towards Real-World 6G Drone Communication: Position and Camera Aided Beam Prediction," in GLOBECOM 2022 - 2022 IEEE Global Communications Conference , Dec. 2022, pp. 2951-2956; G. Charan, A. Hredzak, and A. Alkhateeb, “Millimeter Wave Drones with Cameras: Computer Vision Aided Wireless Beam Prediction,” in 2023 IEEE International Conference on Communications Workshops (ICC Workshops) , May 2023, pp. 1896-1901; I. Ahmad, AR Khan, RNB Rais, A. Zoha, MA Imran, and S. Hussain, "Vision-Assisted Beam Prediction for Real World 6G Drone Communication," in 2023 IEEE 34th Annual International Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC), Sep. 2023, pp. 1-7; Z. Zarei, F. D. Tilahun, and C. G. Kang, "Vision-assisted Beam Prediction for UAV-enabled Millimeter-Wave Communications using SEResNet50," in 2023 14th International Conference on Information and Communication Technology Convergence (ICTC) , Oct. 2023, pp. 1659-1661; and Y. Yeo and J. Kim, “Multi-Modal Sensing-Aided Beam Prediction using Poolformer for UAV Communications,” in 2024 Fifteenth International Conference on Ubiquitous and Future Networks (ICUFN) , Jul. 2024, pp. 202-204. The problem to be solved
[0005] GNSS-assisted DL-based beam prediction and tracking for UAV-enabled mmWave communication is disclosed in this document. means of solving the problem
[0006] In the example, a method for providing a Deep Learning (DL) model for millimeter wave (mmWave) communication capable of an Unmanned Aerial Vehicle (UAV) comprises the steps of partitioning a raw data set into a first raw data subset and at least one other raw data subset, and training a DL model on the first raw data subset, wherein the raw data set comprises a plurality of time-indexed raw data samples, each of the plurality of raw data samples comprises a respective observation and a respective label for a UAV that communicates with a base station (BS) in mmWave, each observation represents the GNSS-based measured location of the UAV and the orientation of the UAV relative to the BS, and each label is one of a plurality of beam indices representing a beamforming vector available in a codebook used for mmWave communication with the UAV, and the partitioning of the raw data set is the first raw data subset The training of the DL model includes adjusting the total number of raw data samples in each of the first raw data subset and at least one raw data subset according to a given split ratio between the first raw data subset and at least one raw data subset, and the training of the DL model includes using the DL model to generate an output sequence of predicted current and future beam indices among a plurality of beam indices for mmWave communication between the UAV and the BS from an input sequence of observations included in previous and current raw data samples in the first raw data subset.
[0007] The foregoing overview is provided to introduce, in a simplified form, some aspects that will be further described later in the detailed description. This overview is not intended to identify important or essential features of the claimed subject matter, nor is it intended to be used to define the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to any or all advantageous implementations discussed herein. Effects of the invention
[0008] The present disclosure provides an integrated DL model capable of simultaneously processing both beam prediction and tracking for UAV-enabled mmWave communication.
[0009] Providing a DL model according to the present disclosure can ensure robust user connectivity in a dynamic environment for UAV-enabled mmWave communication.
[0010] Providing a DL model according to the present disclosure can improve the performance and practical applicability of the DL model by dividing a raw data set containing GNSS-based measurements and labels into several subsets according to a given splitting ratio, in particular by refining the label distribution in each subset according to such splitting ratio. Brief explanation of the drawing
[0011] Figure 1 is a schematic diagram showing an example of a system for UAV-enabled mmWave communication involving GNSS-assisted DL-based beam prediction and tracking. Figure 2 is a block diagram showing an example of the data preprocessing pipeline of Figure 1. Figure 3 is a block diagram showing an example of the DL model of Figure 1. Figure 4 is a flowchart showing an exemplary process that provides the DL model of Figure 1. Figure 5 presents an exemplary flow of splitting the raw data set in Figure 4 in the form of pseudo-code. Figures 6 and 7 show the results of a test on a trained DL model provided according to the process of Figure 4. Specific details for implementing the invention
[0012] The various terms used in this disclosure are selected from the conventions of common terminology in consideration of their function within this document, as they may be perceived differently depending on the intent, practices, or emergence of new technology of those skilled in the art. In specific instances, some terms may be given meanings as set forth in the detailed description. Accordingly, terms used in this document should be defined consistently with their meaning in the context of this disclosure, rather than merely by their names.
[0013] In this document, terms such as "include," "have," etc., are used to specify the presence of the elements listed below, e.g., certain features, numbers, steps, actions, components, information, or combinations thereof. Unless otherwise indicated, these terms and variations thereof are not intended to exclude the presence or addition of other elements.
[0014] As used in this document, terms “first,” “second,” etc. are intended to identify several similar elements. Unless otherwise stated, such terms are not intended to impose limitations, such as a specific order of use of these elements or their elements, but are used merely to refer to several elements separately. For example, while an element may be referred to as the term “first” in one example, the same element may be referred to by a different ordinal number, such as “second” or “third,” in another example. In such examples, these terms do not limit the scope of this disclosure. Furthermore, the use of the term “and / or” in a list of elements includes any one or more of the listed items, as well as all possible combinations of these items. Moreover, expressions in the singular form include the meaning of the plural form unless explicitly stated otherwise.
[0015] Certain examples of the present disclosure will now be described in detail with reference to the attached drawings. However, the present disclosure may be embodied in many different forms and should not be construed as being limited to the examples set forth in this document. Rather, these examples are provided to provide a better understanding of the scope of the present disclosure.
[0016] It is considered that some of the individual features depicted in the drawings may be implemented independently or in combination. Various examples of these features and other features will become apparent from the following detailed description in conjunction with the attached drawings.
[0017] 시스템 개요
[0018] FIG. 1 is a schematic diagram showing an example of a system (100) for UAV-enabled mmWave communication involving GNSS-assisted DL-based beam prediction and tracking.
[0019] In the example of FIG. 1, the communication system (100) includes a BS (110) and a UAV (120) that are communicatively coupled to each other via a mmWave communication link. Other exemplary implementations of the communication system (100) are also considered. For example, the communication system (100) may also include additional components not shown, such as an additional BS configured like the BS (110) and / or an additional UAV configured like the UAV (120) and communicatively coupled to the additional BS.
[0020] A BS (110) is a network element responsible for wireless transmission to and / or wireless reception from a UE (e.g., UAV (120)) from at least one cell, having a plurality of antennas capable of mmWave signal communication (hereinafter referred to as N of the antennas of the BS (110)) (e.g., an array antenna including N antenna elements (e.g., isotropic antenna elements) (e.g., in the form of a 16-element phased array antenna operating in the 60 GHz frequency band). For example, the BS (110) can serve a single cell that provides communication services to a UE (e.g., UAV (120)) using a predetermined mmWave carrier frequency.
[0021] The UAV (120) has a GNSS receiver (e.g., a GPS receiver) that outputs a signal carrying GNSS-based measurement data (e.g., may indicate the GNSS-based measured position and / or velocity of the UAV (120)). Additionally, the UAV (120) has at least one antenna (e.g., a single antenna) capable of mmWave signal communication and acts as a UE. For example, the UAV (120) may be a rotorcraft drone having one or more rotors (or rotor blades) (e.g., a quadcopter drone with four rotors) or other types of UAVs. In a specific example, the UAV (120) may be a vertical take-off and landing (VTOL) aircraft.
[0022] In the example of FIG. 1, BS (110) is a codebook A beamforming vector to be used in mmWave communication with a UE (e.g., UAV (120)) having f It is determined based on such a codebook. The codebook of BS (110) is a collection of various available beamforming vectors, and It can be denoted as, where M is the total number of beamforming vectors in the codebook (in other words, representing the size of the codebook), and m∈{1, 2, ..., M} (e.g., M=64) is an index representing a corresponding one among these M beamforming vectors. In short, BS (110) is its codebook Beamforming can be performed using a beamforming vector selected from. For any m∈{1, 2, ..., M} It could be.
[0023] For discussion, time step tLet us assume an exemplary scenario in which mmWave communication (i.e., downlink transmission) is performed from a BS (110) to a UAV (120). In this scenario, the BS (110) is at a time step t In the beamforming vector (which may also be referred to as the beam vector for short) f [ t complex symbol using ] It transmits, and accordingly, the UAV (120) is a symbol expressed as follows y [ t Receives ].
[0024]
[0025] Here Is t Indicates a complex radio channel between BS (110) and UAV (120) in, represents the Hermitian transpose, and the downlink signal x [ t ] is the transmitted power P Constrained as, n [ t ] is variance It represents complex normal distribution noise. In this document, the representation of any physical quantity (e.g., a vector or another matrix) X a When explicitly referencing a specific time step for , its index (e.g., k ) is appended to the right of the expression enclosed in parentheses (e.g., X a [ k ]) to be appended as a subscript to the expression (e.g., X a,k Note that it is possible.
[0026] BS (110) is the beam vector that generates the highest received power. f Optimal beam selection can be achieved by choosing . Such an ideal beam vector is as follows f *It can be expressed as.
[0027]
[0028] Under these predefined codebook constraints, the optimal beam vector f * [ t ] is a codebook It can be uniquely identified within by its corresponding beam index. Time step t At, the optimal beam index b * [ t ] can be determined by the following.
[0029]
[0030] Here f b [ t ] Is t codebook from b [ t ] represents the beam vector. As such, it is noted that, under codebook constraints, determining the optimal beam is equivalent to identifying its corresponding optimal beam index.
[0031] In this regard, as illustrated in FIG. 1, the communication system (100) may further include a computing device (150) that performs GNSS-assisted beam management. For example, the computing device (150) may be included (e.g., implemented) in the BS (110). The BS (110) utilizes information regarding the position of the UAV (120) for beamforming, and the current time step t Prediction of the optimal beam at and at least one future time step (e.g., t +1, t +2, ..., tThe prediction of the optimal beam at +V (where V is an integer greater than or equal to 1, e.g., 3) can be performed in a unified manner (where future beam prediction may be referred to as beam tracing, whereas current beam prediction may be referred to simply as beam prediction in a narrow sense).
[0032] In FIG. 1, the computing device (150) processes GNSS-based measurements from the UAV (120) to obtain observations for the UAV (120). O [ t A data preprocessing pipeline (151) that is operated to generate ] and a width in time steps A sequence of such observations within a previous-to-current observation window (in particular, W is 2 or greater, e.g., 7). In response to receiving, a predetermined trained DL model (152) is provided to be operated to perform beam management tasks, such as integrated beam prediction and tracking, as such a sequence.
[0033] In a specific example, as illustrated in FIG. 2, the data preprocessing pipeline (151) may include a normalization stage (210), a coordinate transformation stage (220), a subtraction stage (230), a unit vector calculation stage (240), and a concatenation stage (250).
[0034] The normalization stage (210) is the GNSS-based measured latitude of the UAV (120) φ UE and longitude λ UE A vector representing a pair of (i.e., two-dimensional (2D) positions expressed in a geodesic frame) g UE [ t] can be received from the UAV (120), and this vector is processed to obtain the normalized latitude of the UAV (120) φ UE_norm and hardness λ UE_norm A vector representing a pair of g UE_norm [ t ] can be generated. For convenience, vector below g UE_norm [ t ]Is g [ t ]as, φ UE_norm Is φ Lo, and λ UE_norm Is λ It can be simply denoted as . For example, K Each time step among the time steps k ∈{1, 2, ..., K About} φ UE and λ UE As a pair of g UE,k = ( φ UE,k , λ UE,k If ) is given, the normalization stage (210) is the maximum value among K latitude values φ UE,max and minimum value φ UE,min Can identify, and the maximum value among K hardness values λ UE,max and minimum value λ UE,min It can identify. Then, the normalization stage (210) [identifies] each latitude value of the UAV (120) according to the following equation φ UE,k ☐ normalized latitude with values between 0 and 1 φ k Low, and each hardness value λ UE,k The normalized hardness of a value between 0 and 1 λ k Max-minimum normalization can be performed to transform it.
[0035]
[0036]
[0037] The coordinate transformation stage (220) is a vector g UE [ t The vertical distance between the BS (110) and the UAV (120) together with ] (this is, for example, with the altitude of the BS (110) set to 0, and the given altitude of the UAV (120) A A vector representing (can represent) H [ t ] can be received, and these vectors can be processed to obtain the three-dimensional (3D) coordinates of the UAV (120), e.g., position vectors expressed in an Earth-Centered Earth-Fixed (ECEF) frame r UE [ t ] can be generated. For example, the latitude, longitude, and altitude of the location of the UAV (120) are respectively φ , λ And given as A, the coordinate transformation stage (220) is the ECEF coordinates of the corresponding location according to the following. It is possible to perform a coordinate transformation that calculates.
[0038]
[0039]
[0040]
[0041] Here, R is as follows.
[0042]
[0043] Here a is the equatorial radius of the Earth ellipsoid (e.g., in the WGS-84 model a= 6378.137 km), and e is the eccentricity of the Earth's ellipsoid (e.g., e2 = 0.00669437999 in the WGS-84 model).
[0044] Additionally, the coordinate transformation stage (220) is a vector representing the latitude and longitude of the BS (110) (which can be measured, for example, by a GNSS receiver of the BS (120)). g BS [ t ] can be received from the BS (110), and this vector can be processed (e.g., with the altitude of the BS (110) set to 0) to obtain the 3D coordinates of the BS (110), e.g., a position vector expressed in an ECEF frame r BS [ t ] can be generated. For example, such a coordinate transformation is r UE [ t It can be performed in the same manner as described above regarding ].
[0045] Then, the subtraction stage (230) is a vector representing the displacement between the UAV (120) and the BS (110). r [ t ] can be calculated as follows.
[0046]
[0047] Afterwards, the unit vector calculation stage (240) is the displacement vector r [ t Size of ] | r [ t ]| can be calculated, and ultimately the unit vector of displacement between the UAV (120) and the BS (110). u [ t ](i.e., a vector representing the direction of the UAV (120) relative to the BS (110) and having a magnitude of 1) can be calculated as follows.
[0048]
[0049] The connecting stage (250) is a normalized position vectorg [ t ] and unit vector u [ t By combining ] observations for the UAV (120) O [ t ]={ g [ t ], u [ t ]}(in other words, g [ t ] and u [ t It can be generated as the concatenation of ) (here Igo lim).
[0050] Referring again to FIG. 1, in a particular example, the trained DL model (152) is a sequence of observations From, a sequence of predicted optimal beam indices at each time step within a current-to-future label window with a width of V+1 per time step. You can generate . Here (step, v ∈{0, 1, 2, ..., V}) is the time step t + v Regarding, the codebook Among the available beamforming vectors, it is an index representing the beamforming vector predicted to be optimal for mmWave communication between the BS (110) and the UAV (120), that is, a beam index predicted to be optimal. Such integrated beam prediction and tracking can be formulated as follows.
[0051]
[0052] Here represents conditional probability.
[0053] The optimal DL model (152) for solving the aforementioned beam prediction and tracking problem can be expressed as follows.
[0054]
[0055] Here is a mapping function of the optimal DL model (152) for beam prediction and tracking tasks, and refers to the training parameters of the DL model (152).
[0056] In a particular example, as illustrated in FIG. 3, the DL model (152) may include a Convolutional Neural Network (CNN)-based feature extraction block (310), a Recurrent Neural Network (RNN)-based encoder-decoder block (320), and a classifier (330). As an example, the DL model (152) may have an exemplary neural network architecture and parameters as shown in the following table.
[0057]
[0058] Here c i and c o are the input feature channel size and output feature channel size, respectively, and the kernel size k 1 , stride k 2 and padding size k 3 go ( k 1 , k 2 , k 3 It is displayed in the form of ). BN means that there is a Batch Normalization (BN) layer that normalizes the data distribution to have a mean of 0 and a variance of 1 to improve training convergence.
[0059] Specifically, the CNN-based feature extraction block (310) is a sequence O t,w observations within O [ t - W +1], ..., O [t It may include a first one-dimensional (1D) convolutional layer that provides a first feature signal in response to ], followed by a second 1D convolutional layer that provides a second feature signal in response to the first feature signal, followed by a BN layer that normalizes the second feature signal, and an activation layer that provides a feature representation by applying a Rectified Linear Unit (ReLU) function to the normalized second feature signal.
[0060] Additionally, the RNN-based encoder-decoder block (320) may include a GRU encoder (321) having W Gated Recurrent Units (GRUs) to provide context information in response to a feature representation, followed by a GRU decoder (322) having V+1 GRUs to provide a transformed feature representation corresponding to the feature representation in response to the context information.
[0061] Furthermore, the classifier (330) outputs a set of output values in response to the converted feature representation (which corresponds to a time step within a current or future label window). t + v Following a Fully Connected (FC) layer providing (including multiple output values for), M beam indices (i.e., codebook) at such a current or future time step It may include a softmax activation layer that provides a probability distribution of 1, 2, ..., and M, each representing available beamforming vectors within, wherein this probability distribution is for the corresponding time step t + vRegarding this, a plurality of probabilities corresponding to each of the plurality of output values provided from the FC layer (each of which is the probability that the corresponding one among the M beam indices is optimal for mmWave communication of the BS (110) and UAV (120), in other words, a codebook It represents the probability that among the available beamforming vectors within, the one optimal for mmWave communication of the BS (110) and UAV (120) will be indicated. Accordingly, the classifier (330) [is] a time step t + v The beam index with the highest probability for can be predicted as the optimal beam index, and ultimately the sequence of optimal beam indices It can provide. For example, the softmax activation layer of the classifier (330) may provide a score vector as the aforementioned probability distribution. You can create, here c m ∈(0, 1) is a specific beam in the codebook f m It corresponds to. Then, the classifier (330) determining the optimal beam index can be expressed as follows.
[0062]
[0063] The previously exemplified architecture of the communication system (100) can be similarly applied when mmWave communication (i.e., uplink transmission) is performed from the UAV (120) to the BS (110).
[0064] 학습 프로세스
[0065] Referring again to FIG. 1, the computing device (150) for GNSS-assisted beam prediction and tracking, a sequence of observations as previously mentioned Sequence of optimal beam indices based on The DL model (152) can be trained to have the ability to generate.
[0066] For example, the DL model (152) can be trained through offline supervised learning based on the following training data: (i) a sequence of observations for a UAV (e.g., UAV (120)) obtained at a time step within a previous or current observation window, and (ii) a sequence of labels representing optimal beam indices obtained at a time step within a current or future label window.
[0067] Each label is the optimal beam index b * It is given as a one-hot coded representation (i.e., a one-hot coded vector) of, and the DL model (152) is a score vector In the example providing, the computing device (150) can calculate a cross-entropy loss for use in training the DL model (152), which can be defined to represent the difference between the label and the predicted beam index across a current or future label window as follows.
[0068]
[0069] Here is the m-th element of the one-hot coded vector of the optimal beam index given as a label for time step j∈{0, 1, 2, ..., V}, and is the m-th element of the score vector provided for time step j. In other words, this loss is the sum of the dot product of the vector of log values of each element of the score vector for each of the (V+1) time steps within the current or future label window and the one-hot coded vector of the label for that time step. Training of the DL model (152) can be performed by adjusting the parameters of the DL model (152) based on the cross-entropy loss, for example, by fitting the DL model (152) in a way that minimizes the cross-entropy loss as much as possible.
[0070] For example, the training of the DL model (152) can be configured with the following hyperparameters: the number of epochs in the training process is set to 20, the size of the training batch is set to 8, the size of the validation batch is set to 32, and the size of the test batch is set to 1024, and the learning rate is 5×10 -4 The weights of the DL model (152) are updated with an Adam optimizer in which the weight decay of 0 is 0 and the reduction factor of the learning rate in the 10th and 15th epochs is 0.1.
[0071] The following is the raw data set (This includes multiple raw data samples, wherein these raw data samples are time-indexed, and each raw data sample includes its own observation and its own label for the UAV, wherein each observation represents, for example, the GNSS-based measured position of the UAV (120) and the orientation of the UAV (120) relative to the BS (110), and each label is, for example, a codebook How the computing device (150) provides a trained DL model (152) in the case where a raw data set is given one of M beam indices representing each of the available beamforming vectors within, and representing the actual optimal beam index corresponding to such observation. The processing and use of [it] is described in detail with reference to Fig. 4.
[0072] As illustrated in FIG. 4, an exemplary process (400) includes an operation (410) and an operation (420), wherein the computing device (150) in the operation (410) has a raw data set is the first raw data subset and divide into at least one other raw data subset (such division includes adjusting the total number of raw data samples within each raw data subset according to a given split ratio between these raw data subsets), and in operation (420), the first raw data subset The DL model (152) is trained using (such training is performed using the DL model (152), the first source data subset From the input sequence of observations included in the previous and current original data samples within, among a plurality of beam indices {1, 2, ..., M} for mmWave communication between BS (110) and UAV (e.g., UAV (120)), predicted (e.g., codebook Includes generating an output sequence of current and future beam indices (predicted to represent the optimal one among the available beamforming vectors within).
[0073] For discussion, the original dataset The following K Let us assume an exemplary scenario given that includes n original data samples: (Here, the original data set The inner k Original data sample (here k ∈{1, 2, ..., K} is a sequence index q k , sample index t k , geodetic coordinates of BS(110) ( φ BS,k , λ BS,k ), geodetic coordinates of the UAV (120) ( φ UE,k , λ UE,k ), vertical distance between BS (110) and UAV (120) H k , unit vector of displacement between BS (110) and UAV (120) u k and labels (i.e., actual optimal beam index) (including ). In this scenario, these raw data samples can be grouped into multiple distinct sequences, and the sequence index of each raw data sample indicates which of these sequences the sample belongs to. Raw data samples with the same sequence index can be ordered in time (i.e., time indexed) according to their respective sample indices.
[0074] Additionally, in such an exemplary scenario, the computing device (150) in operation (410) the original data set The aforementioned first source data subset In addition to the second source data subset and third source data subset It is divided into a total of 3 raw data subsets, which is , and The total number of original data samples within each , and Given division ratio between f train : f val : f test Includes adjusting according to, f train silver Total number of original data samples within | About | It is the ratio of the total number of original data samples within, and f val silver | About | It is the ratio of the total number of original data samples within, and f test silver | About | It is the ratio of the total number of original data samples within. This type of splitting can simply be called "adjusted splitting."
[0075] For example, in adjustable partitioning, the number of samples is controlled by a computing device (150). The original distribution of multiple M beam indices within P ( b )(This is Each of the multiple beam indices at b Representing the frequency of occurrence of ∈{1, 2, ..., M}, Calculating the label distribution (which can be referred to as the label distribution) and the calculated distribution P ( b According to ), original data subset , and It may include controlling the following label distributions specific to each: Distribution of multiple beam indices within P train ( b )(This is Indicates the frequency of occurrence of each of the multiple beam indices in); Multiple beam indices within P val ( b )(This is Indicates the frequency of occurrence of each of the multiple beam indices in); and Distribution of multiple beam indices within P test ( b )(This is (Indicating the frequency of occurrence of each of the multiple beam indices in ). In particular, to control the subset-specific label distribution, the computing device (150) may perform the following:
[0076] - Composition of each original data subset from the chunks of the original data set: Original label distribution within P ( b ) and , and The division ratio between them f train : f val : f test Based on, , and Each Configured to include separate groups of raw data samples collected from equally-sized chunks; and
[0077] - Refinement of each subset-specific label distribution: Collected raw data samples by beam index , and The division ratio between them f train : f val : f test Depending on , and By redistributing to the liver , and Refining the distribution specific to each subset.
[0078] FIG. 5 presents an exemplary algorithm for adjustable partitioning in the form of pseudocode (500).
[0079] Specifically, as shown in line 1 of the pseudocode (500), the function AdjustedSplit() is , f train , f val , f test and P chunks Receive as input , and It can output. P chunksis a set of several percentage values, each of which is a possible chunk size percentage of a chunk of the same size (this is when each chunk has a certain candidate chunk size It indicates how large the corresponding chunk is compared to. | is a variable within this function, as can be seen in line 2 of the pseudocode (500). N total It can be assigned to and used. Also, as shown in line 3 of the pseudocode (500), Label distribution from P ( b ) can be obtained. Furthermore, as shown in line 4 of the pseudocode (500), P chunks from (e.g., | | E P chunks A set of multiple candidate chunk sizes of the same size chunk (by multiplying each percentage value within) C sizes ...can be calculated. Then, as shown in line 5 of the pseudocode (500), C sizes Several candidate chunk sizes within can be filtered based on the minimum sequence length; for example, candidate chunk sizes smaller than the minimum sequence length C sizes It can be removed from.
[0080] Then, as can be seen in line 6 of the pseudocode (500), the temporary score value s best g is initialized with a value representing positive infinity. Also, as indicated in line 7 of the pseudocode (500), the first temporary set , 2nd temporary set and third temporary set Each is initialized as a null set.
[0081] Now, as described in lines 8 through 20 of the pseudocode (500), C sizes Each chunk size within c Regarding this, the following can be performed.
[0082] - As shown in line 9 of the pseudocode (500), , and Each is initialized as a null set.
[0083] - As shown in line 10 of the pseudocode (500), the original data set It is divided into several chunks of size c.
[0084] - As shown in lines 11 to 15 of the pseudocode (500), each of these chunks is a first sub-chunk , 2nd subchunk and 3rd subchunk It is divided into (this is , and The division ratio between them f train : f val : f test Depending on , and Includes adjusting the total number of original data samples within each), , and are each , and It accumulates as.
[0085] - As shown in line 16 of the pseudocode (500), , and Label distribution for each P train ( b ), P val ( b) and P test ( b ) is calculated.
[0086] - As shown in line 17 of the pseudocode (500), multiple beam indices b =over {1, 2, ..., M}, P ( b ) and P train ( b The difference between ) P ( b ) and P val ( b The difference between ) and P ( b ) and P test ( b Distribution dissimilarity score as the sum of differences between s is calculated.
[0087] - As shown in lines 18 to 20 of the pseudocode (500), s go s best In the case of lower, s best Is s Updated to be like, , and are each , and It consists of.
[0088] Each chunk size c After these operations are performed for, as can be seen in line 21 of the pseudocode (500), , and are each , and It consists of.
[0089] so, from the chunk of , and After each is configured, each beam index as described in lines 22 to 25 of the pseudocode (500). b For ∈{1, 2, ..., M}, the following can be performed.
[0090] - As shown in line 23 of the pseudocode (500), the beam index b A raw data sample containing as a label , and Obtained from, beam index b A label-based grouped dataset corresponding to is composed as a group of such raw data samples. That is, this group beam index from b A first label-based grouped portion identified as a group of raw data samples including, and beam index from b A second label-based grouped portion identified as a group of original data samples including, and beam index from b It includes a third label-based grouped portion identified as a group of original data samples including
[0091] - As shown in line 24 of the pseudocode (500), is the first label-based grouped data subset , second label-based grouped data subset and third label-based grouped data subset It is divided into (this is , and The division ratio between them f train : f val : f test Depending on , and (Including adjusting the total number of original data samples within each).
[0092] - As shown in line 25 of the pseudocode (500), newly obtained through label-based grouping and splitting , and As each original data subset , and ...is updated. That is, the aforementioned first label-based grouped part, second label-based grouped part, and third label-based grouped part , and By replacing it with , and is reconstructed.
[0093] In this way, after the label distribution for each original data subset has been refined, , and is returned.
[0094] In the aforementioned exemplary scenario, the computing device (150) , and When provided, these raw data subsets are organized into the training data set, validation data set, and test data set, respectively.
[0095] For example, the computing device (150) in operation (420) a training data set containing multiple training data samples D train It can be organized as, D train This can be provided to the DL model (152). Such organization can be done in a sequence-to-sequence manner, for example, Same sequence index within qAfter ordering the raw data samples having according to their respective sample indices, for each of these raw data samples D train This can be performed by generating corresponding training data samples within as pairs of input sequences and label sequences. The sample index within t = t k Regarding the personnel data sample D train The inner u When training data samples are generated, the generated training data samples are { , It can be expressed as}, where the input sequence is a sequence of observations for the UAV (120). (for example, W =7), O q,u [ t ]Is { φ UE,k , λ UE,k , u k} and, label sequence is a sequence of labels (i.e., the actual optimal beam index, which is the desired output) corresponding to the input sequence. is (for example, V =3). In other words, the input sequence is within a previous or current observation window extending backward in time from the corresponding original data sample (including this), A sequence of observations included in a source data sample (which may be referred to as the previous to current sequence below), and a label sequence within a current to future label window extending forward in time from the source data sample (including the one), It is a sequence of labels included in the original data sample within (which may be referred to as the current or future sequence below). Meanwhile, padding may be involved in the generation of the input sequence. For example, a fixed width of the previous or current observation window W If the total number of original data samples within this window is smaller than (expressed in units of the number of original data samples) and the leading original data sample does not exist intact within this window (e.g., less than 0 t About O q,u [ t (If ) does not exist), the leading observation in the input sequence may have a padded value (e.g., 0).
[0096] Then, the computing device (150) can use the DL model (152) in operation (420) (e.g., by operating the CNN-based feature extraction block (310), RNN-based encoder-decoder block (320), and classifier (330) exemplified in FIG. 3) to generate an output sequence of current and future beam indices predicted as optimal among a plurality of beam indices {1, 2, ..., M} for mmWave communication between the BS (110) and the UAV (120) from a previous to current sequence, and train the DL model (152) by adjusting the parameters of the DL model (152) based on the current to future sequence and the generated output sequence (e.g., by calculating the cross-entropy loss as described above with respect to FIG. 15 and accordingly). This training can be repeated for several epochs.
[0097] In addition, the computing device (150) a validation data set including multiple validation data samples D val It can be organized as a training data set D train Similar to the organization, it can be performed in a sequence-to-sequence manner. The computing device (150) can verify the DL model (152) using a verification data set at the completion of each selected epoch (e.g., all of these epochs) among the multiple epochs in which the training of the DL model (152) is repeated, and can adjust the hyperparameters of the DL model (152) based on the results of the verification.
[0098] Furthermore, the computing device (150) A test data set including multiple test data samples D test It can be organized as a training data set. D train Similar to the organization, it can be performed in a sequence-to-sequence manner. The computing device (150) can test the finally fitted DL model (152) using a test data set after the completion of all the aforementioned epochs, and if the results of the test are good, it can provide such trained DL model (152) for actual operation.
[0099] In an exemplary experiment, the original dataset from the DeepSense 6G Scenario 23 dataset Constructing, , and Liver division ratio 60% : 20% : 20% Depending on Performing moderate splitting on the training dataset D train , validation dataset D val and test data set D test Acquire, D train , D val and D test Training, validation, and testing of each DL model (152) were performed. In addition, for comparison with adjustable splitting, the same raw data set was sequentially split according to the same splitting ratio. D train , D val and D test Divide into (i.e., My first 60% of the samples D train As such, the following 20% of the samples are D val As, and the remaining 20% of the samples D test Consisting of), D train , D val and D test Training, validation, and testing of the DL model (152) were performed respectively. Test data set in each of the controlled split experiment and sequential split experiment. D test The following metric was calculated using:
[0100] - Top-K accuracy: This metric is D test Across the test data samples within, the number of time steps in which K beam indices predicted by the DL model (152) as the most likely optimal beam indices among M beam indices are the actual optimal beam indices (i.e., labels) is indicated, and can be expressed as follows.
[0101]
[0102] Here L silver D test It is the total number of test data samples within, and is my l As a current or future optimal beam index for test data samples kIt is the beam index predicted to have the highest probability in the ninth position, and is my l It is an actual current or future optimal beam index given as a label for a test data sample, and is a condition It is an indicator function that returns 1 if satisfied and 0 otherwise.
[0103] - Normalized Received Power: This metric represents the average power loss between the aforementioned predicted current or future optimal beam index and the actual current or future optimal beam index, and can be expressed as follows.
[0104]
[0105] Here represents noise power, is the beam power represented by the actual beam index, and is the power of the beam represented by the predicted beam index.
[0106] FIGS. 6 and 7 show the top-1 accuracy and average power loss at the current time step t and three future time steps t+1, t+2, and t+3, respectively. As can be seen in FIG. 6, the accuracy of the DL model (152) in the controlled split experiment is about 26% to 29% higher than that of the sequential split experiment. As can be seen in FIG. 7, the DL model (152) achieves a power loss reduction of about 59% to 72% in the controlled split experiment.
[0107] 다양한 예
[0108] The following are various examples related to GNSS-assisted DL-based beam prediction and tracking for UAV-enabled mmWave communication.
[0109] In Example 1, a method for providing a Deep Learning (DL) model for millimeter wave (mmWave) communication capable of an Unmanned Aerial Vehicle (UAV) comprises the steps of: dividing a raw data set into a first raw data subset and at least one other raw data subset; and training the DL model using the first raw data subset, wherein the raw data set comprises a plurality of time-indexed raw data samples, and each of the plurality of raw data samples comprises a respective observation and a respective label for a UAV that communicates with a base station (BS) in mmWave, wherein each observation represents the GNSS-based measured location of the UAV and the orientation of the UAV relative to the BS, and each label represents a plurality of beam indices, each representing an available beamforming vector within a codebook used for mmWave communication with the UAV. One, and the above splitting includes adjusting the total number of raw data samples in each of the above first raw data subset and the above at least one raw data subset according to a given splitting ratio between the above first raw data subset and the above at least one raw data subset, and the above training of the above DL model includes using the above DL model to generate an output sequence of predicted current and future beam indices among the above plurality of beam indices for mmWave communication between the above UAV and the above BS from an input sequence of observations included in previous and current raw data samples in the above first raw data subset.
[0110] Example 2 includes the subject of Example 1, wherein each of the above observations represents the GNSS-based measured position as a concatenation of the normalized latitude and longitude values of the above UAV, each between 0 and 1, and each of the above observations represents the direction as a unit vector of displacement between the above UAV and the above BS, calculated from the three-dimensional (3D) coordinates of the above UAV and the three-dimensional coordinates of the above BS.
[0111] Example 3 includes the subject of Example 1 or Example 2, wherein the above training of the above DL comprises organizing the above first raw data subset into a training data set comprising a plurality of training data samples (each of the above plurality of training data samples comprises a corresponding raw data sample within the above first raw data subset, comprising a previous-to-current sequence of observations contained in the raw data sample within the above first raw data subset, which is within a previous-to-current observation window extending backward in time from the corresponding raw data sample, and a current-to-future sequence of labels contained in the raw data sample within the above first raw data subset, which is within a current-to-future label window extending forward in time from the corresponding raw data sample), and further comprises providing the above previous-to-current sequence within each of the above training data samples as an input sequence, together with the above current-to-future sequence, to the above DL model.
[0112] Example 4 includes the subject of Example 3, wherein the generation of the output sequence above comprises calculating a sequence of current and future probability distributions of the plurality of beam indices from the previous to current sequence within each of the training data samples above, and generating a corresponding current and future beam index among the output sequence above from each of the current and future probability distributions within the calculated sequence above, wherein each of the probability distributions represents a plurality of probabilities for a corresponding current or future time step, and each of the plurality of probabilities is a probability that the corresponding beam index among the plurality of beam indices is optimal for mmWave communication between the UAV and the BS, and the training of the DL model above further comprises calculating a loss based on the corresponding of the labels within the current to future sequence within each of the calculated sequences above and the calculated loss, and fitting the DL model by adjusting the parameters of the DL model based on the calculated loss.
[0113] Example 5 includes the subject of Example 4, where the above loss is calculated as the sum of the inner products of the vector of the respective log values of the above multiple probabilities represented by each of the above probability distributions in the above calculated sequence and the one-hot coded vector of the corresponding one-hot label in the above current to future sequences in each of the above training data samples.
[0114] Example 6 includes the subject of Example 4 or Example 5, wherein the above DL model comprises a Convolutional Neural Network (CNN)-based feature extraction block comprising an activation layer following a first one-dimensional (1D) convolutional layer, followed by a second 1D convolutional layer, followed by a Batch Normalization (BN) layer, a Recurrent Neural Network (RNN)-based encoder-decoder block comprising a Gated Recurrent Unit (GRU) encoder, followed by a GRU decoder, and a classifier comprising a softmax activation layer following a Fully Connected (FC) layer, wherein the above first 1D convolutional layer provides a first feature signal in response to the above observation in the above previous to current sequence within each of the above training data samples, and the above second 1D convolutional layer provides a second feature signal in response to the above first feature signal, and above The BN layer normalizes the second feature signal above, the activation layer above applies a Rectified Linear Unit (ReLU) function to the normalized second feature signal above to provide a feature representation, the GRU encoder above provides context information in response to the feature representation above, the GRU decoder above provides a transformed feature representation corresponding to the feature representation above in response to the context information above, the FC layer above provides a set of output values in response to the transformed feature representation above, wherein the set of output values above includes multiple output values for the corresponding current or future time step above, and the softmax activation layer above provides each of the above probability distributions in response to the set of output values above, wherein each of the above probabilities corresponds to each of the above multiple output values.
[0115] Example 7 includes the subject of any of Examples 3 through 6, wherein the above previous to current observation window has a fixed width in units of the number of original data samples, and if the total number of original data samples within the above previous to current observation window is less than the above fixed width, the above observation within the above previous to current sequence further includes a leading padded value.
[0116] Example 8 includes the subject of any of Examples 3 through 7, wherein the above multiple original data samples are grouped into multiple separate sequences, and the above first original data subset is organized into the above training data set in a sequence-to-sequence manner, such that each original data sample within the above first original data subset, belonging to the same of the above multiple separate sequences, is set as the corresponding original data sample.
[0117] Example 9 includes the subject of any of Examples 3 through 8, wherein at least one other source data subset comprises a second source data subset and a third source data subset, and the adjustment of the total number of source data samples in each of the source data subsets comprises adjusting the subset-specific distribution of the plurality of beam indices in each of the first source data subset, the second source data subset, and the third source data subset according to the original distribution of the plurality of beam indices in the source data set.
[0118] Example 10 includes the subject of Example 9, further comprising the step of organizing the above second source data subset and the above third source data subset into a verification data set comprising a plurality of verification data samples and a test data set comprising a plurality of test data samples, respectively, wherein each of the above plurality of verification data samples comprises a corresponding source data sample within the above second source data subset and a previous to current sequence of observations contained in the source data sample within the above second source data subset, which is within a previous to current observation window extending backward in time from the corresponding source data sample within the above second source data subset, and a current to future sequence of labels contained in the source data sample within the above second source data subset, which is within a current to future label window extending forward in time from the corresponding source data sample within the above second source data subset, and each of the above plurality of test data samples comprises a corresponding source data sample within the above third source data subset and is within a previous to current observation window extending backward in time from the corresponding source data sample within the above third source data subset, the above third source It includes a previous to current sequence of observations contained in a source data sample within a data subset, and a current to future sequence of labels contained in a source data sample within the third source data subset, which includes the corresponding source data sample within the third source data subset and is within a current to future label window extending forward in time from the corresponding source data sample within the third source data subset.
[0119] Example 11 includes the subject of Example 9 or Example 10, wherein the above training of the above DL model is repeated for multiple epochs, and the above training of the above DL model further includes fitting the above DL model by adjusting the parameters of the above DL model, and the above method further includes the step of using the above validation dataset to adjust the hyperparameters of the above DL model upon completion of each of the selected above multiple epochs, and the step of using the above test dataset to evaluate the finally fitted above DL model after the completion of all of the above multiple epochs.
[0120] Example 12 includes the subject of any of Examples 9 through 11, wherein the above adjustment of the above subset-specific distribution comprises configuring each of the above first original data subset, above second original data subset, and above third original data subset to include their respective distinct groups of original data samples collected from equally-sized chunks of the above original data set, based on the above given split ratio and the above original distribution, and refining the above subset-specific distribution by redistributing the above collected original data samples among the above first original data subset, above second original data subset, and above third original data subset according to the above given split ratio by beam index.
[0121] Example 13 includes the subject of any of Examples 9 through 11, wherein the above adjustment of the above subset-specific distribution comprises, for each of the above chunk sizes in units of the number of original data samples, and with the temporary score values initialized, dividing the above original data set into a plurality of chunks having each of the above chunk sizes, and dividing each of the above plurality of chunks into a first sub-chunk, a second sub-chunk, and a third sub-chunk (the above division of each of the above chunks includes adjusting the total number of original data samples within each of the above first sub-chunk, the above second sub-chunk, and the above third sub-chunk according to the above given division ratio), and accumulating the above first sub-chunk, the above second sub-chunk, and the above third sub-chunk of each of the above chunks into a first temporary original data subset, a second temporary original data subset, and a third temporary original data subset, respectively, and the frequency of occurrence of each of the above plurality of beam indices in the above original data set and the above first temporary original data subset, the above second temporary original data subset and the above It includes calculating a distribution dissimilarity score as the sum of the differences between the occurrence frequencies of each beam index above in each of the third temporary original data subsets, and if the distribution dissimilarity score is lower than the temporary score value above, updating the temporary score value above to be equal to the distribution dissimilarity score above, and configuring the first original data subset above, the second original data subset above, and the third original data subset above as the first temporary original data subset above, the second temporary original data subset above, and the third temporary original data subset above, respectively.
[0122] Example 14 includes the subject of Example 13, wherein the above adjustment of the above subset-specific distribution comprises, for each of the above plurality of beam indices, configuring the corresponding label-based grouped dataset as a group of raw data samples containing each of the above beam indices (the above group comprises a first label-based grouped portion identified as a group of raw data samples containing each of the above beam indices from the above first raw data subset, a second label-based grouped portion identified as a group of raw data samples containing each of the above beam indices from the above second raw data subset, and a third label-based grouped portion identified as a group of raw data samples containing each of the above beam indices from the above third raw data subset), and partitioning the above corresponding label-based grouped dataset into a first label-based grouped data subset, a second label-based grouped data subset, and a third label-based grouped data subset (the above partitioning of the above corresponding label-based grouped dataset comprises the above first label-based grouped data subset, the above second label-based (including adjusting the total number of original data samples within each of the grouped data subset and the third label-based grouped data subset) and further including reconstructing the first original data subset, the second original data subset, and the third original data subset by replacing the first label-based grouped portion, the second label-based grouped portion, and the third label-based grouped portion with the first label-based grouped data subset, the second label-based grouped data subset, and the third label-based grouped data subset, respectively.
[0123] Example 15 includes the subject of any of Examples 1 through 14, wherein the method further comprises the steps of calculating the previous and current BS to UAV directions from the previous and current UAV positions, respectively, measured based on GNSS, and running the trained DL model to determine which of the available beamforming vectors to use in current and future BS to UAV or UAV to BS mmWave transmissions based on the GNSS-measured previous and current UAV positions and the previous and current BS to UAV directions.
[0124] In Example 16, an apparatus for providing a Deep Learning (DL) model for Unmanned Aerial Vehicle (UAV) capable millimeter wave (mmWave) communication comprises a processor and a computer-readable storage medium storing instructions that cause the processor to perform an operation when executed by the processor, wherein the operation comprises dividing a raw data set into a first raw data subset and at least one other raw data subset, and training the DL model with the first raw data subset, wherein the raw data set comprises a plurality of time-indexed raw data samples, and each of the plurality of raw data samples comprises a respective observation and a respective label for a UAV that communicates with a base station (BS) in mmWave, wherein each respective observation represents the GNSS-based measured location of the UAV and the orientation of the UAV relative to the BS, and each respective label represents the orientation of the UAV relative to the BS It is one of a plurality of beam indices each representing an available beamforming vector within a codebook used for mmWave communication, and the above splitting includes adjusting the total number of raw data samples in each of the above first raw data subset and the above at least one raw data subset according to a given splitting ratio between the above first raw data subset and the above at least one raw data subset, and the above training of the above DL model is performed using the above DL model from an input sequence of observations included in previous and current raw data samples in the above first raw data subset,It includes generating an output sequence of predicted current and future beam indices among the plurality of beam indices for mmWave communication between the above UAV and the above BS.
[0125] Example 17 includes the subject of Example 16, wherein each of the above observations represents the GNSS-based measured position as a concatenation of the normalized latitude and longitude values of the above UAV, each between 0 and 1, and each of the above observations represents the direction as a unit vector of displacement between the above UAV and the above BS, calculated from the three-dimensional (3D) coordinates of the above UAV and the three-dimensional coordinates of the above BS.
[0126] Example 18 includes the subject of Example 16 or Example 17, wherein the above training of the above DL comprises organizing the above first raw data subset into a training data set comprising a plurality of training data samples (each of the above plurality of training data samples comprises a corresponding raw data sample in the above first raw data subset, comprising a previous-to-current sequence of observations contained in the raw data sample in the above first raw data subset, which is within a previous-to-current observation window extending backward in time from the corresponding raw data sample, and a current-to-future sequence of labels contained in the raw data sample in the above first raw data subset, which is within a current-to-future label window extending forward in time from the corresponding raw data sample), and further comprises providing the above previous-to-current sequence in each of the above training data samples as an input sequence, together with the above current-to-future sequence, to the above DL model.
[0127] Example 19 includes the subject of Example 18, wherein the generation of the above output sequence is to calculate the sequence of current and future probability distributions of the above multiple beam indices from the above previous to current sequences within each of the above training data samples, and
[0128] The method comprises generating corresponding current and future beam indices in the output sequence from each of the current and future probability distributions in the calculated sequence, wherein each of the probability distributions represents multiple probabilities for a corresponding current or future time step, and each of the multiple probabilities is a probability that the corresponding beam indices among the multiple beam indices are optimal for mmWave communication between the UAV and the BS, and the training of the DL model further comprises calculating a loss based on each of the probability distributions in the calculated sequence and corresponding labels in the current to future sequences within each training data sample, and fitting the DL model by adjusting the parameters of the DL model based on the calculated loss.
[0129] Example 20 includes the subject of Example 19, where the loss is calculated as the sum of the inner products of a vector of the respective log values of the multiple probabilities represented by each probability distribution in the calculated sequence and a one-hot coded vector of the corresponding one-hot coded vector among the current or future sequences in each training data sample.
[0130] Example 21 includes the subject of Example 10, wherein the above DL model comprises a Convolutional Neural Network (CNN)-based feature extraction block including an activation layer following a first one-dimensional (1D) convolutional layer, followed by a second 1D convolutional layer, followed by a Batch Normalization (BN) layer, a Recurrent Neural Network (RNN)-based encoder-decoder block including a Gated Recurrent Unit (GRU) encoder, followed by a GRU decoder, and a classifier including a softmax activation layer following a Fully Connected (FC) layer, wherein the above first 1D convolutional layer provides a first feature signal in response to the above observation in the above previous to current sequence within each of the above training data samples, the above second 1D convolutional layer provides a second feature signal in response to the above first feature signal, and the above BN The layer normalizes the second feature signal above, and the activation layer above applies a Rectified Linear Unit (ReLU) function to the normalized second feature signal above to provide a feature representation, the GRU encoder above provides context information in response to the feature representation above, the GRU decoder above provides a transformed feature representation corresponding to the feature representation above in response to the context information above, and the FC layer above provides a set of output values in response to the transformed feature representation above, wherein the set of output values above includes multiple output values for the corresponding current or future time step above, and the softmax activation layer above provides each of the above probability distributions in response to the set of output values above, wherein each of the above probabilities corresponds to each of the above multiple output values.
[0131] Example 22 includes the subject of any of Examples 18 through 21, wherein the above previous to current observation window has a fixed width in units of the number of original data samples, and if the total number of original data samples within the above previous to current observation window is less than the above fixed width, the above observation in the above previous to current sequence further includes a leading padded value.
[0132] Example 23 includes the subject of any of Examples 18 through 22, wherein the above multiple original data samples are grouped into multiple separate sequences, and the above first original data subset is organized into the above training data set in a sequence-to-sequence manner, such that each original data sample within the above first original data subset, belonging to the same of the above multiple separate sequences, is set as the corresponding original data sample.
[0133] Example 24 includes the subject of any of Examples 18 through 23, wherein at least one other source data subset comprises a second source data subset and a third source data subset, and the adjustment of the total number of source data samples in each of the source data subsets comprises adjusting the subset-specific distribution of the plurality of beam indices in each of the first source data subset, the second source data subset, and the third source data subset according to the original distribution of the plurality of beam indices in the source data set.
[0134] Example 25 includes the subject of Example 24, wherein the operation further comprises organizing the above second source data subset and the above third source data subset into a verification data set comprising a plurality of verification data samples and a test data set comprising a plurality of test data samples, respectively, wherein each of the plurality of verification data samples comprises a corresponding source data sample within the above second source data subset and a previous to current sequence of observations contained in the source data sample within the above second source data subset, which is within a previous to current observation window extending backward in time from the corresponding source data sample within the above second source data subset, and a current to future sequence of labels contained in the source data sample within the above second source data subset, which is within a current to future label window extending forward in time from the corresponding source data sample within the above second source data subset, and each of the above multiple test data samples comprises a corresponding source data sample within the above third source data subset and within a previous to current observation window extending backward in time from the corresponding source data sample within the above third source data subset It includes a previous to current sequence of observations contained in a source data sample within the third source data subset, and a current to future sequence of labels contained in a source data sample within the third source data subset, which includes the corresponding source data sample within the third source data subset and is within a current to future label window extending forward in time from the corresponding source data sample within the third source data subset.
[0135] Example 26 includes the subject of Example 24 or Example 25, wherein the above training of the above DL model is repeated for multiple epochs, and the above training of the above DL model further includes fitting the above DL model by adjusting the parameters of the above DL model, and the above operation further includes using the above validation dataset to adjust the hyperparameters of the above DL model upon completion of each selected of the above multiple epochs, and using the above test dataset to evaluate the finally fitted above DL model after completion of all of the above multiple epochs.
[0136] Example 27 includes the subject of any of Examples 24 through 26, wherein the above adjustment of the above subset-specific distribution comprises configuring each of the above first original data subset, above second original data subset, and above third original data subset to include their respective distinct groups of original data samples collected from equally-sized chunks of the above original data set, based on the above given split ratio and the above original distribution, and refining the above subset-specific distribution by redistributing the above collected original data samples among the above first original data subset, above second original data subset, and above third original data subset according to the above given split ratio by beam index.
[0137] Example 28 includes the subject of any of Examples 24 through 26, wherein the above adjustment of the above subset-specific distribution comprises, for each of the above chunk sizes in units of the number of original data samples, and with the temporary score values initialized, dividing the above original data set into a plurality of chunks having each of the above chunk sizes, and dividing each of the above plurality of chunks into a first sub-chunk, a second sub-chunk, and a third sub-chunk (the above division of each of the above chunks includes adjusting the total number of original data samples in each of the above first sub-chunk, the above second sub-chunk, and the above third sub-chunk according to the above given division ratio), and accumulating the above first sub-chunk, the above second sub-chunk, and the above third sub-chunk of each of the above chunks into a first temporary original data subset, a second temporary original data subset, and a third temporary original data subset, respectively, and the frequency of occurrence of each of the above plurality of beam indices in the above original data set and the above first temporary original data subset, the above second temporary original data subset and It includes calculating a distribution dissimilarity score as the sum of the differences between the occurrence frequencies of each beam index in each of the above third temporary original data subsets, and if the above distribution dissimilarity score is lower than the above temporary score value, updating the above temporary score value to be equal to the above distribution dissimilarity score, and configuring the above first original data subset, above second original data subset, and above third original data subset as the above first temporary original data subset, above second temporary original data subset, and above third temporary original data subset, respectively.
[0138] Example 29 includes the subject of Example 28, wherein the above adjustment of the above subset-specific distribution comprises, for each of the above plurality of beam indices, configuring the corresponding label-based grouped dataset as a group of raw data samples containing each of the above beam indices (the above group comprises a first label-based grouped portion identified as a group of raw data samples containing each of the above beam indices from the above first raw data subset, a second label-based grouped portion identified as a group of raw data samples containing each of the above beam indices from the above second raw data subset, and a third label-based grouped portion identified as a group of raw data samples containing each of the above beam indices from the above third raw data subset), and partitioning the above corresponding label-based grouped dataset into a first label-based grouped data subset, a second label-based grouped data subset, and a third label-based grouped data subset (the above partitioning of the above corresponding label-based grouped dataset comprises the above first label-based grouped data subset, the above second label-based (including adjusting the total number of original data samples within each of the grouped data subset and the third label-based grouped data subset) and further including reconstructing the first original data subset, the second original data subset, and the third original data subset by replacing the first label-based grouped portion, the second label-based grouped portion, and the third label-based grouped portion with the first label-based grouped data subset, the second label-based grouped data subset, and the third label-based grouped data subset, respectively.
[0139] Example 30 includes the subject of any of Examples 16 through 29, the above operations further include calculating the previous and current BS to UAV directions from the previous and current UAV positions, respectively, based on GNSS-based measured previous and current UAV positions, and running the above trained DL model to determine which of the above available beamforming vectors to use in current and future BS to UAV or UAV to BS mmWave transmissions based on the above GNSS-based measured previous and current UAV positions and the above previous and current BS to UAV directions.
[0140] In Example 31, a computer-readable storage medium is provided that stores computer-executable instructions that, when executed by a computer processor, cause the computer processor to perform the method described in any of Examples 1 through 15.
[0141] In Example 32, a UAV-enabled mmWave communication network element is provided, comprising a device described in any of Examples 16 to 30.
[0142] In specific examples, any suitable type of device, device, system, machine, etc. mentioned in this document may be a computing device, include, or be implemented therein. A computing device may include a processor and a computer-readable storage medium readable by the processor. The processor may execute one or more instructions stored within the computer-readable storage medium. The processor may also read other information stored within the computer-readable storage medium. Additionally, the processor may store new information within the computer-readable storage medium and update any information stored within the computer-readable storage medium. The processor may include, for example, a Central Processing Unit (CPU), a Digital Signal Processor (DSP), a Graphics Processing Unit (GPU), a processor core, a microprocessor, a microcontroller, a Field-Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), other hardware and logic circuits, or any suitable combination thereof. A computer-readable storage medium is encoded with various information, such as a set of processor-executable instructions that can be executed by a processor and / or other information. For example, a computer-readable storage medium may store internal computer program instructions that, when executed by a processor, cause a computing device (e.g., a processor) to perform some of the operations disclosed in this document, and / or information, data, variables, constants, data structures, etc. used in such operations.Computer-readable storage media may include, for example, read-only memory (ROM), random-access memory (RAM), volatile memory, non-volatile memory, removable memory, non-removable memory, flash memory, solid-state memory, other types of memory devices, magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, other types of storage devices and storage media, or any suitable combination thereof.
[0143] In specific examples, the operations, techniques, processes, or any aspects or parts thereof described in this document may be embodied in a computer program product. Such a computer program may be implemented in any type of programming language (e.g., compiled or interpreted) that can be executed by a computer, such as assembly, machine language, procedural language, object-oriented language, etc., and may be combined with a hardware implementation. The computer program product may be distributed in the form of a computer-readable storage medium or distributed online. For online distribution, part or all of the computer program product may be temporarily stored or temporarily created on a server (e.g., a computer-readable storage medium on the server).
[0144] The foregoing description is provided to illustrate and describe several examples in detail. Those skilled in the art will understand that many modifications and variations are possible in light of the foregoing teachings without departing from the scope of this disclosure. In various examples, suitable results may be achieved even if the foregoing techniques are performed in a different order and / or some of the components of the foregoing systems, architectures, devices, circuits and similars are combined or assembled in a different way, or replaced or substituted by other components or equivalents thereof.
[0145] Therefore, the scope of the present disclosure should not be limited to the disclosed forms, but should be determined by the claims and equivalents set forth below. Explanation of the symbols
[0146] 100: System for UAV-enabled mmWave communication 110: BS 120: UAV 150: Computing device 151: Data Preprocessing Pipeline 152: DL Model
Claims
Claim 1 A method for providing a Deep Learning (DL) model for millimeter wave (mmWave) communication capable of an Unmanned Aerial Vehicle (UAV), comprising the steps of: dividing a raw data set into a first raw data subset and at least one other raw data subset; and training the DL model with the first raw data subset, wherein the raw data set comprises a plurality of time-indexed raw data samples, and each of the plurality of raw data samples comprises a respective observation and a respective label for a UAV that communicates with a base station (BS) in mmWave, wherein the respective observation represents the GNSS-based measured location of the UAV and the orientation of the UAV relative to the BS, and the respective label is one of a plurality of beam indices each representing an available beamforming vector within a codebook used for the mmWave communication with the UAV, and wherein the dividing A method comprising adjusting the total number of raw data samples within each of the first raw data subset and the at least one raw data subset according to a given split ratio between the first raw data subset and the at least one raw data subset, and the training of the DL model comprises using the DL model to generate an output sequence of predicted current and future beam indices among the plurality of beam indices for the mmWave communication between the UAV and the BS from an input sequence of observations included in the previous and current raw data samples within the first raw data subset. Claim 2 The method of claim 1, wherein the training of the DL comprises organizing the first raw data subset into a training data set including a plurality of training data samples—each of the plurality of training data samples including a corresponding raw data sample in the first raw data subset, including a previous-to-current sequence of observations included in the raw data sample in the first raw data subset within a previous-to-current observation window extending backward in time from the corresponding raw data sample, and a current-to-future sequence of labels included in the raw data sample in the first raw data subset within a current-to-future label window extending forward in time from the corresponding raw data sample—and further comprising providing the previous-to-current sequence in each of the training data samples as an input sequence, together with the current-to-future sequence. Claim 3 In claim 2, the DL model comprises a Convolutional Neural Network (CNN)-based feature extraction block that generates a feature representation from an observation in the previous to current sequence within each of the training data samples, a Recurrent Neural Network (RNN)-based encoder-decoder block that generates context information from the feature representation and generates a transformed feature representation corresponding to the feature representation using the context information, and a classifier that generates the output sequence from the transformed feature representation. Claim 4 A method according to paragraph 2, wherein the at least one other original data subset comprises a second original data subset and a third original data subset, and the adjustment of the total number of original data samples within each of the original data subsets comprises adjusting the subset-specific distribution of the plurality of beam indices within each of the first original data subset, the second original data subset, and the third original data subset according to the original distribution of the plurality of beam indices within the original data set. Claim 5 A method according to claim 4, wherein the adjustment of the subset-specific distribution comprises configuring each of the first original data subset, the second original data subset, and the third original data subset to include their respective distinct groups of original data samples collected from equally-sized chunks of the original data set, based on the given split ratio and the original distribution, and refining the subset-specific distribution by redistributing the collected original data samples among the first original data subset, the second original data subset, and the third original data subset according to the given split ratio by beam index. Claim 6 An apparatus for providing a Deep Learning (DL) model for millimeter wave (mmWave) communication capable of Unmanned Aerial Vehicles (UAVs), comprising a processor and a computer-readable storage medium storing instructions that cause the processor to perform an operation when executed by the processor, wherein the operation comprises dividing a raw data set into a first raw data subset and at least one other raw data subset, and training the DL model with the first raw data subset, wherein the raw data set comprises a plurality of time-indexed raw data samples, and each of the plurality of raw data samples comprises an observation and a label for a UAV that communicates with a base station (BS) in mmWave, wherein the observation represents the GNSS-based measured location of the UAV and the orientation of the UAV relative to the BS, and the label represents the mmWave with respect to the UAV One of a plurality of beam indices each representing an available beamforming vector within a codebook used for communication, and the splitting comprises adjusting the total number of raw data samples in each of the first raw data subset and the at least one raw data subset according to a given splitting ratio between the first raw data subset and the at least one raw data subset, and the training of the DL model is performed using the DL model from an input sequence of observations included in previous and current raw data samples within the first raw data subset,A device comprising generating an output sequence of predicted current and future beam indices among a plurality of beam indices for mmWave communication between the UAV and the BS. Claim 7 In claim 6, the training of the DL comprises organizing the first raw data subset into a training data set including a plurality of training data samples—each of the plurality of training data samples including a corresponding raw data sample in the first raw data subset, including a previous-to-current sequence of observations included in the raw data sample in the first raw data subset within a previous-to-current observation window extending backward in time from the corresponding raw data sample, and a current-to-future sequence of labels included in the raw data sample in the first raw data subset within a current-to-future label window extending forward in time from the corresponding raw data sample—and further comprising providing the previous-to-current sequence in each of the training data samples as an input sequence, together with the current-to-future sequence, to the DL model. Claim 8 In claim 7, the device comprises a DL model including a Convolutional Neural Network (CNN)-based feature extraction block that generates a feature representation from an observation in the previous to current sequence within each of the training data samples, a Recurrent Neural Network (RNN)-based encoder-decoder block that generates context information from the feature representation and generates a transformed feature representation corresponding to the feature representation using the context information, and a classifier that generates the output sequence from the transformed feature representation. Claim 9 In claim 7, the apparatus comprises, wherein the at least one other original data subset includes a second original data subset and a third original data subset, and the adjustment of the total number of original data samples within each of the original data subsets includes adjusting the subset-specific distribution of the plurality of beam indices within each of the first original data subset, the second original data subset and the third original data subset according to the original distribution of the plurality of beam indices within the original data set. Claim 10 In claim 9, the apparatus comprises, wherein the at least one other original data subset includes a second original data subset and a third original data subset, and the adjustment of the total number of original data samples within each of the original data subsets includes adjusting the subset-specific distribution of the plurality of beam indices within each of the first original data subset, the second original data subset and the third original data subset according to the original distribution of the plurality of beam indices within the original data set. Claim 11 A computer-readable storage medium storing computer-executable instructions that, when executed by a computer processor, cause the computer processor to perform the method described in any one of claims 1 to 5.
