Network node, node execution method, network node and node
By generating future scheduling information through the conditional generative adversarial network (C-GAN), the problem of traditional schedulers needing to schedule in each time slot is solved, the efficiency and coverage of the wireless communication system are improved, and energy consumption and signaling overhead are reduced.
Patent Information
- Application Number
- CN202410869612.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-04-29
- Filing Date
- 2024-06-28
- Publication Date
- 2025-09-30
AI Technical Summary
Traditional schedulers can only determine user scheduling in upcoming time slots, resulting in the need for a scheduling algorithm on the base station side for each time slot, which affects user equipment performance and increases energy consumption and signaling overhead.
A conditional generative adversarial network (C-GAN) is used to generate scheduling information for a period of time in the future. Through the scheduling module composed of a classifier, a generator, and a scheduler, scheduling information for multiple users in the future is generated, and resources are allocated according to channel status and user needs.
The efficiency and coverage of the wireless interface are improved, the energy consumption of the base station and user equipment is reduced, and the signaling overhead is lowered.
Smart Images

Figure CN120730484A_ABST
Abstract
Description
Technical Field
[0001] The present application generally relates to the field of wireless communications, and more particularly to a network node, a method executed by a node, and a network node and a node. Background Art
[0002] To meet the increased demand for wireless data communication services since the deployment of 4G communication systems, efforts have been made to develop improved 5G or quasi-5G communication systems. Therefore, 5G or quasi-5G communication systems are also referred to as "beyond 4G networks" or "post-LTE systems."
[0003] Wireless communication is one of the most successful innovations in modern history. The number of wireless communication service subscribers recently surpassed 5 billion and continues to grow rapidly. Demand for wireless data services is rapidly increasing due to the growing popularity of smartphones and other mobile data devices (e.g., tablets, laptops, netbooks, e-book readers, and machine-type devices) among consumers and businesses. Improving radio interface efficiency and coverage is crucial to meeting this rapid growth and supporting new applications and deployments.
[0004] In mobile networks, schedulers play a crucial role in meeting the service needs of diverse users. Traditional schedulers can only determine the scheduling of users in upcoming time slots. Consequently, the base station must perform scheduling algorithms for each time slot, impacting user equipment performance. Summary of the Invention
[0005] The embodiments of the present disclosure provide a network node, a method for node execution, a network node, and a node. The technical solutions provided by the embodiments of the present disclosure are as follows:
[0006] An embodiment of the present disclosure provides a method performed by a first network node in a wireless communication system, including:
[0007] Sending a first configuration message for configuring a scheduling window and / or energy-saving related information of the first node to the first node;
[0008] generating scheduling information of at least one first node within at least one time unit based on a scheduling module trained by a generative network;
[0009] Sending a first indication message to the first node for instructing the first node to monitor a downlink signal;
[0010] The scheduling information is obtained based on a matrix or an image generated by the scheduling module.
[0011] According to an embodiment of the present disclosure, the scheduling module obtained by generative network training includes a classifier, at least one generator and a scheduler; and
[0012] The classifier is used to generate different types of indication information about the input data;
[0013] The generator generates the scheduling information according to the different types of indication information generated by the classifier;
[0014] The scheduler schedules data transmission of the first node according to the scheduling information.
[0015] According to an embodiment of the present disclosure, for the one time slot of the first node, the scheduling information further includes at least one of the following information: bit number information, resource allocation information, and indication information of the type of transmission service.
[0016] According to an embodiment of the present disclosure, the first configuration message includes at least one of the following information: configuration information of the scheduling window, and energy-saving configuration information;
[0017] The configuration information of the scheduling window includes at least one of first starting offset information, first length information, first period information and first effective time information.
[0018] According to an embodiment of the present disclosure, the first indication message includes at least one of the following information: sleep indication information and sleep time information.
[0019] According to an embodiment of the present disclosure, the input data of the classifier includes at least one of the following information: information related to the amount of buffered data, information related to the amount of arrived data, information related to the amount of transmitted data, information related to channel quality, information related to physical resources (such as resource blocks), information related to the location of the user, and fingerprint information of the wireless environment;
[0020] The output data of the classifier is the different types of indication information, including at least one of the following information: a numerical value of a category, a vector of a category, a sequence of a category, and a token of a category.
[0021] According to an embodiment of the present disclosure, the classifier may further include a predictor for predicting information related to the next scheduling window; and
[0022] The output of the predictor is used by a classifier to generate the output data.
[0023] According to an embodiment of the present disclosure, the at least one generator is selected according to output data of the classifier to generate the scheduling information.
[0024] According to an embodiment of the present disclosure, the classifier may further generate first classification information and second classification information; and
[0025] The first classification information is used by a first generator among the at least one generator to generate the scheduling information, and the second classification information is used by a second generator among the at least one generator to generate the scheduling information.
[0026] According to an embodiment of the present disclosure, the at least one generator is trained based on a conditional adversarial generative network.
[0027] An embodiment of the present disclosure further provides a method performed by a first node in a wireless communication system, including:
[0028] receiving, from a first network node, a first configuration message for configuring a scheduling window and / or energy saving-related information of the first node;
[0029] being scheduled by the first network node, wherein the scheduling is performed based on scheduling information of at least one first node within at least one time unit generated by a scheduling module obtained through generative network training; and
[0030] receiving, from the first network node, a first indication message for instructing the first node to monitor a downlink signal;
[0031] The scheduling information is obtained based on a matrix or an image generated by the scheduling module.
[0032] According to an embodiment of the present disclosure, the scheduling module obtained by generative network training includes a classifier, at least one generator and a scheduler; and
[0033] The classifier is used to generate different types of indication information about the input data;
[0034] The generator generates the scheduling information according to the different types of indication information generated by the classifier;
[0035] The scheduler schedules data transmission of the first node according to the scheduling information.
[0036] According to an embodiment of the present disclosure, for the one time slot of the first node, the scheduling information further includes at least one of the following information: bit number information, resource allocation information, and indication information of the type of transmission service.
[0037] According to an embodiment of the present disclosure, the first configuration message includes at least one of the following information: configuration information of the scheduling window, and energy-saving configuration information;
[0038] The configuration information of the scheduling window includes at least one of first starting offset information, first length information, first period information and first effective time information.
[0039] According to an embodiment of the present disclosure, the first indication message includes at least one of the following information: sleep indication information and sleep time information.
[0040] An embodiment of the present disclosure further provides a first network node in a wireless communication system, including:
[0041] a transceiver for sending and receiving signals; and
[0042] A controller is coupled to the transceiver and configured to execute the method as described above and performed by the first network node in the wireless communication system.
[0043] An embodiment of the present disclosure further provides a first node in a wireless communication system, including:
[0044] a transceiver for sending and receiving signals; and
[0045] A controller is coupled to the transceiver and configured to execute the method as described above and performed by the first node in the wireless communication system. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Figure 1 An exemplary system architecture for System Architecture Evolution (SAE).
[0047] Figure 2 Structural diagram of the conditional adversarial generation network.
[0048] Figure 3 is a block diagram of an exemplary scheduling algorithm according to various embodiments of the present disclosure.
[0049] Figure 4 is a block diagram of a generator according to an example embodiment of the present disclosure.
[0050] Figure 5 FIG. 1 is a block diagram of training and inference according to an example embodiment of the present disclosure.
[0051] Figure 5a is a block diagram of a self-optimizer according to an example embodiment of the present disclosure.
[0052] Figure 6 is a block diagram of a device according to an example embodiment of the present disclosure. DETAILED DESCRIPTION
[0053] The following description with reference to the accompanying drawings is provided to facilitate a comprehensive understanding of the various embodiments of the present disclosure as defined by the claims and their equivalents. This description includes various specific details to facilitate understanding but should be considered as illustrative only. Therefore, one of ordinary skill in the art will recognize that various changes and modifications can be made to the various embodiments described herein without departing from the scope of the present disclosure. In addition, descriptions of well-known functions and structures may be omitted for the sake of clarity and conciseness.
[0054] The terms and expressions used in the following description and claims are not limited to their dictionary meanings, but are merely used by the inventor to enable a clear and consistent understanding of the present disclosure. Therefore, it should be apparent to those skilled in the art that the following description of various embodiments of the present disclosure is provided for illustration purposes only and not for the purpose of limiting the present disclosure as defined by the appended claims and their equivalents.
[0055] It will be understood that the singular forms "a," "an," and "the" include plural referents unless the context clearly dictates otherwise. Thus, for example, reference to "a component surface" includes reference to one or more of such surfaces.
[0056] The terms "include" or "may include" refer to the presence of the corresponding disclosed functions, operations, or components that can be used in various embodiments of the present disclosure, rather than limiting the presence of one or more additional functions, operations, or features. In addition, the terms "include" or "have" can be interpreted as indicating certain characteristics, numbers, steps, operations, constituent elements, components, or combinations thereof, but should not be interpreted as excluding the possibility of the presence of one or more other characteristics, numbers, steps, operations, constituent elements, components, or combinations thereof.
[0057] The term "or" used in various embodiments of the present disclosure includes any of the listed terms and all combinations thereof. For example, "A or B" may include A, may include B, or may include both A and B.
[0058] Unless otherwise defined, all terms (including technical or scientific terms) used in this disclosure have the same meaning as understood by those skilled in the art described in this disclosure. Common terms as defined in dictionaries are interpreted as having a meaning consistent with the context in the relevant technical field and should not be interpreted in an idealized or overly formal manner unless explicitly defined in this disclosure.
[0059] The accompanying drawings discussed below and the various embodiments used to describe the principles of the present disclosure in this patent document are intended to be illustrative only and should not be construed in any way to limit the scope of the present disclosure. Those skilled in the art will understand that the principles of the present disclosure can be implemented in any suitably arranged system or device.
[0060] Figure 1 2 is an exemplary system architecture 200 according to various embodiments of the present disclosure. Other embodiments of the system architecture 200 can be used without departing from the scope of the present disclosure.
[0061] User equipment (UE) 201 is a terminal device used to receive data. The next-generation radio access network (NG-RAN) 202 is a radio access network that includes base stations (gNBs or eNBs connected to the 5G core network 5GC; eNBs connected to 5GC are also called ng-gNBs) that provide UEs with access to wireless network interfaces. The access control and mobility management function (AMF) 203 is responsible for managing the UE's mobility context and security information. The user plane function (UPF) 204 mainly provides user plane functions. The session management function (SMF) 205 is responsible for session management. The data network (DN) 206 includes services such as operator services, Internet access, and third-party services.
[0062] Exemplary embodiments of the present disclosure are further described below with reference to the accompanying drawings.
[0063] The text and drawings are provided as examples only to aid understanding of the present disclosure. They should not be construed as limiting the scope of the present disclosure in any way. Although certain embodiments and examples have been provided, it will be apparent to those skilled in the art based on what is disclosed herein that the embodiments and examples shown may be modified without departing from the scope of the present disclosure.
[0064] Before introducing the specific content, some assumptions and definitions of this disclosure are given below.
[0065] ■The message names in this disclosure are just examples, and other message names can also be used.
[0066] ■The terms “first”, “second”, etc. included in the message names of the present disclosure are only used to distinguish one message from another, and do not represent the order of execution or transmission.
[0067] ■ In this disclosure, detailed descriptions of steps not related to the present disclosure are omitted.
[0068] ■In this disclosure, the steps in each process can be performed in combination with each other or individually. The execution steps of each process are only examples and do not exclude other possible execution steps and / or orders.
[0069] ■In this disclosure, a base station may be a 6G base station, a 5G base station (such as gNB, ng-eNB), a 4G base station (such as eNB), a RAN node, or other types of access nodes.
[0070] ■In this disclosure, user, user equipment, user terminal, and user terminal equipment are equivalent.
[0071] The nodes involved in this disclosure include:
[0072] First node: user equipment, which can be a mobile phone or a relay node;
[0073] Second node: a base station, or a central unit (CU) of a base station, or a control plane portion of a central unit of a base station, or a distributed unit of a base station;
[0074] The base station involved in the second node may be one of the following types (other types that can be used for user terminal access are not excluded):
[0075] ■ Long Term Evolution (LTE) base stations;
[0076] 5G base stations;
[0077] 6G base stations
[0078] RAN nodes;
[0079] Non-Terrestrial Networks (NTN) base stations;
[0080] ■High Altitude Platform Station (HAPS) base station;
[0081] ■Drone base stations; and
[0082] ■WIFI access point.
[0083] The design of the scheduler involves the acquisition of various information, such as load information (such as the amount of data in the cache, the arrival of services), channel information (such as channel status, channel changes, etc.). Some of this information can be directly obtained by the base station, and some is reported by the user equipment. However, some information is unknown to the base station, such as the future arrival of services, the future channel status, etc. In order to overcome the uncertainty brought about by this unknowable data, traditional scheduling algorithms usually only determine the scheduling within a very short period of time in the future, such as only determining the scheduling of the next time slot. The problem with this scheduling algorithm is that the base station needs to execute the scheduling algorithm in each time slot, and the user needs to receive the scheduling information sent by the base station in each time slot (such as the scheduling information contained in the DCI carried by the PDCCH in 4G and 5G systems). This is not conducive to energy saving for the base station and user equipment, and also leads to more signaling overhead, which is a problem that needs to be solved urgently.
[0084] The present invention proposes a new scheduling mechanism. With the help of AI, the scheduling mechanism can simultaneously generate scheduling information for multiple users (the services of different users may be different or the same) in the future (such as the amount of data that each user needs to send in each time slot in the future, such as the number of bits). The base station then allocates wireless resources to each user based on the scheduling information, trying to meet the transmission of the number of bits indicated by the scheduling information as much as possible. The method designed by the present invention uses the Conditional Generative Adversarial Network (C-GAN) in the field of AI to transform a scheduling problem into an image generation problem. Figure 2 The network structure diagram of C-GAN is given. The C-GAN network consists of a generator and a discriminator. When training C-GAN, the training samples are real data (true data). Each true data has a corresponding label or condition (y). The true data can be expressed as a conditional probability p d (x|y). The input of the generator is noise z and y, then it can generate new data, that is, generate data p g (x|y). The input data of the discriminator will include real data or generated data and a label. Then, based on the label y, the discriminator can determine whether the input data is real data or generated data, thereby generating a predicted label to indicate the probability that the input data is real data, that is, D(x|y). After the network is trained, it is expected to obtain a generator that makes it impossible for the discriminator to distinguish between generated data and real data. At the same time, it is expected to obtain a discriminator that allows it to determine whether the input data is real data or generated data. The generator obtained by this method can generate corresponding images according to the conditions. Figure 3 A block diagram of the scheduling algorithm of the present invention (which can perform downlink scheduling, uplink scheduling, or simultaneous uplink and downlink scheduling) is provided. The scheduling algorithm includes three main parts:
[0085] ■Classifier: This part mainly classifies the input data to generate different types of indication information (this indication information can be a scalar information, a vector, a matrix, or a token (the smallest unit of model processing). The classifier is used to fully classify the data obtained by the base station. The classifier can take various forms as long as it can classify the input data (it can be a calculation formula, a machine learning network, such as an LSTM network).
[0086] ■ Generator: This part mainly generates qualified scheduling data based on the input type information (such as type indication information) and outputs it to the scheduler for use. The generator can generate a variety of scheduling matrix data or image data. In one example, the generator can be obtained based on the C-GAN network, in another example, the generator can be obtained based on other GAN networks, in another example, the generator can be based on a diffusion model generation network, in another example, the generator can be a large model network, or other types of AI models. The scheduling information generated by the generator is scheduling information for each user (or each type of service, or each type of service for each user) in multiple future time slots. One example of this scheduling information is the number of bits sent in each time slot, another example is the resources allocated in each time slot (such as time resources, frequency resources, beam information, etc.), and another example is the service information transmitted in each time slot. In the present invention, the scheduling data generated by the generator can be used to schedule the transmission of downlink data (data sent by the base station to the user) or the transmission of uplink data (data sent by the user to the base station).
[0087] ■Scheduler: This part converts the generator scheduling data into scheduling information assigned to each user in each time slot, such as the number of bits sent in each time slot, the resources allocated in each time slot (such as time resources, frequency resources, beam information, etc.), the service information transmitted in each time slot, etc., and allocates resources to each user based on the user's channel conditions to ensure that the data transmission indicated by the "scheduling information of each user in each time slot" determined by the generator can be completed as much as possible in each time slot. In one example, when the generated scheduling information is the number of bits sent in each time slot, the scheduler will allocate resources to each user as much as possible to ensure that the "number of bits sent in each time slot" can be sent to the user (downlink), or schedule sufficient resources so that the user can send the "number of bits sent in each time slot" to the base station (uplink).
[0088] The present invention aims to generate a matrix containing scheduling information. Each row of the matrix represents scheduling-related information for a user or a service, and each column represents scheduling-related information for a user or a service in a time slot. Each element of the matrix represents scheduling information for a user or a service in a time slot. The scheduling information may include at least one of the following:
[0089] ■Bit number information: This bit number is generated by the scheduling algorithm. The scheduler will try its best to meet the transmission of the bit number indicated by this information. However, if it cannot be met, the scheduler will meet it according to its maximum capacity.
[0090] ■ Resource allocation information: This information can include time resource indication information (such as the number of symbols, subframe number, frame number, etc.), frequency resource indication information (such as frequency point, frequency band range, subcarrier number, number of subcarriers, etc.), time-frequency resource indication information (such as PRB number, RB number, etc.), beam indication information (such as beam identification information, transmission configuration information), resource starting position information, resource ending position information, resource range information, etc.;
[0091] ■Indication of the type of transport service, such as DRB ID, SRB ID, QoS flow ID, logical channel ID, PDU session ID, etc.
[0092] In the following description, bit number information is used as an example for explanation, but the following method is also applicable to other types of scheduling information. In addition, the following method is described using downlink scheduling as an example, but the following method can also be used for uplink scheduling.
[0093] In the present invention, in order to illustrate the design of a specific algorithm, the concept of a time window is defined, which includes a certain number of time units (such as time slots). In one example, the time window may include only one time slot, in another example, the time window may include a fixed number of time slots, and in another example, the time window may include a variable number of time slots, that is, different time windows have different numbers of time slots. When training an AI model, historical data can be divided into data of different time windows. When inferring the AI model, the output can be defined as information of one time window, or information of multiple time windows.
[0094] In order to explain the scheduling algorithm designed by the present invention in detail, it can be explained from the following aspects:
[0095] The first aspect: theoretical modeling, that is, how to transform a scheduling problem into an image generation problem
[0096] Consider a base station (BS) scheduling N users running different services in a cell, and the minimum time unit of scheduling is a time slot. Usually, the scheduling scheme can make a decision on a window ω with L time slots, that is, the scheduling decision. It can be represented by a matrix, for example, T(ω) = [t i,j (ω)] N×L , where t i,j (ω) is the number of bits transmitted to user i in time slot j. This determination is made taking into account the following aspects (in the present invention, unless explicitly stated, the following variables are variables corresponding to the scheduling window ω and the ω in each variable symbol is omitted for simplicity):
[0097] ■ Initial traffic load: reflects the number of bits remaining in the buffer when making scheduling decisions, which can be expressed as the vector B = [b i ] N×1 To express, where b i It refers to the number of bits in the buffer of user i (for downlink, it is the buffer of user i in the base station; for uplink, it is the buffer of user i).
[0098] ■ Arrived Traffic Load: Indicates the newly arrived traffic load after the scheduling decision is made (e.g.
[0099] The load arriving in the subsequent L time slots). It is closely related to the traffic arrival model of the service running on the user equipment, which can be expressed as A = [a i,j ] N×L The matrix is represented by i,j is the number of bits arriving for user i in time slot j.
[0100] ■ Channel state: reflects the transmission capability of each user in each time slot. It can be expressed as C = [c i,j ] N×L Matrix representation, c i,j is the channel status of user i in time slot j (such as channel quality indicator, CQI).
[0101] ■QoS requirements: For services running on user devices, the quality of service performance achieved by the scheduling scheme can be described by K different parameters, such as throughput, delay time, packet loss rate, etc., to meet the user experience. Each QoS parameter of user i has certain restrictions, Q i,k (j=1, ..., K). For example, Q i,k Defines a lower bound on throughput, or Q i,k represents the upper bound of the delay or packet loss rate. Therefore,
[0102] The service quality requirements of N users can be expressed as the matrix Q req =[Q i,j ] N×K To express.
[0103] The present invention has carried out theoretical modeling from two different perspectives:
[0104] ■Angle 1: Modeling for a time window
[0105] A guaranteed Q reg The scheduling scheme can be generated using a function of formula G(*) based on the above aspects, for example:
[0106] T=G(B,A,C) (1)
[0107] In practice, the generation of transmission and application-layer data in the transport network causes A to be random. Similarly, C is also random due to variations in channel conditions caused by the radio environment and user mobility. B is the only parameter that is determined when making scheduling decisions. Therefore, T can be considered a random variable with probability p(T|B). Furthermore, the QoS performance achieved by the scheduling scheme can be expressed as a function of T. For example: Where Q = [q i,k (T)] N×K and q i,k (T) is the value of the kth QoS parameter of user i. Based on this, the mean value of each QoS parameter for each user can be calculated using the following formula:
[0108]
[0109] in: For the given formula (2), the mean values of QoS parameters that can be achieved by the traditional scheduling scheme and the newly designed scheduling scheme can be expressed as and (In the present invention, with ~ (tilde) and variables with ^(hat) represent the variables of the traditional solution and the new design solution, respectively. he The difference between them, the Euclidean distance can be defined as:
[0110]
[0111] in and The traditional scheduling scheme and the newly designed scheduling scheme can be obtained by formula (2) respectively. Assume that the traditional scheduling scheme can ensure the QoS requirements of each user (defined as: Q req ), the new scheduling scheme also needs to achieve similar QoS performance. Therefore, the following is the optimization problem of the new scheduling scheme, such that G(*) is formulated under the constraints of each user's quality of service requirements:
[0112]
[0113] st:Q req
[0114] Problem (4) is not easy to solve due to the following difficulties: 1) It is difficult to deduce the equations in (2) when calculating (3). and the closed form of p(T|B), 2) it is difficult to determine the mathematical relationship between the scheduling scheme and the generated T. Therefore, it is necessary to transform problem (4).
[0115] In (2), the average value of each QOS parameter is determined by p(T|B). When the traffic load in the buffer is high, B can be regarded as the main factor determining T, because the scheduling algorithm may not be able to empty the buffer. However, when the buffer load is low, B is not sufficient to determine T, because the scheduler may allocate resources to transmit data that arrives during the scheduling window. Therefore, by introducing A, p(T|B) can be further calculated as:
[0116]
[0117] Where p(A|B)=p(A) is due to the independence of B and A, and p(T|B, A) is related to the channel state C during a scheduling window. and (3) can be further transformed according to (5) as follows:
[0118]
[0119] Among them, because the probability of A is only related to the arrival pattern of business traffic, but has nothing to do with the scheduling algorithm used, Therefore, the optimization objective (4) is obtained by calculating the Ideally, if the new design can produce Same Then (6) will be minimized to zero. In other words, minimize It can be transformed into designing a new scheduling scheme so that the corresponding and Approximation. In theory, the similarity between two probability distributions can be calculated using the Jensen-Shannon divergence (JSD), that is
[0120]
[0121] Among them D KL (p|q) is the formula for computing the Kullback-Leibler (KL) divergence between two probability distributions, such as p(x) and p(y):
[0122]
[0123] Therefore, problem (4) is transformed into designing G to minimize the JSD in (7), which can be expressed as:
[0124]
[0125] An interesting finding is that problem (9) has an optimization objective similar to that of a popular artificial intelligence (AI) model, the conditional generative adversarial network (CGAN), which evolved from GAN. C-GAN consists of two models, a generator and a discriminator. The training samples are real data, each of which has a dedicated label, i.e., the generator is responsible for generating data based on the input of noise variables and labels, and then directly provides the generated data to the discriminator. The discriminator distinguishes whether the input data is real data or generated data based on the input label. The goal of C-GAN is to obtain a generator that can generate data so that the discriminator cannot distinguish the generated data from the real data, and C-GAN can also obtain a discriminator that can distinguish between real data and generated data. In other words, the discriminator and the generator are playing a mini-maximization game involving two players, and its optimization objective is:
[0126]
[0127] Where V(G, D) can be defined as:
[0128]
[0129] p d (x|y) and p g (z|y) represents the probability of real data and the probability of generated data under condition y respectively. D(*)∈[0,1] is the output of the discriminator, which represents the probability that the input data is from real data rather than generated data. For problem (10),
[0130]
[0131] Therefore, problem (10) can be transformed into obtaining a generator that can optimize the following objective:
[0132]
[0133] If p in (13) d (x|y) and p g (z|y) are replaced by and Then problem (13) is equivalent to problem (9), that is,
[0134]
[0135] Therefore, the scheduler design of problem (4) is transformed into a problem that can be solved by C-GAN.
[0136] ■Angle 2: Modeling for multiple time windows
[0137] In another embodiment, the QoS performance of the user is obtained by statistics over a period of time. The period of time may include multiple windows, such as W windows. Then, the scheduling matrix of the base station for scheduling the user can be expressed as: The achievable QoS performance can be expressed as in and is the value of the kth QoS parameter of user i. The resulting scheduling decision can be expressed as Where B1 represents the initial cache size at the beginning of W windows, and Represent the service arrival matrix and channel state matrix in the W window respectively. Because of the generation and transmission of application layer data, is a random variable; because of the change of channel state, is also random. For each window, A ω and C ω Therefore, B1 is the only parameter that is known at the beginning of the scheduling. is a random variable with probability Furthermore, the mean value of each QoS parameter for each user can be calculated using the following formula:
[0138]
[0139] in: Similar to (3), in order to describe and The difference between them, the Euclidean distance can be defined as:
[0140]
[0141] The problem that the scheduling algorithm needs to solve is:
[0142]
[0143] In order to solve the problem (17), it is necessary to transform the problem. It can be calculated as follows:
[0144]
[0145] The initial buffer load of each scheduling window is B ω (ω=1,...,W), then we can get
[0146] B2=B1+(A1-T1)×I
[0147]
[0148] …
[0149] where I is a constant vector [1, 1, ..., 1] T , “T” represents the transposition operation. Based on the above formulas, we can get
[0150] p(T1, T2|B1, A1, A2)
[0151] =p(T2|B1,A1,T1,A2)p(T1|B1,A1)
[0152] =p(T2|B1,A2)p(T1|B1,A1)
[0153] Similarly,
[0154] p(T1, T2, T3|B1, A1, A2, A3)
[0155] =p(T3|B1,A1,T1,A2,T2,A3)p(T1,T2|B1,A1,A2)
[0156] =p(T3|B3,A3)p(T2|B2,A2)p(T1|B1,A1)
[0157] And so on, It can be calculated according to the following formula:
[0158]
[0159] set up but
[0160]
[0161] Therefore, problem (17) is transformed into
[0162]
[0163] When the new scheduling mechanism is generated and Similar, and When , the above problem (20) can be solved. Ideally, the transmission matrix of each window generated by the new scheduling mechanism needs to have the same distribution as the traditional transmission matrix, that is, Will and Substituting (7), according to the above analysis of "for a time window" (such as (7) to (14)), the optimal solution to problem (17) is as follows:
[0164]
[0165] Therefore, the scheduler shown in (21) can also be designed through C-GAN.
[0166] Based on the two different modeling perspectives described above, the design of a new scheduler can be transformed into the problem that C-GAN needs to solve. In the field of artificial intelligence, CGAN has become very popular in image generation due to its outstanding performance in generating any desired image. Inspired by this, the scheduling decision matrix T can be further visualized as an image, namely the scheduling image, by the following steps:
[0167] ■Step 1 (normalization): Through (22), the scheduling decision matrix T can be normalized as:
[0168]
[0169] where t max It is the maximum number of bits that each user can transmit in one time slot, which is determined by the system bandwidth and the highest modulation and coding scheme (MCS).
[0170] ■Step 2 (Visualization): It is multiplied by 255 to turn it into a gray image. The grayscale of each pixel can represent the number of bits transmitted in each time slot. Specifically, the white pixel represents
[0171] The number of bits transmitted in a time slot is t max , while black pixels indicate no bits were transmitted. Finally, the design of the new scheduling algorithm is transformed into using C-GAN to obtain a generator that can generate a scheduling image corresponding to T under conditions B and A. In one example, we call this scheduler a Buffer-Arrival-Transmission scheduler (BAT-scheduler).
[0172] ■ The second aspect: Classifier design
[0173] Figure 4 The block diagram of the classifier is given. The input parameters of the classifier can be at least one of the following parameters:
[0174] Information related to the amount of buffered data, which reflects the amount of data in the user's buffer at the base station, or the amount of data in the buffer at each user. This information may be implemented in at least one of the following ways:
[0175] ■Method 1: The information is a scalar, which represents the amount of data in the cache of all users (or services) at a certain time (t). The scalar is information related to the amount of cached data of all users. In one example, the information is obtained by summing the amount of cached data of all users or according to a specific function (such as proportionally adding the amount of data in the cache of each user, such as calculating the ratio of the sum of the amount of data cached by all users to the maximum number of bits that the user can cache in a time slot, which is a normalization operation on the amount of data cached by the user).
[0176] ■Method 2: The information is a vector that represents the amount of data in the cache of different users (or services) at a certain time (t). Each element of the vector is information related to the amount of data in the cache of a user. In one example, the information is the amount of data in the cache of a user according to a specific function (such as calculating the ratio of the amount of data cached by the user to a constant or variable, such as calculating the ratio of the amount of data cached by the user to the maximum number of bits that the user can cache in a time slot, which is a normalization operation on the amount of data cached by the user).
[0177] ■Method three: The information is a matrix, which represents the amount of data cached by different users (or services) at different times. Each element in the matrix represents the amount of data cached by different users at a certain time (t). Each element is information related to the amount of data cached by a user. In an example, the information is the amount of data cached by a user according to a specific function (such as calculating the ratio of the amount of data cached by the user to a constant or variable, such as calculating the ratio of the amount of data cached by the user to the maximum number of bits that the user can cache in a time slot, which is a normalization operation on the amount of data cached by the user).
[0178] Information related to the amount of arrived data. This information reflects the amount of downlink data received by the user at the base station, or the amount of uplink data received by the user. Possible implementations of this information include the following:
[0179] ■Method 1: The information is a scalar, which represents the amount of data arriving for all users (or services) at a certain time (t). The scalar is information related to the amount of data arriving for all users. In one example, the information is obtained by summing the amount of data arriving for all users or by using a specific function (such as calculating the ratio of the amount of data arriving for each user to the maximum number of bits that the user can reach in a time slot, which is a normalization operation for the amount of data arriving for the users).
[0180] ■Method 2: The information is a vector, which represents the amount of data arriving from different users (or services) at a certain time (t). Each element of the vector is information related to the amount of data arriving from a user. In one example, the information is the amount of data arriving from a user according to a specific function (such as calculating the ratio of the amount of data arriving from the user to a constant or variable, such as calculating the ratio of the amount of data arriving from the user to the maximum number of bits that the user can arrive in a time slot, which is a normalization operation on the amount of data arriving from the user).
[0181] ■Method three: The information is a matrix, which represents the amount of data arriving from different users (or services) at different times. Each element in the matrix represents the amount of data arriving from different users at a certain time (t). Each element is information related to the amount of data arriving from a user. In one example, the information is the amount of data arriving from a user according to a specific function (such as calculating the ratio of the amount of data arriving from the user to a constant or variable, such as calculating the ratio of the amount of data arriving from the user to the maximum number of bits that the user can arrive in a time slot, which is a normalization operation on the amount of data arriving from the user).
[0182] Information related to the amount of transmitted data. This information reflects the amount of downlink data sent by the base station to the user, or the amount of uplink data scheduled by the base station to be sent by the user. This information can be implemented in the following ways:
[0183] ■Method 1: The information is a scalar, which represents the amount of data transmitted by all users (or services) at a certain time (t). The scalar is information related to the amount of data transmitted by all users. In one example, the information is obtained by summing the amount of data transmitted by all users or according to a specific function (such as proportionally adding the amount of data arriving at each user, such as calculating the ratio of the amount of data transmitted by all users to the maximum number of bits that the users can transmit in a time slot, which is a normalization operation on the amount of data transmitted by users).
[0184] ■Method 2: The information is a vector, which represents the amount of data transmitted by different users (or services) at a certain time (t). Each element of the vector is information related to the amount of data transmitted by a user. In an example, the information is the amount of data transmitted by a user according to a specific function (such as calculating the ratio of the amount of data transmitted by the user to a constant or variable, such as calculating the ratio of the amount of data transmitted by the user to the maximum number of bits that the user can transmit in a time slot, which is a normalization operation on the amount of data transmitted by the user).
[0185] ■Method three: The information is a matrix, which represents the amount of data transmitted by different users (or services) at different times. Each element in the matrix represents the amount of data transmitted by different users at a certain time (t). Each element is information related to the amount of data transmitted by a user. In an example, the information is the amount of data transmitted by a user according to a specific function (such as calculating the ratio of the amount of data transmitted by the user to a constant or variable, such as calculating the ratio of the amount of data transmitted by the user to the maximum number of bits that the user can transmit in a time slot, which is a normalization operation on the amount of data transmitted by the user).
[0186] Information related to channel quality, such as the Channel Quality Indicator (CQI), is used to reflect the uplink or downlink channel quality of the user. This information can be implemented in the following ways:
[0187] ■Method 1: The information is a scalar that represents the channel quality of all users (or services) at a certain time (t). This scalar is information related to the channel quality of all users. In one example, the information is obtained by summing the channel quality information of all users or according to a specific function (such as proportionally adding the channel quality of each user, such as calculating the ratio of the channel quality of all users to the best channel quality that can be achieved by the user in a time slot, which is a normalization operation on the user channel quality, such as the average, maximum, minimum, median, etc. of the channel quality of all users).
[0188] ■Method 2: The information is a vector that represents the channel quality of different users (or services) at a certain time (t). Each element of the vector is information related to the channel quality of a user. In an example, the information is a calculation of the channel quality of a user according to a specific function (such as calculating the ratio of the user channel quality to a constant or variable, such as calculating the ratio of the user channel quality to the best channel quality that the user can achieve in a time slot, which is a normalization operation on the user channel quality, such as the average, maximum, minimum, median, etc. of the user's channel quality).
[0189] ■Method three: The information is a matrix, which represents the channel quality of different users (or services) at different times. Each element in the matrix represents the channel quality of different users at a certain time (t). Each element is information related to the channel quality of a user. In an example, the information is a calculation of the channel quality of a user according to a specific function (such as calculating the ratio of the user channel quality to a constant or variable, such as calculating the ratio of the user channel quality to the best channel quality that the user can achieve in a time slot, which is a normalization operation on the user channel quality, such as the average, maximum, minimum, median, etc. of the user's channel quality).
[0190] ■Information related to physical resources (such as resource blocks), which is used to reflect the user's use of resources. In one example, this information is the amount of data of physical resources used by the user on the base station side, such as the number of RBs, REs, PRBs, subframes, or frames, etc.
[0191] ■Information related to the user's location, which is information indicating the user's location, such as cell identification information and GPS location information.
[0192] ■Film fingerprint of the wireless environment. This information is mainly used to indicate the channel status of the wireless environment based on the location information of the current base station.
[0193] ■ Service type indication information, which indicates the service type, such as video, voice, gaming, etc. ■ Service QoS parameter information, which indicates the service QoS parameters, such as delay requirements, rate requirements, delay jitter requirements, etc.
[0194] The output of the classifier may be at least one of the following:
[0195] ■Category value: This information represents a category of the input parameter, such as 0, 1, 2, 3, etc. The value can be obtained through supervised or unsupervised methods, or by calculation.
[0196] ■Category vector: This information identifies the categories in the category sequence to which the input parameter belongs.
[0197] [C1, C2, C3], C1 indicates the category to which the input data belongs in the first category, C2 indicates the first subcategory to which the input data belongs in the category identified by C1, and C3 indicates the second subcategory to which the input data belongs in the categories identified by C1 and C2.
[0198] ■Category sequence: This sequence can be a text token sequence or a token sequence consisting of communication signaling primitives and a description of the current state of communication between the base station and the user. It is mapped or aligned with the historical data to be generated, and then cascaded and obtained through pre-training. This sequence can be analogous to the input category to a certain extent.
[0199] The classifier can be implemented in at least one of the following ways:
[0200] ■ Mathematical methods, such as results obtained by calculation, which are obtained according to a calculation formula.
[0201] ■Supervised neural networks (e.g. RNN, GRU, ARMIA, LSTM, TSMixer, PatchMixer, Transformer, etc.).
[0202] ■Unsupervised networks (e.g., clustering networks, used in our scheduler to cluster communication data based on its characteristics, such as traffic density).
[0203] ■Multimodal large model network (similar to the existing large model concept of ChatGPT, this concept needs to be further improved when applied to the communication field, for example: pre-training a tokenizer based on communication primitives or state description corpus to generate a token vocabulary, such as a digital sequence 1,
[0204] 23, 45, .. or letter word sequence a, ab, cde, and based on the data matrix patch block segmentation, use the variational autoencoder to train a patch block token vocabulary (digital sequence 11, 23, 56), cascade these two token sequence corpora, perform multimodal large model training, and pre-trained large model network).
[0205] ■And combinations of these above methods.
[0206] Implementations of the classifier include at least one of the following:
[0207] Classifier Example 1: Use the time series regression network to predict the amount of arriving data, then calculate the range of the value of the transmitted data according to the formula and divide it into categories, and finally generate the required data according to the category through the generator.
[0208] ■The input parameters are: 1) information related to the amount of cached data (such as information according to the above-mentioned method 1 of "information related to the amount of cached data"). In one example, the information is the cached information of the current user, 2) information related to the amount of data that arrived in each time window over a period of time (such as information according to the above-mentioned method 1 of "information related to the amount of data that arrived").
[0209] ■The output parameter is: the classification value of the amount of data to be transmitted in the next time window.
[0210] ■ Formula-based classification: To obtain different categories based on the predicted amount of incoming data, the following variables are defined:
[0211] τ: Normalized number of transmitted bits. In one example, it is the ratio of the sum of the data transmitted by all users in the scheduling window to the maximum amount of data that a user can transmit in a time slot, as calculated by the following formula:
[0212]
[0213] α: Normalized number of arriving bits. In one example, it is the ratio of the sum of the data volumes received by all users (or services) within the scheduling window to the maximum arriving data volume, as calculated using the following formula:
[0214]
[0215] Among them, a max The maximum number of bits that can arrive in a time slot among all users
[0216] β: The normalized number of cache bits at the start of the scheduling window. In one example, it is the ratio of the amount of data in the user's cache at the start of the scheduling window to the maximum cache size, as calculated by the following formula:
[0217]
[0218] Among them, b max is the maximum cache size for each user.
[0219] For each scheduling window, the total number of bits sent should not be greater than the sum of the number of bits in the initial buffer and the number of bits arriving, i.e.
[0220]
[0221] According to the above definitions of τ, α and β, we can further calculate:
[0222]
[0223] The traffic load (including the buffer load β and the arrival load α) can be redefined as μ, such as:
[0224]
[0225] β = 0 and α = 0 means there is no data traffic, so the value of μ is defined as 6, not infinity. In addition, considering that the maximum value of τ is 1, it can be limited as follows:
[0226] in is a constant. (25) The defined μ can be used for the first classification, and the classification can be determined according to the value range of μ, such as type 1, type 2, ..., type K. An example classification method is to divide it into 5 categories:
[0227] ■ Type 1 (μ<2): A heavily loaded class where all samples are bounded by τ=1.
[0228] ■ Type 2 (2≤μ<3): Class with moderate load, where almost all samples are bounded by τ<0.6.
[0229] ■ Type 3 (3≤μ<4): Class with low load, where the samples are strictly limited by the boundary of δ×10-μ.
[0230]
[0231] ■Type 4 (4≤μ<6): Class with ultra-low load, where samples are strictly constrained by the δ×10-μ boundary.
[0232] ■ Type 5 (μ=6): Class with no traffic load.
[0233] Furthermore, class 1 indicates a heavy load on the user device's buffer. In a well-designed traditional approach, the number of overloaded samples is much smaller than for other classes. If C-GAN training were performed directly on these five classes, the imbalance in the number of samples would significantly impact C-GAN convergence. To address this issue, class 1 samples can be trained separately, and further classifications can be defined.
[0234] Specifically, to ensure QoS, traditional solutions schedule user devices by maximizing the transmission of data from users with larger cache loads. Inspired by this, we further classify samples in Class 1 based on each user's cache load (referred to as secondary classification). Samples with the heaviest cache load corresponding to the same user are grouped into a single class. Based on the number of users, Class 1 is further classified into Class 1-1, Class 1-2, ..., Class 1-N, each corresponding to a specific user device. For example, samples in Class 1-2 all have the heaviest cache load on User Device 2.
[0235] ■Classifier Structure: The classifier includes a predictor, which can be an LSTM (long short-term memory) neural network (or similar AI networks applicable to time series prediction, such as RNN, GRU, ARMIA, TSMixer, PatchMixer, Transformer, etc.) and performs classification according to the description of "Formula-based Classification" above. The classifier trains a network to predict incoming data. One implementation includes the following steps:
[0236] ◆ Step 1 : First, collect the historical scheduling data generated by the base station (refer to the parameter description in the classifier design).
[0237] ◆ Step 2 : By processing the base station data obtained in each time slot, for each time window, the α corresponding to each time window can be obtained.
[0238] ◆ Step 3 : Based on the data of each time window obtained in step 2 above, a data set based on the historical data of multiple consecutive time windows in the past period of time (the time length can be set arbitrarily) is constructed. The following takes the period of time as 100 time windows as an example. The data set contains multiple groups of data, each group of data contains information of 100 time windows, for example, it contains α of 100 time windows. i , and the next α following these 100 time windows i For example, the data set includes α1, α2, ..., α 100 and α 101 This set of data can be used as a set of sample data for training the model.
[0239] This method can form a training set containing multiple groups of data.
[0240] ◆ Step 4 : Construct a neural network and use the training set constructed above for training. i , such as, α i+1 , α i+2 ,...,α i+100 , the network will produce a predicted
[0241] Set one or more predicted values The corresponding true value α i+101 Compare and get a deviation (loss), and modify the network parameters through back propagation, so that
[0242] This makes the trained network converge gradually (the loss value gradually decreases).
[0243] The structure of the above LSTM network is as follows: the input is α1, α2, ..., α of M scheduling windows M The LSTM structure consists of five LSTM layers, each of which consists of multiple LSTM units and has the same number of inputs. Following the LSTM layer is a fully connected layer with 50 hidden layers.
[0244] ■ Classifier Inference: According to the above steps, the trained LSTM network can be used as a predictor to predict the future arrival load, such as α of the next scheduling window. Specifically, input α1, α2, ..., α of the data arriving within a period of time before the current moment (the time interval can be flexibly set, but needs to be consistent with the training time, such as 100 time windows) into the LSTM network. M As the input of the network, the arriving data is predicted Combined with the β of the next window, μ is calculated according to the above (25). The first classification of the next window is determined based on the size of μ (e.g., one of classes 1 to 5). If it belongs to class 1, a second classification is performed based on the load in the cache of each user at the beginning of the next window, such as class 1-1, class 1-2, ..., class 1-N. In this way, the final classification of the next window can be determined.
[0245] The main reason for classifying data using the above method is to predict the data category to be transmitted within the next window. The key factors influencing the value or category of transmission at the next moment are the arrival load and the cache load. The initial cache load can be directly obtained. As for the arrival load, due to the different types of services used by users, we can use time series data from past moments to predict the arrival of service traffic.
[0246] The above-mentioned formula-based classification method can also be based on other formulas, for example, first classifying and classifying according to the number of UE accesses and the type of service and then performing the classification according to the formula, or using more information as input conditions to generate the formula, such as location and channel condition (CQI) data can also be used as input conditions, that is, all factors that affect the number of bits transmitted at the next moment can be used as conditions.
[0247] Classifier Example 2: Use the time series regression network to directly predict the category to which the data volume to be transmitted at the next moment belongs, and finally generate the data required by the network according to the category.
[0248] ■The input parameters are: 1) information related to the amount of cached data (such as information according to the above-mentioned method 1 of "information related to the amount of cached data"). In one example, the information is the cached information of the current user, 2) information related to the amount of data that arrived in each time window over a period of time (such as information according to the above-mentioned method 1 of "information related to the amount of data that arrived").
[0249] ■The output parameter is: the classification value of the data to be transmitted at the next moment.
[0250] ■Classifier structure: LSTM neural network (or similar AI networks applicable to time series prediction, such as RNN, GRU, ARMIA, TSMixer, PatchMixer, Transformer, etc.) + fully connected classification network.
[0251] Utilize existing time series regression prediction models such as LSTM / RNN / TSMixer, modify the existing network, add a fully connected layer to extract the features of the input time series, and then perform classification to predict the category of data at future moments.
[0252] In this way, the cross entropy loss can be calculated using the classification labels of the data, so as to predict the classification of a certain moment in the future based on the time series data of the past period of time. The classification labels can be constrained by the formula in the above classifier embodiment 1 or other external measurement parameters. For example, the output labels can be constrained according to different time series input conditions (α i , β i , i ) and x i+1 The classification network is trained with the labels of the data at the next moment so that it can predict the labels of the data at the next moment. The classification labels can also be labeled using unsupervised methods such as PCA (principal component analysis) and clustering to classify the data or using some paired primitives or semantic sequences to label them. In one example, the training of the classifier may include the following steps:
[0253] ● Step 1 First, collect historical scheduling data generated by the base station (see the parameter description in the classifier design). Based on the number of user devices and a number of (configurable) time slots, a window matrix or window image is formed as a data element. The sum of the arriving data contained in this matrix, the sum of the initial buffered data, and the sum of the transmitted data are calculated as input for the next step.
[0254] ● Step 2: Construct a dataset based on historical data within a continuous time window (the time interval can be flexibly set). The input data for this dataset consists of the set of all data arriving at each moment within a time window. The dataset contains two types of elements (x1, x2, y). x1 and x2 serve as the input for training data, and y serves as the value regressed and predicted by the training data. For example, x1 is an array of 100 numbers based on the amount of data arriving at each moment, A(t-100) to A(t-1). This array serves as an input. x2 is an array of 100 numbers based on the amount of data cached at each moment, B(t-100) to B(t-1). This array serves as an input. x2 is a categorical value (historical data can be labeled using a formula or other methods).
[0255] ● Step 3: Modify the LSTM network into a classification neural network and use historical data for training. By comparing the cross entropy (loss) generated by the predicted Y class value and the historical Y class value, modify the network parameters through back propagation, so that the trained network gradually converges (the loss value gradually decreases).
[0256] ■ Reasoning about the classifier : Using the network trained in the above steps, input the amount of data A that arrived in the period before the current moment (the time interval can be set flexibly, but needs to be consistent with the training time) as As well as the value β of the data in the current cache, the classification of the transmitted data (the sum of the data sent in the window arriving at the next moment) is directly predicted.
[0257] Classifier Example 3: Since the time series regression network is used to predict the amount of data to be transmitted, the range of the transmission efficiency of the transmitted data is calculated according to the formula and divided into categories, and finally the data required for the generation network is generated according to the categories.
[0258] ■The input parameters are: the amount of data transmitted at each moment in the previous period of time.
[0259] ■The output parameter is: the amount of data to be transmitted at the next moment.
[0260] The classifier structure is: LSTM neural network (or similar AI networks applicable to time series prediction, such as RNN, GRU, ARMIA, TSMixer, PatchMixer, Transformer, etc.) + formula classification module (spectral efficiency formula). In one example, the training of the classifier may include the following steps:
[0261] ● Step 1: First, collect the historical scheduling data generated by the base station (refer to the parameter description in the classifier design). Based on the number of user devices and multiple (configurable) time slots, a window matrix or window image is formed as a data element, and the sum of the transmitted data corresponding to the matrix is calculated as the input for the next step.
[0262] ● Step 2: Construct a dataset based on historical data within a continuous time window (the time interval can be flexibly set). The input data for this dataset consists of the total amount of data transmitted at each moment within a time window. The dataset contains two types of elements (x, y): x serves as the training data input, and y serves as the value predicted by regression based on the training data. For example, x is an array of 100 numbers based on the amount of data transmitted at each moment, T(t-100) to T(t-1). This array serves as an input, and y is the predicted input value at time T(t0).
[0263] ● Step 3 : Build a neural network or a regression function, use historical data for training, compare the deviation (loss) generated by the predicted Y value and the historical Y value, modify the network parameters through back propagation, so that the trained network gradually converges (the loss value gradually decreases).
[0264] ■ Reasoning about the classifier: Using the trained network above, input the amount of data A transmitted in the period before the current moment (the time interval can be set flexibly, but needs to be consistent with the training time) as Predict the data to be transmitted (the sum of the data received in the window transmitted at the next moment), and then use the formula, for example: Through the formula we can use the network to infer the amount of data transmitted Use the range of this value to divide Different classes can be represented by different transmission efficiencies. Our method is not limited to this formula-based classification. Other formulas or methods can also be used. For example, we can first classify and classify them according to the number of UE accesses and the type of services, and then classify them according to the formula. Alternatively, we can use more information as input conditions to generate the formula, such as location and channel quality index (CQI) data. That is, all factors that affect the number of bits transmitted at the next moment can be used as conditions.
[0265] We can also use the matrix (x 0,0 ~x 5,5 ) directly performs multivariate regression (such as multivariate LSTM, ConvLSTM, etc.) to directly predict the matrix of X at the next moment.
[0266] Classifier Example 4: Implementation Method 4: Hierarchical Classifier
[0267] ■The input parameters are: the amount of data transmitted at each moment in the previous period, as well as the service type and priority.
[0268] ■ Output parameter is: the classification of the amount of data to be transmitted at the next moment.
[0269] The classifier structure is: LSTM neural network (or similar AI networks applicable to time series prediction, such as RNN, GRU, ARMIA, TSMixer, PatchMixer, Transformer, etc.) + formula classification module + cluster classification module. In one example, the training of the classifier may include the following steps:
[0270] ● Step 1 : Corresponding to the service information, the number of currently connected user devices and the priority of each user's service can be directly obtained from the system.
[0271] ● Step 2:Thus, within a scheduling window, we can obtain a sequence (1, 5)(2, 3)...(32, 0). In this sequence, each element (x, y) represents the number of users and y represents the priority of the user targeted by x. Different sequences represent different categories.
[0272] ● Step 3: The second level classification is performed after the first level classification. The second level classification can be performed according to different transmission efficiencies or the method in the above embodiment.
[0273] ●Step 4: Merge the two-level categories into a unified category for application in the generation of conditional data.
[0274] One implementation of this embodiment is a two-level classifier design: 1) The first level is the business-related classification, which is based on the following formula
[0275]
[0276] Among them, S i represents the service type of user i, S i (i=0, 1, ..., N-1) can be one of (empty, service 1, service 2, service S), "empty" means the user is not in the cell, "service s" means a specific service (such as a service mapped to a data radio bearer), then the first level classification can produce (S+1) N 2) The second level is load-related classification, which can be performed according to the method in "Classifier Example 1" above. This level of classification can be expressed as follows:
[0277]
[0278] This level of classification can generate up to N+4 types. Combining these two levels of classification, the labels generated by the final classification method can be expressed as follows:
[0279]
[0280] in
[0281] Classifier Example 5: Use the time series regression network to directly predict the category to which the data volume to be transmitted at the next moment belongs, and finally generate the data required by the generator network according to the category.
[0282] ■Input parameters are: In this embodiment, the input parameters include the following:
[0283] ●The amount of data cached at various times in the previous period.
[0284] ●The amount of data that arrived at each moment in the previous period.
[0285] ●The x-coordinate and y-coordinate of the center of gravity of the data transmitted in the current window. The x-coordinate is calculated by multiplying the row number of each element of the matrix of the transmitted data by the value of the element to obtain a number a, and summing all the elements of the matrix of the transmitted data to obtain b. The x-coordinate of the center of gravity is a divided by b. The y-coordinate is calculated by multiplying the column number of each element of the matrix of the transmitted data by the value of the element to obtain a number a, and summing all the elements of the matrix of the transmitted data to obtain b. The y-coordinate of the center of gravity is a divided by b.
[0286] ●Category labels.
[0287] ■The output parameter is: the classification value of the data to be transmitted at the next moment.
[0288] ■The classifier structure is: LSTM neural network (or similar AI networks applicable to time series prediction, such as RNN, GRU, ARMIA, TSMixer, PatchMixer, Transformer, etc.) + fully connected classification network. The steps of classifier training include:
[0289] ● Step 1 : First, collect the historical scheduling data generated by the base station (refer to the parameter description in the classifier design), form a window matrix or window image as a data element based on the number of user devices and multiple (configurable) time slots, and calculate the sum of the arriving data contained in the matrix, the sum of the initial buffered data and the sum of the transmitted data, the center coordinate x of the transmitted data in the current window, and the center coordinate y of the transmitted data in the current window as the input for the next step.
[0290] ● Step 2:Construct a dataset based on historical data within a continuous time window interval (the time interval can be flexibly set). The input data constructed by this dataset contains a collection of all the data arriving at each moment within a time window. The dataset contains two types of elements (x1, x2, x3, x4, y). x1, x2, x3, x4 are used as the input of training data, and y is used as the regressed predicted value of the training data. For example, x1 is an array of 100 numbers, calculated based on the amount of data arriving at each moment, A(t-100) to A(t-1). This array serves as input x1. x2 is an array of 100 numbers, calculated based on the amount of data cached at each moment, B(t-100) to B(t-1). This array serves as input x2. x3 is an array of 100 numbers, calculated based on the amount of data transmitted at each moment, xx(t-100) to Gx(t-1). This array serves as input x3. x4 is an array of 100 numbers, calculated based on the amount of data transmitted at each moment, y(t-100) to Gx(t-1). This array serves as input x4. y is the categorical value (historical data can be labeled using a formula or other methods).
[0291] ● Step 3 :Modify the LSTM network into a classification neural network, use historical data for training, compare the cross entropy (loss) generated by the predicted Y value and the historical Y value, and modify the network parameters through back propagation, so that the trained network gradually converges (the loss value gradually decreases).
[0292] ■ Reasoning about the classifier : Using the network trained in the above steps, input the amount of data A that arrived in the period before the current moment (the time interval can be set flexibly, but needs to be consistent with the training time) as As well as the value β of the data in the current cache, the classification of the transmitted data (the sum of the data sent in the window arriving at the next moment) is directly predicted.
[0293] The above classification can be performed based on the density of the image formed by the amount of transmitted data. First, the data is labeled using a previous classification method, such as Class 1 classification (for example, based on service, user, transmission efficiency, or transmission efficiency upper bound). Then, the density of the entire image is calculated. This can be Tx for all services of a certain priority, Tx for different services, or Tx for different UEs. Then, based on the calculated density and the previous classification results, the corresponding label can be calculated uniformly. Next, based on the historical data (A, B, GTx, Gty) and the corresponding label, the category of Tx at the next moment is predicted through a neural network (or A, GTx, Gty is regressed to calculate the classification). The corresponding data is generated based on the classification input into the generation network.
[0294] Based on the above classifier, Figure 5 A network structure of a joint classifier and C-GAN is given, which includes a structure for training and a structure for inference. In another embodiment, in the training part, the classifier is an independent entity. In one embodiment, in the inference part, the classifier is a classifier that includes a predictor and a classification determiner. This figure is applicable to the implementation given in any of the above classifier embodiments. Figure 5 Provide explanation.
[0295] ■Training part: This part mainly conducts C-GAN training.
[0296] ■The training samples are the scheduled images obtained by the traditional scheme, and each scheduled image is associated with an α and a β. In the training phase, three components are involved, namely the classifier, the generator, and the discriminator. The classifier derives the category of each sample based on μ calculated by (25). In addition, it can further divide the samples of class 1 into different classes, namely class 1-1, class 1-2, etc. according to the cache load of each UE. The present invention trains two generators, one for class 1, class 2,…, class y, and the other for class 1-1,…, class 1-x. The structure of each generator includes an embedding module and five convolutional transposition modules. The embedding block implements the multiplication of random noise and the label, and then the convolutional permutation block converts the input embedding matrix into a scheduled image matrix layer by layer. Finally, the output of the generator is directly connected to the input of the discriminator through the hyperbolic tangent activation function, which normalizes the training data to values in the range of [-1,1]. For the discriminator, 5 convolutional modules are used for feature extraction, and the loss function used by the discriminator is the cross entropy function.
[0297] ■Reasoning
[0298] ■The inference part uses the two generators obtained in the training part to generate a scheduling image and use it for scheduling the next time window. The category of the next time window needs to be provided to the generator. In order to obtain the category of the next scheduling window, the predictor will first be used to predict the α of the next scheduling window, that is, Specifically, considering the time correlation of traffic data arrival, the long short-term memory (LSTM) structure can be used for prediction. The input of LSTM is multiple α of m scheduling windows, such as α1, α2, ..., α M The LSTM structure contains five LSTM layers, each of which consists of multiple LSTM units and has the same number of inputs. Following the LSTM layer is a fully connected layer with 50 hidden layers. Based on the output of the predictor, the classification determiner can determine the label corresponding to the next scheduling window. Depending on the label, the output label can be provided to different generators. For example, the labels of class 1-1 to class 1-x are provided to generator 1, and the labels of class 1 to class y are provided to generator 2. In this way, different scheduling images are generated according to different generators.
[0299] ■Scheduling
[0300] ■The image generated by generator 1 or generator 2 is passed to the scheduler, and the scheduler performs scheduling according to the generated image. For example, the amount of data to be transmitted by the corresponding user in the corresponding time slot is determined based on the value of each pixel in the scheduling image. For example, the scheduling image generated by the generator can be represented as a matrix I. In order to obtain the amount of data that each user needs to be scheduled to transmit in each time slot, each pixel can be normalized, such as I / 255, and then each pixel can be multiplied by the maximum number of bits that each user can transmit in a time slot, that is, t max , to confirm.
[0301] The above method uses two generators, so it can also be called a dual-generator network. Of course, other names are also possible. The scheduler designed based on this method can be called a buffer-arrival-transmission scheduler (BAT scheduler).
[0302] Based on the above-mentioned scheduler design, the base station can also control user data transmission according to the scheduling image generated by the scheduler, thereby achieving the effect of reducing the energy consumption of the user equipment, including the following steps:
[0303] Step 1-0: The base station preconfigures the user. This preconfiguration helps the user equipment operate effectively under the above-designed scheduling algorithm, such as operating in an energy-saving manner. The preconfiguration message includes at least one of the following information:
[0304] ■ Scheduling window configuration information, which indicates the configuration used when scheduling users, so that users can determine how they are scheduled and ensure correct data transmission and reception. This information includes at least one of the following:
[0305] ● First starting offset information, such as subframe number, number of subframes, symbol number, number of symbols, etc. Based on this information, the user equipment can know the starting position of the scheduling window.
[0306] ●First length information (length), which indicates the length of a time window for scheduling users.
[0307] ●First period information (period), which indicates the period in which the window appears.
[0308] ●First valid time information, which indicates the time for continuously using the configuration information of the scheduling window. In an example, only within the valid time, the user equipment will be scheduled by the new scheduler designed above.
[0309] ■ Energy-saving configuration information, which is used to provide users with energy-saving configurations to help them save energy. This information includes at least one of the following:
[0310] ● Second starting offset information, such as subframe number, number of subframes, symbol number, number of symbols, etc. Based on this information, the user equipment can know the starting position of energy saving.
[0311] ● The second period information (period) indicates the period during which the user monitors downlink signals (such as the Physical Downlink Control Channel (PDCCH)). That is, the user equipment needs to wake up for at least one time slot according to the period. For example, if the period is set to 8 time slots, the user equipment needs to wake up once every 8 time slots, such as time slots 1 to 16. The user needs to wake up in time slots 1 and 9 to monitor downlink signals. Furthermore, when the user equipment receives the sleep indication information sent by the base station (such as the first indication information in steps 1-3 below), the user will not monitor downlink signals in the remaining time slots within the period.
[0312] Step 1-1: The base station generates a scheduling image (i.e., a matrix with rows representing user devices or services and columns representing time slots) based on the above-designed scheduler. Based on this scheduling image, the base station determines the number of bits to be scheduled for transmission for each user in each time slot. If the number of bits is zero in a time slot, no scheduling is required for this user.
[0313] Step 1-2: The base station allocates physical resources and transmits data based on the number of bits that each user needs to be scheduled in each time slot obtained in step 1-1. In one example, the base station will transmit the number of bits that each user is scheduled to be scheduled in a time slot generated in step 1-1 at its maximum capacity. After each time slot, the base station will update the data in the cache of each user. If the transmission is successful, it will be removed from the cache; otherwise, it will remain in the cache. If new data arrives within a time slot, the base station will also treat the newly arrived data as part of the data in the cache. In order to determine the amount of data that the final scheduled user should transmit in a time slot, at least one of the following parameters needs to be considered:
[0314] ■Scheduled data amount: The amount of data scheduled for a user in a time slot obtained in step 1-1, such as the number of bits.
[0315] ■ Cache data volume: The amount of data in the user cache at the beginning of a time slot.
[0316] ■Maximum transmission data volume: The maximum amount of data that a user device can transmit in one time slot (this depends on the user device's channel, wireless resource occupancy, etc.).
[0317] The amount of data finally scheduled for transmission is the minimum value of the above parameters.
[0318] Step 1-3: The base station sends the first indication message of data transmission to the user. The purpose of this information is to indicate whether the user has data to transmit in the next time slot, or to indicate whether the user equipment needs to monitor the downlink signal (such as PDCCH) in the next time slot. If the indication information indicates that there is no data transmission, the user can choose to stop monitoring the wireless channel (such as monitoring of PDCCH), which can reduce the user's energy consumption. The method for the base station to determine the indication information includes: the base station determines whether there is data in the cache of the user equipment before the start of the next time slot, or determines whether the minimum value of the above-mentioned scheduled data amount, cached data amount and maximum transmission data amount is zero. If there is no data in the cache, or the minimum value of the above-mentioned scheduled data amount, cached data amount and maximum transmission data amount is zero, the base station sends an indication message to the user, indicating that the user has no data transmission in the subsequent time slot, or indicating that the user equipment can sleep in the subsequent time slot. The first indication information may include at least one of the following information:
[0319] ■ Sleep indication information: This information indicates that the user equipment can stop monitoring the downlink signal (such as PDCCH). In one example, the user equipment will stop monitoring the downlink signal for the remaining time of a configured cycle, such as the remaining time of the first cycle information or the second cycle information configured in the above step 1-0 (the remaining time is from the time the user equipment receives the indication information to the start of the next cycle indicated by the above first cycle information or the second cycle information).
[0320] ■ Sleep time information, which indicates the length of time the user equipment can stop monitoring the downlink signal, such as the number of time slots, the number of symbols, the above-mentioned "first cycle information" or "second cycle information"
[0321] The number of cycles indicated, etc.
[0322] In the above method, the time that the user equipment monitors downlink signals can be reduced, thereby reducing the user equipment's energy consumption. Furthermore, since the network side (the first network node) can know which time slots have no user data to send, this also saves network energy consumption. For example, within each scheduling window, the first network node determines which time slots have no users scheduled based on the above-mentioned "Method for the Base Station to Determine the Indication Information." This allows the network side to reduce signal transmission in these time slots, such as by reducing the number of activated cells and the transmission of reference signals, thereby also reducing the energy consumption of the first network node.
[0323] The above-mentioned design scheme of the scheduler may also include the design of a self-optimizer, which can be used to optimize the generator. Figure 5a An implementation of combining training, inference and liberalization is given. Figure 5 The relevant introduction is given in the previous section and will not be repeated here. For the self-optimizer, possible implementations are:
[0324] The self-optimizer includes a digital twin platform for simulating scheduling algorithms. This platform can generate scheduling data (such as scheduling images) based on different scheduling algorithms (such as the proportional fairness algorithm).
[0325] ■The self-optimizer also includes an optimal sample selector, which is used to determine the samples that can help improve the performance of the generator, and then use these samples in the training process for iterative training, thereby achieving the effect of optimizing the generator. Specifically, the selector selects the optimal
[0326] An example of a sample is as follows:
[0327] ◆Use the generator to generate scheduling data 1 (such as a scheduling image), use the scheduling data 1 for user scheduling, and evaluate the user performance 1 (such as QoS performance) that can be achieved by the scheduling data 1.
[0328] ◆Use the digital twin platform to generate scheduling data2 of other traditional scheduling algorithms (such as the proportional fairness algorithm) and evaluate the user performance2 that can be achieved by the scheduling data2 in the platform
[0329] (such as QoS performance).
[0330] ◆In one embodiment, the selector determines that the scheduling data 1 of user performance 1 is better than the user performance 2, and uses the scheduling data 1 as a training sample to perform iterative training of the generator, thereby gradually updating the generator; in another embodiment, the selector determines that the scheduling data 2 of user performance 2 is better than the user performance 1, and uses the scheduling data 2 as a training sample to perform iterative training of the generator, thereby gradually updating the generator; in another embodiment, the selector determines the optimal one between user performance 1 and user performance 2, and uses the scheduling data corresponding to the optimal one as a training sample to perform iterative training of the generator, thereby gradually updating the generator.
[0331] According to the above method, one possible effect is that the generator obtained through iterative training will produce performance that is better than other scheduling algorithms (such as the proportional fairness algorithm). Furthermore, the self-optimization method can also be applied to scenarios where network conditions change (such as the increase or decrease in the number of users served by the network, the changes in the services served by the network, and the emergence of new services on the network). The self-optimizer can obtain samples that are better than other scheduling algorithms and use these samples for iterative training of the generator. During the iterative training process, new classifications will be defined or existing classifications will continue to be used based on the network status, and these classifications will be used for training the generator. In this way, after combining with the self-optimizer, the above-mentioned generator training method can adaptively train and obtain the generator according to changes in network status,
[0332] The applicability of the generator is increased, and it can even be used to replace traditional scheduling algorithms.
[0333] In order to apply the scheduler designed by the present invention to commercial networks, the following different stages can be followed:
[0334] ■ Phase 1 (initial phase): In this phase, users are scheduled based on the traditional scheduling algorithm. The transmission matrix generated by the scheduling can be used to train the above-mentioned BAT scheduler.
[0335] ■ Phase 2 (Coexistence): In this phase, the BAT scheduler (e.g., BAT Scheduler v0.0) generated by Phase 1 training can schedule users. The scheduling of users within each time slot is determined by either BAT Scheduler v0.0 or the traditional scheduler. If BAT Scheduler v0.0 outperforms the traditional scheduler (e.g., the user achieves a higher rate in that time slot), the scheduling strategy of BAT Scheduler v0.0 is adopted; otherwise, the scheduling strategy of the traditional scheduler is adopted. The transmission matrix generated based on this method can be used for further training of the BAT scheduler.
[0336] Phase 3: In this phase, the user's scheduling is completely determined by the BAT scheduler (e.g., BAT Scheduler v1.0) trained in Phase 2. Simultaneously, a digital twin network running a traditional scheduling algorithm is also running. If the scheduling strategy generated by the digital twin network outperforms the BAT scheduler, the scheduling strategy generated by the digital twin network can be used to continue training the BAT scheduler.
[0337] ■Phase 4: In this stage, the BAT scheduler (such as BAT scheduler v2.0) generated in Phase 3 completely replaces the traditional scheduler, and the scheduling policy generated by the BAT scheduler can be further used to train the scheduler.
[0338] Figure 6 is a block diagram of a node according to an example embodiment of the present disclosure. A node is used as an example to illustrate its structure and functions, but it should be understood that the structure and functions shown are also applicable to a base station (or a centralized unit of a base station, or a control plane portion of a centralized unit of a base station, or a user plane portion of a centralized unit of a base station, or a distributed unit of a base station, or a network node, etc.).
[0339] refer to Figure 6Node 1000 includes a transceiver 1010, a controller 1020, and a memory 1030. Under the control of controller 1020 (which may be implemented as one or more processors), node 1000 (including transceiver 1010 and memory 1030) is configured to perform the node operations described herein. Although transceiver 1010, controller 1020, and memory 1030 are shown as separate entities, they may be implemented as a single entity, such as a single chip. Transceiver 1010, controller 1020, and memory 1030 may be electrically connected or coupled to each other. Transceiver 1010 may send and receive signals to and from other network entities, such as another node and / or UE. In one embodiment, transceiver 1010 may be omitted. In this case, controller 1020 may be configured to execute instructions (including computer programs) stored in memory 1030 to control the overall operation of node 1000, thereby implementing the node operations described herein.
[0340] According to some embodiments, the user equipment described in the present disclosure may include: a cellular or other communication device having a single-line display or a multi-line display or a cellular or other communication device without a multi-line display; a PCS (Personal Communications Service) that can combine voice, data processing, fax and / or data communication capabilities; a PDA (Personal Digital Assistant) that can include a radio frequency receiver, a pager, Internet / intranet access, a web browser, a notepad, a calendar and / or a GPS (Global Positioning System) receiver; a conventional laptop and / or palmtop computer or other device that has and / or includes a radio frequency receiver. The "terminal" and "terminal device" used herein can be portable, transportable, installed in a vehicle (air, sea and / or land), or suitable for and / or configured to operate locally, and / or in a distributed form, operate at any other location on the earth and / or space. The "terminal" and "terminal device" used here can also be a communication terminal, an Internet terminal, a music / video playback terminal, for example, a PDA, an MID (Mobile Internet Device) and / or a mobile phone with music / video playback function, or a smart TV, a set-top box and other devices.
[0341] Those skilled in the art will recognize that the present disclosure can be implemented in other specific forms without changing the technical ideas or basic features of the present disclosure. Therefore, it should be understood that the above embodiments are merely examples and are not limiting. The scope of the present disclosure is defined by the appended claims, rather than by the detailed description. Therefore, it should be understood that all modifications or variations derived from the meaning and scope of the appended claims and their equivalents are within the scope of the present disclosure.
[0342] In the above-described embodiments of the present disclosure, all operations and messages may be selectively performed or omitted. Furthermore, the operations in each embodiment need not be performed sequentially, and the order of operations may vary. Messages need not be transmitted in sequence, and the order in which messages are transmitted may vary. Each operation and each message transmission may be performed independently.
[0343] While the present disclosure has been shown and described with reference to various embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made without departing from the spirit and scope of the present disclosure as defined by the appended claims and their equivalents.
Claims
1. A method performed by a first network node in a wireless communication system, comprising: Sending a first configuration message for configuring a scheduling window and / or energy-saving related information of the first node to the first node; generating scheduling information of at least one first node within at least one time unit based on a scheduling module trained by a generative network; Sending a first indication message to the first node for instructing the first node to monitor a downlink signal; The scheduling information is obtained based on a matrix or an image generated by the scheduling module.
2. The method according to claim 1, in, The scheduling module obtained by generative network training includes a classifier, at least one generator and a scheduler; and The classifier is used to generate different types of indication information about the input data; The generator generates the scheduling information according to the different types of indication information generated by the classifier; The scheduler schedules data transmission of the first node according to the scheduling information.
3. The method according to claims 1 and 2, in, For the one time slot of the first node, the scheduling information further includes at least one of the following information: bit number information, resource allocation information, and indication information of the type of transmission service.
4. The method according to claim 1, in, The first configuration message includes at least one of the following information: scheduling window configuration information, and energy-saving configuration information; The configuration information of the scheduling window includes at least one of first starting offset information, first length information, first period information and first effective time information.
5. The method according to claim 1, in, The first indication message includes at least one of the following information: sleep indication information and sleep time information.
6. The method according to claim 2, in, Input data for the classifier includes at least one of the following information: information related to a buffered data volume, information related to an arrived data volume, information related to a transmitted data volume, information related to channel quality, information related to physical resources (such as resource blocks), information related to a user's location, and fingerprint information of a wireless environment; The output data of the classifier is the different types of indication information, including at least one of the following information: a numerical value of a category, a vector of a category, a sequence of a category, and a token of a category.
7. The method according to claim 2, in, The classifier may further include a predictor for predicting information related to the next scheduling window; and The output of the predictor is used by a classifier to generate the output data.
8. The method according to claim 2, in, The at least one generator is selected according to the output data of the classifier to generate the scheduling information.
9. The method according to claim 2, in, The classifier may also generate first classification information and second classification information; and The first classification information is used by a first generator among the at least one generator to generate the scheduling information, and the second classification information is used by a second generator among the at least one generator to generate the scheduling information.
10. The method according to claim 2, in, The at least one generator is trained based on a conditional adversarial generative network.
11. A method performed by a first node in a wireless communication system, comprising: receiving, from a first network node, a first configuration message for configuring a scheduling window and / or energy saving-related information of the first node; being scheduled by the first network node, wherein the scheduling is performed based on scheduling information of at least one first node within at least one time unit generated by a scheduling module obtained through generative network training; as well as receiving, from the first network node, a first indication message for instructing the first node to monitor a downlink signal; The scheduling information is obtained based on a matrix or an image generated by the scheduling module.
12. The method according to claim 11, in, The scheduling module obtained by generative network training includes a classifier, at least one generator and a scheduler; and The classifier is used to generate different types of indication information about the input data; The generator generates the scheduling information according to the different types of indication information generated by the classifier; The scheduler schedules data transmission of the first node according to the scheduling information.
13. The method according to claim 11, in, For the one time slot of the first node, the scheduling information further includes at least one of the following information: bit number information, resource allocation information, and indication information of the type of transmission service.
14. The method of claim 11, further comprising: in, The first configuration message includes at least one of the following information: scheduling window configuration information, and energy-saving configuration information; The configuration information of the scheduling window includes at least one of first starting offset information, first length information, first period information and first effective time information.
15. A first network node or a first node in a wireless communication system, comprising: transceiver, used to send and receive signals; as well as A controller is coupled to the transceiver and configured to execute the method according to one of the preceding corresponding claims.