Dynamic pairing of massive MIMO end units based on predicted and real-time link state
Patent Information
- Application Number
- DE112023004362
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-10-18
- Filing Date
- 2023-07-21
- Publication Date
- 2025-08-07
- Estimated Expiration
- 2043-07-21
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
BACKGROUND
[0001] The present invention relates to massively multiple-input and multiple-output (MIMO), and more particularly, this invention relates to dynamic pairing of massive MIMO end units based on predicted and real-time link state.
[0002] Massive MIMO is a key technology enabling 5G and future wireless technologies to improve the capacities of end units and radio cells, in part due to the effective use of time / frequency resources by incorporating multi-user MIMO (MU-MIMO) mode. The use of multiple radio antennas allows beams to be directed to different end units, with each beam spatially counteracting interference from the others. This, in turn, leads to higher link capacities for base stations.
[0003] Massive MIMO assumes a high number of transmit and receive antennas. Such a massive number of antennas provides significant gains in multiplexing and diversity, allowing a larger number of users to be served in parallel. By increasing the number of transmit antennas, a higher data rate can be achieved without increasing bandwidth. This is because adding multiple antennas, in addition to the time and frequency dimensions, allows for a higher degree of freedom in wireless channels, providing a higher data rate.
[0004] In addition, massive MIMO combined with beamforming typically minimizes intracellular and inter-cell interference by narrowing and focusing the radiated energy toward the intended user.
[0005] There are two different MIMO cases: transmit diversity, where the same data is transmitted through multiple antennas simultaneously to increase the signal-to-interference-and-noise ratio (SINR), and spatial multiplexing, where independent data streams are transmitted on each antenna to increase capacity. Thus, in practice, massive MIMO holds great promise for significantly increasing capacity and achieving service improvements in cellular network environments. However, capacity and service improvements are closely dependent on the end unit's motion state, payload requirements, and the channel quality perceived by the end unit. Since cell capacity and service improvement can only be improved by grouping end users, and the increased number of users, which does not follow orthogonality, can lead to interference, the perceived service quality is often reduced.
[0006] In a real-world environment, some end units exhibit a virtually motionless state, while others exhibit a more intensely moving state. The current design of the MU-MIMO methodology is highly sensitive to the end unit's motion state, and as a result, capacity gains and service improvements are significantly negatively impacted by the end units' more intensely moving states.
[0007] Another problem arises when some end units have limited user-plane payload requirements while others have higher user-plane payload requirements. In its current design, MU-MIMO performance is relatively reduced in low-payload scenarios; therefore, data traffic must be considered for MU-MIMO efficiency.
[0008] Another case concerns the channel signal quality perceived by the end unit at cell edge locations or in interference areas due to multiple servers. For different end units, the quality may vary due to varying path loss, receiver sensitivity, or the type of unit used. Each end unit may have different capabilities, such as which specific carrier it supports, signal reception sensitivity, etc. Since the channel estimation may not be optimal in this case, the wrong MIMO mode may be selected. As a result, in this massive MIMO scenario, although the cell capacity is significantly increased, the service experience may become unacceptable.
[0009] Channel orthogonality between multiple end units is an important criterion for creating user separability and enabling the opportunity for simultaneous sharing of radio frequency resources. With mobility, there is an additional need to adjust beamforming weight assignments to not only maintain signal performance at the user end (e.g., beam quality) but also continuously limit inter-user interference experienced between users assigned the same radio resource allocations. Control programs also fail to realize potential multiplexing gains when fewer radio resource blocks are shared between users within the same cell, reducing spectral efficiency.
[0010] In situations where MU-MIMO end-unit pairing is not performed optimally, typical impacts include higher signaling, suboptimal Radio Resource Control (RRC) message flow, battery depletion, performance degradation, SRS resource degradation, etc. SUMMARY
[0011] A computer-implemented method for grouping units in a cellular network based on massively multiple input and multiple output (massive MIMO) according to one embodiment comprises determining motion states of end units in a cell of the cellular network based on massive MIMO, estimating payload requirements of the end units, and grouping the end units into a group based on the determined motion states and the estimated payload requirements.
[0012] A computer program product according to one embodiment comprises one or more computer-readable storage media and program instructions stored together on the one or more computer-readable storage media. The program instructions include program instructions for performing the above method.
[0013] A system according to one embodiment comprises a processor and logic integrated with the processor, executable by the processor, or integrated with the processor and executable by the processor. The logic is configured to perform the above method.
[0014] Other aspects and embodiments of the present invention will become apparent from the following detailed description, which, taken in conjunction with the drawings, illustrates by way of example the principles of the invention. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a diagram of a computing environment according to an embodiment of the present invention. Fig. 2 is a flowchart of a method according to an embodiment of the present invention. Fig. 3 shows an architecture for evaluating a motion state of an end unit according to an embodiment. Fig. 4 shows a table correlating motion state observations with time of day and the corresponding flag as predictable or unpredictable, according to one embodiment. Fig. 5 shows an analysis system and parameters input to an analysis block according to one embodiment. Fig. 6 shows a massive MIMO system with multiple base stations and analysis layers according to one embodiment. Fig. 7 shows the massive MIMO system of Fig. 6, after end unit groupings have been performed, according to one embodiment. DETAILED DESCRIPTION
[0015] The following description is intended to illustrate the general principles of the present invention and is not intended to limit the inventive concepts claimed herein. Furthermore, certain features described herein may be used in combination with other described features in any of the various possible combinations and permutations.
[0016] Unless specifically defined otherwise herein, all terms shall be interpreted as broadly as possible, including meanings that emerge from the description as well as meanings as understood by one skilled in the art and / or as defined in dictionaries, treatises, etc.
[0017] It should also be noted that, as used in the specification and the appended claims, the singular forms "a," "an," and "the" include plural referents unless otherwise indicated. It is further understood that the terms "comprises" and / or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0018] The following description discloses several preferred embodiments of systems, methods, and computer program products for dynamic pairing of massive MIMO end units based on predicted and real-time link state.
[0019] In a general embodiment, a computer-implemented method for grouping units in a massively multiple input and multiple output (MIMO) cellular network comprises determining motion states of end units in a cell of the cellular network based on massive MIMO, estimating payload requirements of the end units, and grouping the end units into a group based on the determined motion states and the estimated payload requirements.
[0020] In another general embodiment, a computer program product comprises one or more computer-readable storage media and program instructions stored together on the one or more computer-readable storage media. The program instructions include program instructions for performing the above method.
[0021] In another general embodiment, a system comprises a processor and logic integrated with the processor, executable by the processor, or integrated with the processor and executable by the processor. The logic is configured to perform the above method.
[0022] Various aspects of the present disclosure are described by narrative text, flowcharts, block diagrams of computer systems, and / or block diagrams of machine logic included in computer program product (CPP) embodiments. With respect to any flowchart, depending on the technology involved, the operations may be performed in a different order than that presented in a given flowchart. For example, again depending on the technology involved, two operations presented in consecutive blocks of a flowchart may be performed in reverse order, as a single integrated step, concurrently, or at least partially overlapping in time.
[0023] A computer program product embodiment (a "CPP embodiment" or a "CPP") is a term used in the present disclosure to describe any group of one or more storage media (also referred to as "media") included together in a group of one or more storage units, which together comprise machine-readable code corresponding to instructions and / or data for performing computer operations specified in a given CPP claim. A "storage unit" is any tangible unit capable of storing and retaining instructions for use by a computer processor.Without limitation, the computer-readable storage medium may be an electronic storage medium, a magnetic storage medium, an optical storage medium, an electromagnetic storage medium, a semiconductor storage medium, a mechanical storage medium, or any suitable combination of the foregoing. Some known types of storage devices that comprise these media include: a floppy disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), compact disc read-only memory (CD-ROM), digital versatile disc (DVD), a memory stick, a floppy disk, a mechanically encoded device (such as punched cards or pits / ridges formed in a major surface of a disk), or any suitable combination of the foregoing.A computer-readable storage medium, as used in the present disclosure, is not to be construed as storing transient signals as such, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide, light pulses traveling through an optical fiber cable, electrical signals transmitted over a wire, and / or other transmission media. As one of ordinary skill in the art will understand, data is typically moved at some occasional time during normal operations of a storage device, such as during access, defragmentation, or garbage collection, but this does not make the storage device transient because the data is non-volatile while stored.
[0024] The computing environment 100 includes an example of an environment for executing at least some of the computer code involved in performing the inventive methods, e.g., the massive MIMO pairing code 150. In addition to block 150, the computing environment 100 includes, for example, a computer 101, a wide area network (WAN) 102, an end user device (EUD) 103, a remotely located server 104, a public cloud 105, and a private cloud 106.In this embodiment, the computer 101 comprises a processor group 110 (comprising a processor circuit system 120 and a cache 121), a communication architecture 111, a volatile memory 112, a persistent memory 113 (comprising an operating system 122 and the block 150, as identified above), a peripheral device group 114 (comprising a user interface (UI) device group 123, a memory 124, and an Internet of Things (IoT) sensor group 125), and a network module 115. The remote server 104 comprises a remote database 130. The public cloud 105 comprises a gateway 140, a cloud orchestration module 141, a host physical machine group 142, a virtual machine group 143, and a container group 144.
[0025] The COMPUTER 101 may take the form of a desktop computer, a laptop computer, a tablet computer, a smartphone, a smartwatch or other wearable computer, a mainframe computer, a quantum computer, or any other form of computer or mobile device known today or developed in the future that is capable of executing a program, accessing a network, or querying a database such as the remote database 130. As is well known in the computer arts, and depending on the technology, the performance of a computer-implemented method may be distributed among multiple computers and / or between multiple locations. On the other hand, the detailed description in this illustration of the computing environment 100 focuses on a single computer, specifically the computer 101, in order to keep the illustration as simple as possible.The computer 101 may be located in a cloud, although it may be located in . Fig. 1 is not depicted in a cloud. On the other hand, it is not required that computer 101 be located in a cloud, except to the extent expressly stated.
[0026] Processor group 110 includes one or more computer processors of any type known today or developed in the future. Processing circuitry 120 may be distributed across multiple packages, for example, multiple coordinated integrated circuit chips. Processing circuitry 120 may implement multiple processor threads and / or multiple processor cores. Cache 121 is memory located within the processor chip package(s) and is typically used for data or code that should be available for rapid access by the threads or cores executing on processor group 110. Cache memories are typically organized into multiple levels, which depend on their relative proximity to the processing circuitry. Alternatively, some or all of the cache for the processor group may be located "off-chip."In some computing environments, the processor group 110 may be configured to work with qubits and perform quantum computing.
[0027] Computer-readable program instructions are typically loaded onto computer 101 to cause a series of operational steps to be performed by processor group 110 of computer 101, thereby effecting a computer-implemented method, such that the so-executed instructions instantiate the methods specified in flowcharts and / or narrative descriptions of computer-implemented methods included in this document (collectively, described as "the inventive methods"). These computer-readable program instructions are stored in various types of computer-readable storage media, such as cache 121 and the other storage media described below. The program instructions and associated data are accessed by processor group 110 to control and direct the performance of the inventive methods.In the data processing environment 100, at least some of the instructions for performing the inventive methods in block 150 may be stored in the persistent memory 113.
[0028] The communication architecture 111 is the signal pathway that enables the various components of the computer 101 to communicate with each other. Typically, this architecture is made up of switches and electrical pathways, such as the switches and electrical pathways that make up buses, bridges, physical input / output ports, and the like. Other types of signal pathways may be used, such as fiber optic pathways and / or wireless pathways.
[0029] Volatile memory 112 is any type of volatile memory known today or developed in the future. Examples include dynamic-type random access memory (RAM) or static-type RAM. Typically, volatile memory 112 is characterized by random access, but this is not required unless explicitly stated. In computer 101, volatile memory 112 is arranged in a single package and located within computer 101, but alternatively or additionally, volatile memory may be distributed across multiple packages or located external to computer 101.
[0030] Persistent storage 113 is any form of non-volatile computer memory known today or developed in the future. The non-volatility of this memory means that the stored data is retained regardless of whether power is supplied to the computer 101 and / or directly to persistent storage 113. Persistent storage 113 may be read-only memory (ROM), but typically at least a portion of the persistent storage allows data to be written, erased, and overwritten. Some known forms of persistent storage include magnetic disks and solid-state storage devices. Operating system 122 may take several forms, such as various known proprietary operating systems or open-source Portable Operating System Interface-type operating systems employing a system kernel.The code included in block 150 typically includes at least some of the computer code involved in performing the inventive methods.
[0031] The PERIPHERAL UNIT GROUP 114 comprises the group of peripheral units of the computer 101. Data exchange connections between the peripheral units and the other components of the computer 101 can be realized in various ways, such as Bluetooth connections, near field communication (NFC) connections, connections made by cables (e.g., Universal Serial Bus (USB) type cables), plug-in type connections (e.g., a Secure Digital (SD) card), connections made by local communication networks, and even connections made by wide area networks such as the Internet.In various embodiments, the UI unit group 123 may include components such as a display screen, a speaker, a microphone, wearable devices (such as glasses and smartwatches), a keyboard, a mouse, a printer, a touchpad, game controllers, and haptic devices. The memory 124 is external storage, e.g., an external hard drive, or pluggable storage, e.g., an SD card. The memory 124 may be permanent and / or volatile. In some embodiments, the memory 124 may take the form of a quantum computing memory device for storing data in the form of qubits.In embodiments where computer 101 is required to have a large amount of memory (e.g., where computer 101 locally stores and manages a large database), this memory may be provided by peripheral storage devices designed to store very large amounts of data, such as a storage area network (SAN) shared by multiple geographically distributed computers. IoT sensor array 125 is composed of sensors that can be used in Internet of Things applications. For example, one sensor may be a thermometer and another sensor may be a motion detector.
[0032] The network module 115 is the collection of computer software, hardware, and firmware that enables the computer 101 to communicate with other computers over the wide area network 102. The network module 115 may include hardware such as modems or Wi-Fi signal transceivers, software for packing and / or unpacking data packets for communication network transmission, and / or web browser software for exchanging data over the Internet. In some embodiments, the network control functions and network forwarding functions of the network module 115 are performed on the same physical hardware device. In other embodiments (e.g., embodiments utilizing software-defined networking (SDN)), the control functions and forwarding functions of the network module 115 are performed on physically separate devices, such that the control functions manage multiple different network hardware devices.Computer-readable program instructions for performing the inventive methods can typically be downloaded to the computer 101 from an external computer or external storage device through a network adapter card or network interface included in the network module 115.
[0033] The WAN 102 is any wide-area network (e.g., the Internet) capable of exchanging computer data over non-local distances using any computer data exchange technology known today or developed in the future. In some embodiments, the WAN 102 may be replaced or supplemented by local area networks (LANs) designed to exchange data between devices located within a local area, such as a Wi-Fi network. The WAN and / or LANs typically include computer hardware such as copper transmission cables, fiber optic cables, wireless transmission, routers, firewalls, switches, gateway computers, and edge servers.
[0034] The end-user device (EUD) 103 is any computer system used and controlled by an end user (e.g., a customer of a company operating the computer 101) and may take any of the forms described above in connection with the computer 101. The EUD 103 typically receives helpful and useful data from the operations of the computer 101. For example, in a hypothetical case where the computer 101 is configured to provide a recommendation to an end user, that recommendation would typically be communicated from the network module 115 of the computer 101 to the EUD 103 over the WAN 102. In this way, the EUD 103 may display or otherwise present the recommendation to an end user. In some embodiments, the EUD 103 may be a client device, such as a thin client, a heavy client, a mainframe, a desktop computer, etc.
[0035] The remote server 104 is any computer system that provides at least some data or functionality to the computer 101. The remote server 104 may be controlled and used by the same organization that operates the computer 101. The remote server 104 represents the machine(s) that compile and store helpful and useful data for use by other computers, such as the computer 101. For example, in a hypothetical case where the computer 101 is designed and programmed to make a recommendation based on historical data, this historical data may be provided to the computer 101 from the remote database 130 of the remote server 104.
[0036] The PUBLIC CLOUD 105 is any computer system available for use by multiple organizations and providing on-demand availability of computer system resources and / or other computing capabilities, particularly data storage (cloud storage) and computing power, without direct active management by the user. Cloud computing typically utilizes resource sharing to achieve coherence and economy in large quantities. The direct and active management of the computing resources of the public cloud 105 is performed by the computer hardware and / or software of the cloud orchestration module 141.The computing resources provided by the public cloud 105 are typically implemented by virtual computing environments running on various computers that constitute the computers of the host physical machine group 142, which is the totality of the physical computers in the public cloud 105, and / or the totality of the physical computers available to the public cloud 105. The virtual computing environments (VCEs) typically take the form of virtual machines from the virtual machine group 143 and / or containers from the container group 144. It is understood that these VCEs can be stored as images and transferred among and between the various physical machine hosts, either as images or after instantiation of the VCE.The cloud orchestration module 141 manages the transfer and storage of images, deploys new VCE instantiations, and manages active VCE deployment instantiations. The gateway 140 is the collection of computer software, hardware, and firmware that enables the public cloud 105 to exchange data over the WAN 102.
[0037] The following provides some further explanation of virtualized computing environments (VCEs). VCEs can be stored as "images." A new active instance of the VCE can be instantiated from the image. Two common types of VCEs are virtual machines and containers. A container is a VCE that utilizes operating system-level virtualization. This refers to an operating system feature in which the system kernel allows the existence of multiple isolated user-space instances, called containers. These isolated user-space instances typically behave like real computers from the perspective of programs running within them. A computer program running on a regular operating system can utilize all of that computer's resources, such as connected devices, files and folders, network shares, CPU power, and quantifiable hardware capabilities.However, programs running inside a container can only use the contents of the container and units assigned to the container, a feature known as containerization.
[0038] The private cloud 106 is similar to the public cloud 105, except that the computing resources are available for use only by a single enterprise. Although the private cloud 106 is depicted as being in communication with the WAN 102, in other embodiments, a private cloud may be completely disconnected from the internet and accessible only through a local / private network. A hybrid cloud is a collection of multiple clouds of different types (e.g., private, community, or public cloud types), often each implemented by different vendors. Each of the multiple clouds remains a separate and discrete organization, but the larger hybrid cloud architecture is held together by a standardized or proprietary technology that enables orchestration, management, and / or data / application portability between the multiple sub-clouds.In this embodiment, the public cloud 105 and the private cloud 106 are both part of a larger hybrid cloud.
[0039] In some aspects, a system according to various embodiments may include a processor and logic integrated with and / or executable by the processor, wherein the logic is configured to perform one or more of the process steps recited herein. The processor may have any configuration as described herein, e.g., a discrete processor or processing circuitry comprising multiple components, such as processing hardware, memory, I / O interfaces, etc. By "integrated with" is meant that the processor has logic embedded therein as hardware logic, such as an application-specific integrated circuit (ASIC), an FPGA, etc. By "executable by the processor" is meant that the logic is hardware logic; software logic, e.g., firmware, a part of an operating system, a part of an application program; etc.or is a combination of hardware and software logic accessible by the processor and configured to cause the processor to perform a functionality upon execution by the processor. Software logic may be stored on local and / or remote memory of any type of memory known in the art. Any processor known in the art may be used, e.g., a software processor module and / or a hardware processor such as an ASIC, an FPGA, a central processing unit (CPU), an integrated circuit (IC), a graphics processing unit (GPU), etc.
[0040] Of course, this logic may be implemented as a method on any device and / or as a system or as a computer program product according to various embodiments.
[0041] Various embodiments described herein are implemented in conjunction with massive MIMO, e.g., to serve multiple end units sharing the same resources. Any configuration of a known massive MIMO network may be adapted according to the teachings herein, including known types of cellular networks based on massive MIMO. In various embodiments, the number of end units connected to a base station is much less than the number of antennas coupled to the base station. Beamforming of a known type is applied to enhance communication between the base station and an end unit. The end units may be any type capable of connecting to the network, such as a cellular phone, a tablet, a smartwatch, a mobile hotspot, etc.
[0042] To support Massive MIMO, there is a need for effective end-unit pairing along with beamforming solutions, and these actions should be intelligently executed at a lower hierarchy of the radio base station protocol stack. In the current state of the art, there is no efficient way to predict the movement state of end units at base stations; therefore, all end units within the coverage area of base station cells are treated equally, regardless of their movements. Furthermore, there is currently no efficient way to predict end-unit payload requirements at base stations, as base stations provide the physical resource blocks (PRBs) or similar attributes for allocating payloads and services, but cannot determine the amount and peaks of traffic that may be required by the end units and / or their applications.Furthermore, base stations currently do not have a central organization that has the ability to analyze and accordingly shift data traffic to a neighboring cell, or the ability to pull data traffic from a neighboring cell.
[0043] To optimize and automate the complex process of determining the correct group of end-unit clustering for effective massive MIMO implementations, various embodiments of the present invention enable an analytics layer that supports artificial intelligence (AI) / machine learning (ML) modeling and predictive learning at a higher layer, with inference capability at a lower layer of autonomous control loop operations. This higher layer may include end-unit-specific information regarding predicted motion state, user-plane traffic requirements, beamforming management, and cell-edge end-user quality with end-unit capabilities.In some approaches, such information is fed into an analysis engine, which helps dynamically predict the configuration upon aggregation, thus assisting the base station in selecting the optimal end-unit grouping in near real time. A higher-layer training model can make decisions about the end-unit grouping to optimize it. Beam optimization via optimal end-unit grouping improves the performance of the massive MIMO system, allowing lower protocol layers of the base station to implement the effective scheduling mechanism.
[0044] Now referring to Fig. 2, there is shown a flowchart of a method 200 for grouping end units in a cellular network based on massive MIMO according to one embodiment. The method 200 may be performed according to the present invention in various embodiments, including, but not limited to, any of the environments described in Fig. 1. Of course, the method 200 may include more or fewer operations than those specifically described in Fig. 2 as will be understood by a person skilled in the art after reading the present descriptions.
[0045] Each of the steps of method 200 may be performed by any suitable component of the operating environment. For example, in various embodiments, method 200 may be performed partially or entirely by a massive MIMO-based cellular network, components thereof, or another device having one or more processors therein. The processor, e.g., a processing circuit(s), a chip(s), and / or a module(s), implemented in hardware and / or software and preferably comprising at least one hardware component, may be used in any device to perform one or more steps of method 200. Example processors include, but are not limited to, a central processing unit (CPU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), etc., combinations thereof, or any other suitable data processing unit known in the art.
[0046] As in Fig. 2, the method 200 may begin with operation 202, wherein movement states of end units in a cell of the cellular network are determined based on massive MIMO. At operation 204, payload requirements of the end units are estimated. At operation 206, the end units are grouped into a group based on the determined movement states and the estimated payload requirements. Once the group(s) are created, system resources may be allocated to the end units in each group in any manner apparent to one of ordinary skill in the art after reading the present disclosure. Further details about each of these operations are provided below, including example embodiments, as well as how the grouping is used in the network.
[0047] In a preferred embodiment, the movement states of the end units are collected, e.g., at predetermined intervals, continuously, according to a predefined plan, after the occurrence of an event, etc. Preferably, the movement states are collected in a layer of a higher hierarchy of the system that performs the method.
[0048] Fig. 3 shows an architecture 300 for evaluating a motion state of an end unit according to one embodiment. Optionally, the present architecture 300 may be implemented in conjunction with features from any other embodiment listed herein, such as those described with reference to the other FIGS. Of course, however, such architecture 300 and others presented herein may be used in various applications and / or permutations, which may or may not be specifically described in the illustrative embodiments listed herein. Furthermore, the architecture 300 presented herein may be used in any desired environment.
[0049] Information about the positions of the end units (which may be located indoors or outdoors) can be collected based on any known position measurement mechanism 302. Example position measurement mechanisms include: ▪ GPS ▪ Positioning reference signal (PRS) ▪ Triangulation method ▪ Handover count between radio cells ▪ Beam configuration change in MAC layer ▪ Coverage / quality change ▪ Angle of incidence ▪ Time progress ▪ Enhanced Cell ID (E-CID) ▪ Observed Time Difference Of Arrival (OTDOA) ▪ Assisted Global Navigation Satellite System (A-GNSS) ▪ Handover.
[0050] Information from the position measurement mechanism is fed to the motion state block 304, which performs the function of determining and grouping the end units based on their motion state. By taking the motion states of the end units into account, the problem of an end unit in a group moving and thus changing the signal properties in such a way that the end unit now interferes with communications of another end unit in the group can be mitigated.
[0051] In some approaches, each end unit is differentiated based on one of a plurality of predefined states. The predefined states can represent different motion states of an end unit according to any desired distinction. An illustrative set of motion states follows, presented merely as examples.
[0052] No-motion state: These end devices are classified as no-motion or minimal-motion devices. Examples of end devices that typically exhibit a no-motion state include Internet of Things (IoT) devices with smart meters, static user devices, etc.
[0053] Low-motion condition: These end units are classified as relatively slow-motion units, meaning their perceived conditions change slowly, which in turn means there are no abrupt changes in channel conditions from the end units. Examples of end units that typically exhibit a low-motion condition include those associated with pedestrian traffic, units used within a single building, etc.
[0054] Medium-motion state: These end units are classified as units with moderate speeds and / or units capable of accessing heavier user-plane traffic. Such end units may be associated with sudden changes in channel conditions on a reported channel toward the base station. Examples of end units exhibiting a medium-motion state include autonomous vehicles in cities, etc.
[0055] High-speed and ultra-high-speed states: These end units are classified as high-speed or very high-speed units and are therefore predisposed to reporting sudden changes in network conditions. They are also predisposed to missing signal reception due to poor channel quality. Examples of end units exhibiting a high-speed state include units in fast-moving trains, units in motor vehicles on a highway, etc.
[0056] The movement state can be further differentiated based on predictability, e.g., as a predictable pattern 306 or an unpredictable pattern 308. For example, the movement states of the end units can be characterized based on the predictability of the end units' movement patterns. Accordingly, in some embodiments, end units with predictable movement patterns can be grouped, while end units with unpredictable movement patterns are not placed in the group, e.g., placed in another group with a lower priority that is served according to default parameters (e.g., best effort), etc.
[0057] Regarding a predictable pattern according to the movement state classification, end units can be determined to follow predictable patterns if, based on a predefined level of detail such as time of day, day of week, etc., a particular end unit identifier follows certain tendencies and / or patterns. For example, an office worker's end unit may exhibit a tendency to be in a non-movement state at certain hours on certain days, with different patterns on weekends.
[0058] If such patterns are observed, at least some of the time slots can be classified as predictable patterns. Furthermore, predictability can be used to assist the base station in resource scheduling. For example, end units with predictable patterns can be given higher priority for base station resources, at least during periods of predictable movement.
[0059] Regarding unpredictable patterns according to the movement state classification, if end units do not follow movement state patterns across the various time granularities, these cases are identified as unpredictable traffic. Preferably, such end units are not placed in the priority group, but instead grouped separately and served according to a standard duty roster, e.g., resources are scheduled in the best possible way.
[0060] A model can be trained in a known manner with exemplary tendencies and / or patterns of any desired type, and this model can be used with Kl or ML to determine whether the motion state of an end unit is to be classified.
[0061] Continuing the above example of the office worker, Fig. 4, which is an exemplary table 400 correlating observations of a movement state with the time of day and the corresponding marking as predictable or unpredictable, indicating the unpredictable period for a given time period. As indicated, movement is predictable during weekdays within the given time period, while both Saturdays have periods of an unpredictable movement state. Based on these observations, it can be predicted that the movement state of the terminal unit has a predictable movement state in all time periods presented in the table, except for Saturdays from 8:00 a.m. to 12:00 p.m., and whether the terminal unit is grouped into a particular group during a given time period can be decided based on such predictions.
[0062] Referring again to Operation 204 of the Fig. 2, the method may include collecting payload data requirements of the end unit, preferably at a higher level of a hierarchy. The collection may be performed, for example, at predetermined intervals, continuously, according to a predefined schedule, upon the occurrence of an event such as the end unit connecting to a base station, etc.
[0063] The payload requirements may be estimated, at least in part, based on factors such as applications currently running on the respective end devices, information about past usage, information about past payload requirements, etc.
[0064] Collected payload information may include the end unit's consumer application usage and / or payload / service patterns. The payload and / or service patterns may reflect payload and / or service requirements over time and / or at specific geographic locations. For example, a cell with an office building within it may see higher payload amounts utilized by end units near the building during office hours. Similarly, a particular user may stream movies on their mobile phone at home in the evening, creating a pattern of higher payload requirements during specific hours, again with a geographic correlation to the user's residence. Generating a good payload profile is useful because multi-user MIMO has higher efficiency for higher payload requirements.
[0065] Payload profiles can be generated for end units based on current unit information such as active applications and / or by collecting unit payload patterns over time. For example, payload profiles can be generated taking into account applications and end unit usage patterns by examining PRB, RRC, Physical Downlink Shared Channel (PDSCH), and / or Physical Downlink Control Channel (PDCCH) patterns. The end unit payload profiles can be used for grouping.
[0066] Example traffic profile classifications are listed immediately below.
[0067] Peaked traffic: Certain end-unit applications may experience an immediate increase in traffic requirements, followed by a decline in traffic requirements. Such traffic requirements are inconsistent, and accordingly, the end unit can be placed in a higher-hierarchy group to maintain health.
[0068] Low payload: Certain traffic requirements may require minimal payload, such as browsing websites, accessing certain applications, streaming, etc., which in turn means that end units do not need to have higher throughput requirements. Accordingly, the end unit can be placed in a group with a lower hierarchy, and state will be sufficiently maintained.
[0069] High-volume payload: Certain end-user applications may have a consistent need for higher traffic Service Level Agreements (SLAs), such as higher throughput requirements / additional capacity, so the end unit may be placed in a group with a higher hierarchy to maintain health.
[0070] The payload and / or payload profiles can be used to group end units into a group, thereby optimizing system resources. For example, if one end unit is streaming a movie and another is simply checking email every few minutes, the grouping algorithm can consider the expected relative resource requirements of the end units and place the end units into groups in such a way that data throughput is maximized without overloading the base station(s) to which they are connected and without wasting resources by reserving bandwidth for an end unit that requires minimal data transfer.
[0071] Other factors that can be considered when grouping end units include signal-to-interference-and-noise ratio (SINR) information and / or end unit capabilities. For example, grouping can be performed using motion states, estimated payload requirements, SINR information, and end unit capabilities. In another approach, some of the end units can be grouped into a beamforming unit group based on the SINR information and end unit capabilities.
[0072] SINR information and / or unit capabilities can be collected from the end units, for example, at specified intervals, continuously, according to a predefined schedule, upon the occurrence of an event, etc. If different channel quality requirements are set for different users depending on the application, this information can be collected to perform beamforming end unit grouping, for example, to obtain different SINRs across different end units within the same cell.
[0073] Another exemplary embodiment revolves around the signal quality perceived by the end unit at cell edge locations and / or in interference-prone areas due to multiple servers, since the quality may vary for different end units due to varying path loss, receiver sensitivity, and / or the type of unit used. For example, each end unit may have a different capability (e.g., supported carriers, whether massive MIMO is compatible with the end unit, etc.) and / or signal reception sensitivity than others in the cell. Since channel estimation may not be optimal in this case, e.g., where a conventional phone in a group is not compatible with massive MIMO, the wrong MIMO mode may be selected. Due to this, although the capacity of the radio cell would be significantly increased, the service experience with massive MIMO may become unacceptable.Accordingly, the desired SINR / channel quality is mapped to the service capability. In some approaches, additional end-unit capabilities, such as Frequency Group Indicator (FGI) bits, are collected and used in grouping.
[0074] In some embodiments, end units located toward an edge of the cell are pushed out of or pulled into the cell based on cell edge capacity requirements and a beamforming unit buffer. For example, where cell edge capacity requirements for the end unit grouping approach or are at a threshold, an end unit may be pushed to another grouping cell. Preferably, a communication is sent to a base station in the other cell requesting to establish communication with the end unit. Similarly, if the beamforming unit buffer approaches or is at a threshold, an end unit may be pushed to the grouped end units of another cell.Alternatively, where cell edge capacity requirements and / or the beamforming unit buffer allow for the inclusion of another end unit, an end unit may be pulled into the cell's grouped end units.
[0075] One approach to massive MIMO implementation involves collecting information about cell edge capacity requirements and beamforming end-unit buffers. This information can be used as input to push / pull traffic to the cell edges, helping to achieve effective massive MIMO operations. This can help modify configurations in near real-time.
[0076] In addition, a grouped end unit may be moved from the group to another group (including a group of non-grouped end units) due to a change in one or more of the parameters listed herein, such as the movement status, the estimated payload requirements of the end unit, the SINR information, the channel quality, etc.
[0077] Fig. 5 shows an analysis system 500 and parameters input to an analysis block, according to one embodiment. Optionally, the present system 500 may be implemented in conjunction with features from any other embodiment listed herein, such as those described with reference to the other FIGS. Of course, however, such an analysis system 500 and others presented herein may be used in various applications and / or permutations, which may or may not be specifically described in the illustrative embodiments listed herein. Furthermore, the analysis system 500 presented herein may be used in any desired environment.
[0078] An information module 502 compiles some or all of the aforementioned information types. On the left side of the module, movement information is collected. In the illustrated approach, position information is compiled from position measurement mechanisms of the end units. This information can be compiled in real time, over time, etc. The movement states of the end units are determined, and the predictability of the movement states is characterized. Other types of information collected by the module in this example include payload profiles of the end units, SINR and channel quality profiles of the end units, unit capability profiles, and cell edge capacity.
[0079] Some or all of the information compiled by information module 502 is sent to analysis block 504 for analysis. In analysis block 504, a group of end units is identified whose movement state is predictable and can be grouped according to the position profile. The analysis block also considers payload profile requirements and end unit capabilities, along with SINR / channel quality profiles, to make the optimal grouping decision with respect to resource availability at the base station.
[0080] Fig. 6 shows a massive MIMO system 600 with multiple base stations and analysis layers according to one embodiment. Fig. 7 shows the massive MIMO system 600 after unit grouping has been effectively performed. Optionally, the present system 600 may be implemented in conjunction with features from any other embodiment listed herein, such as those described with respect to the other FIGS. Of course, however, such analysis system 600 and others presented herein may be used in various applications and / or permutations, which may or may not be specifically described in the illustrative embodiments listed herein. Furthermore, the analysis system 600 presented herein may be used in any desired environment.
[0081] Firstly, referring to Fig. 6, a centralized analytics layer 602 is responsible for establishing the strategy for end-unit grouping according to various anticipated end-unit states, such as movement state, payload, unit support capability, SINR profile, etc. The centralized analytics layer 602 may gather some of the information from multiple distributed layers so that it can make centralized decisions for each anticipated end-unit. In some manifestations, the distributed analytics layer 604 leverages the centralized analytics layer 602, which may help effect a seamless shift in end-unit grouping without additional measurement messages from the end-units, e.g., by receiving support from a strategy established at the centralized analytics layer 602.
[0082] The distributed analysis layer 604 is responsible for assigning the various logical profiles based on a Data Radio Bearer (DRB) by sending RRC reconfiguration messages. The distributed analysis layer 604 groups the end units based on various criteria, preferably obtained in real time, such as payload data, movement information, position profiles, etc. The distributed analysis layer 604 groups according to strategies received from the centralized analysis layer 602, which collects and analyzes historical end unit profiles, such as movement status, payload usage, signal quality, unit capability, etc.
[0083] End units that meet the requirements for a particular group are grouped together. Many different groups can be created. All ungrouped end units are served by base station 605 with the default resource allocation (e.g., best effort).
[0084] The analysis block 500 from Fig. 5 is located in the centralized analysis layer 602 and has the ability to collect information from multiple distributed layers so that centralized decisions can be made there according to anticipated end-unit states. In preferred embodiments, no additional end-unit measurements received from the base stations 605 are required in the analysis block 500 each time decisions are to be made there. This, in turn, reduces the signaling load and improves the battery life of the end units. Instead, the analysis block 500 utilizes the analytical distributed layer 604, which can assist in the seamless relocation of end-unit groupings by receiving instructions executed by the distributed analysis layer 604.
[0085] Once the grouping is performed by the centralized higher-hierarchy analytics layer 602, the grouping criteria according to the trained model are sent to the distributed analytics layer 604. The distributed analytics layer 604 is responsible for assigning the different profiles based on the DRB by sending RRC reconfiguration messages.
[0086] The distributed analytics layer 604 can group the end unit based on various criteria, such as payload data, movement, and position profiles. Furthermore, the grouping decision can be made according to the intent sent by the centralized, higher-level analytics layer 602.
[0087] The distributed analysis layer 604 also has functionality of redistributing cell edge end units in a common radio cell for effective end unit grouping according to the information shared from the centralized analysis layer 602.
[0088] As in Fig. 7, the end units 606 are grouped into groups in response to the groupings generated by the distributed analysis layer 604. Note also that additional subdomains, e.g., with DRB, have been generated in real time by grouping the end units according to formulated strategies received from the higher analysis layers 602, 604. In this example, the end units 606 in domains 1 and 2 of the Fig. 6 Two vehicle-based units with medium motion states and two user units with low motion or no motion states. This configuration is volatile and would likely result in interference and the eventual blocking of network resources. Referring to Fig. 7, the two user units have been grouped together in domain 2.1.
[0089] Thus, a unique proposal has been described for formulating end-unit grouping strategies considering the predictability of movement states, payload requirement state, grouping buffer, and network quality in a higher analysis layer and then performing a massive MIMO end-unit grouping strategy according to analyzed predictable and unpredictable patterns.
[0090] A massive MIMO network enhanced with the features presented herein not only increases per-cell capacity but also improves the end-user experience by providing better and faster connections due to better utilization of network resources.
[0091] It is clear that the various features of the above systems and / or methodologies can be combined in any way, thereby generating a plurality of combinations from the descriptions presented above.
[0092] It is further understood that embodiments of the present invention may be provided in the form of a service deployed to a customer to provide an on-demand service.
[0093] The descriptions of the various embodiments of the present invention have been provided for illustrative purposes, but are not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terminology used herein has been chosen to best explain the principles of the embodiments, practical application, or technical improvement over current technologies, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
[1] A computer-implemented method for grouping units in a cellular network based on massively multiple input and multiple output, massive MIMO, the method comprising: Determining motion states of end units in a cell of the cellular network based on massive MIMO, Estimating end-unit payload requirements; and Grouping the end units into a group based on the determined motion states and the estimated payload requirements. [2] The computer-implemented method of claim 1, comprising characterizing the movement states of the end units based on a predictability of movement patterns of the end units, wherein end units with unpredictable movement patterns are not placed in the group. [3] Computer-implemented method according to claim 2, comprising Collecting signal-to-interference-and-noise information, SINR information, from the end units; and Perform grouping using movement states, estimated payload requirements, SINR information, and end unit capabilities. [4] Computer-implemented method according to claim 1, comprising Generating payload profiles for the end units by collecting unit payload patterns over time; and Using the end unit payload profiles for grouping. [5] The computer-implemented method of claim 4, comprising collecting signal-to-interference-and-noise information, SINR information, from the end units; and performing grouping using the motion states, the estimated payload requirements, the SINR information, and capabilities of the end units. [6] The computer-implemented method of claim 1, wherein the payload requirements are estimated at least in part based on applications running on the respective end devices. [7] Computer-implemented method according to claim 1, comprising Collecting signal-to-interference-and-noise information, SINR information, from the end units; and Grouping some of the end units into a beamforming unit group based on the SINR information and end unit capabilities. [8] The computer-implemented method of claim 1, comprising pushing one of the end units located toward an edge of the cell out of the cell based on cell edge capacity requirements and a beamforming unit buffer. [9] The computer-implemented method of claim 1, comprising pulling a new end unit located toward an edge of the cell into the cell based on cell edge capacity requirements and a beamforming unit buffer. [10] The computer-implemented method of claim 1, comprising moving an end unit from the group to another group based on a change in the movement state and the estimated payload requirement of the end unit. [11] Computer program product, wherein the computer program product comprises: one or more computer-readable storage media and program instructions stored together on the one or more computer-readable storage media, the program instructions comprising: Program instructions for determining motion states of end units in a cell of the cellular network based on massive MIMO; Program instructions for estimating payload requirements of end units; and Program instructions for grouping the end units into a group based on the determined motion states and estimated payload requirements. [12] The computer program product of claim 11, comprising program instructions for characterizing the movement states of the end units based on a predictability of movement patterns of the end units, wherein end units with unpredictable movement patterns are not placed in the group. [13] The computer program product of claim 12, comprising program instructions for collecting signal-to-interference-and-noise information, SINR information, from the end units; and performing the grouping using the motion states, the estimated payload requirements, the SINR information, and capabilities of the end units. [14] The computer program product of claim 11, comprising program instructions for generating payload profiles for the end devices by collecting device payload patterns over time; and program instructions for using the payload profiles of the end devices for grouping. [15] The computer program product of claim 11, wherein the payload requirements are estimated at least in part based on applications running on the respective end devices. [16] A computer program product according to claim 11, comprising program instructions for collecting signal-to-interference and noise information, SINR information, from the end units; and Grouping some of the end units into a beamforming unit group based on the SINR information and end unit capabilities. [17] The computer program product of claim 11, comprising program instructions for pushing one of the end units located toward an edge of the cell out of the cell based on cell edge capacity requirements and a beamforming unit buffer. [18] The computer program product of claim 11, comprising program instructions for pulling a new end unit located toward an edge of the cell into the cell based on cell edge capacity requirements and a beamforming unit buffer. [19] The computer program product of claim 11, comprising program instructions for moving an end unit from the group to another group based on a change in the movement state and the estimated payload requirement of the end unit. [20] System comprising: a processor; and logic integrated with the processor and executable by the processor, or integrated with the processor and executable by the processor, the logic being configured to: Determining motion states of end units in a cell of the cellular network based on massive MIMO; Estimating end-unit payload requirements; and Grouping the end units into a group based on the determined motion states and the estimated payload requirements.
Citation Information
Patent Citations
Apparatus and method for controlling resource allocation in a wireless communication network
US20180076937A1