Communication device, control method, and program
By designing a communication device integrating computing unit and notification unit, the problem of lack of data collection and data communication methods using machine learning in roaming in the prior art is solved, and the effect of optimizing wireless communication in roaming is achieved.
Patent Information
- Application Number
- CN202380051745.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-07-08
- Filing Date
- 2023-06-23
- Publication Date
- 2025-02-18
AI Technical Summary
The lack of frame configuration and method for data collection and data communication using machine learning in roaming is in the prior art, resulting in the inability to effectively optimize the roaming process in wireless communications.
A communication device is designed, including a computing unit and a notification unit. The computing unit determines whether to perform roaming and select a roaming target AP by collecting various information, such as STA location information, radio wave intensity threshold, number of STAs connected to AP, radio wave intensity, radio wave status and capability information of surrounding APs. The notification unit issues a notification to the connected STA when the calculation unit decides to roam necessary.
The necessity of determining suitable communications during roaming and the possibility of notifying roaming destinations is realized, and the efficiency and quality of wireless communications are improved.
Smart Images

Figure CN119487918A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a communication device that complies with the IEEE802.11 standard. Background Art
[0002] IEEE 802.11 series standards are known as communication standards related to wireless local area networks (WLANs) (hereinafter referred to as WLANs). The latest IEEE 802.11be standard achieves high peak throughput and low latency communication by using multi-link technology (Patent Document 1).
[0003] Citation List
[0004] Patent Literature
[0005] PTL 1: Japanese Patent Laid-Open No. 2018-50133 Summary of the Invention
[0006] Technical issues
[0007] For the successor to the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, the introduction of artificial intelligence (AI) and machine learning (ML) is being considered.
[0008] Meanwhile, roaming technology is known in wireless communications compliant with the IEEE 802.11 standard. Roaming allows a station (STA) connected to a certain access point (AP) to change its connection destination to another AP. For example, if the STA becomes farther away from the AP it is currently connected to, it can change its connection destination to another AP installed closer to it.
[0009] Machine learning may be used to optimize roaming in wireless communications. Conventionally, there are no frame configurations and data collection methods for data collection for implementing machine learning in roaming, and no methods for using training data.
[0010] In view of the above problems, the present invention is directed to realizing data collection and data communication thereof to enable the use of machine learning in roaming. According to another aspect of the present invention, it becomes possible to determine the necessity of roaming suitable for communication based on the collected data and notify the roaming destination.
[0011] Solution to the problem
[0012] In view of the above problems, a communication device according to one aspect of the present invention includes: a calculation unit configured to obtain part or all of a plurality of information as input data for inference, and calculate information indicating whether to perform roaming and, if roaming is performed, which access point (AP) will be roamed to; the plurality of information including station (STA) location information, a threshold value of radio wave strength in basic service set (BSS) movement, the number of STAs connected to the AP, radio wave strength to be received from the STA to which the communication device is connected, radio wave conditions of surrounding APs indicated by the STA to which the AP is connected, information indicating surrounding communication conditions indicated by the STA to which the AP is connected, frequency bands and channels supported by the STA to which the AP is connected, capability information of surrounding APs, and time series data of any of the plurality of information within a unit time; and a notification unit configured to issue a notification to at least one of the STAs to which the communication device is connected, if roaming of the STA to which the communication device is connected is necessary as a result of the calculation performed by the calculation unit.
[0013] Advantageous Effects of the Invention
[0014] According to an aspect of the present invention, it becomes possible to determine the necessity of roaming suitable for communication and to notify a roaming destination. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 illustrates an example of a network configuration.
[0016] Figure 2 An example of the hardware configuration of an access point (AP) and a station (STA) is illustrated.
[0017] Figure 3 An example of functional blocks including an AP and a STA is illustrated.
[0018] Figure 4 is a conceptual diagram illustrating a structure using a learning model including input data, a learning model, and output data.
[0019] Figure 5 An example of the system processing flow according to the present invention is illustrated.
[0020] Figure 6 is a flowchart illustrating an example of processing of an AP according to the present invention.
[0021] Figure 7 is a flowchart illustrating an example of processing of a data collection server according to the present invention.
[0022] Figure 8 is a flowchart illustrating an example of processing of an estimation server in a learning phase according to the present invention.
[0023] Figure 9 is a flowchart illustrating an example of processing of an estimation server in an estimation phase according to the present invention.
[0024] Figure 10 An example of a STA report request frame according to the present invention is illustrated.
[0025] Figure 11 An example of a STA report response frame according to the present invention is illustrated.
[0026] Figure 12 An example of STA report classification according to the present invention is illustrated. DETAILED DESCRIPTION
[0027] (First exemplary embodiment)
[0028] Figure 1 An example of a network configuration according to the first exemplary embodiment is illustrated. Figure 1 The wireless communication system shown in FIG is a wireless network including an AP 101, an STA 102, a data collection server 105, and an estimation server 106. The AP has a similar function to that of the STA except for a relay function, and thus has the form of a STA.
[0029] AP 101 communicates with each STA 102 according to a wireless communication method compliant with the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard. STA 102 within a circle 100 indicating the coverage range of a signal transmitted by AP 102 can communicate with AP 101. According to this exemplary embodiment, AP 101 and each STA 102 communicate with each other according to the IEEE 802.11 standard. AP 101 establishes wireless links 103 and 104 with each STA 102 via a predetermined association process. Although Figure 1 An example of a multi-link connection using two different links is illustrated, but the number of wireless links may be one or more than two.
[0030] AP 101 is connected to data collection server 105 and estimation server 106 via the Internet. AP 101 can be connected to data collection server 105 and estimation server 106 in any desired manner. The number of STAs and the number of APs can be two or more. For example, there may be other APs in the system that are candidates for roaming.
[0031] Figure 2The figure shows the hardware configuration of the AP and STA according to the present invention. As an example, the hardware configuration includes a storage unit 201, a control unit 202, a function unit 203, a calculation unit 204, an input unit 205, an output unit 206, a communication unit 207 and an antenna 208.
[0032] The storage unit 201 includes memories such as read-only memory (ROM) and random access memory (RAM), and stores programs for executing various operations (described below) and various information used for wireless communication (such as communication parameters). Storage media that can be used as the storage unit 201 include not only ROM and RAM, but also floppy disks, hard disks, optical disks, magneto-optical disks, compact disk read-only memory (CD-ROM), compact disk recordable (CD-R), magnetic tapes, non-volatile memory cards, and digital versatile disks (DVD). The storage unit 201 may also include multiple memories.
[0033] The control unit 202 includes, for example, a processor such as a central processing unit (CPU) and a microprocessing unit (MPU), an application-specific integrated circuit (ASIC), a digital signal processor (DSP), and a field-programmable gate array (FPGA). The CPU is an abbreviation for a central processing unit, and the MPU is an abbreviation for a microprocessing unit. The CPU executes a program stored in the storage unit 201 to control the AP. The control unit 202 can control the AP 101 through cooperation between the program stored in the storage unit 201 and an operating system (OS). The control unit 202 may include multiple processors (such as a multi-core processor) to control the AP.
[0034] The control unit 202 controls the function unit 203 to execute predetermined processing such as AP function, imaging, printing, and projection. The function unit 203 is a hardware component used by the AP to execute predetermined processing.
[0035] The computing unit 204 includes, for example, a processor such as a graphics processing unit (GPU) and a tensor processing unit (TPU), an application specific integrated circuit (ASIC), a digital signal processor (DSP), and a field programmable gate array (FPGA).
[0036] refer to Figure 1In the example shown in , the data collection server 105 and the estimation server 106 to be used for machine learning are prepared separately from the AP 101 and the STA 102, and the functions of these servers can be integrated in the AP 101 and the STA 102. In this case, the computing unit 204 operates as a hardware component for performing estimation calculations using the results of machine learning and for computing the machine learning itself. GPU is an abbreviation for graphics processing unit, and TPU is an abbreviation for tensor processing unit. TPU is an example of a systolic array type hardware processor dedicated to machine learning, and is provided with computing resources such as a buffer resistor arranged adjacent to a product sum computing unit and a product sum calculator, and an activation function implemented by hardware. The TPU includes an instruction decoder for interpreting TPU instructions for specifying a computing flow to control the above-mentioned computing resources. The TPU function is called a neural processing unit (NPU).
[0037] These processors can share some calculations to perform calculations in collaboration with the control unit 202. Since the GPU and TPU are capable of performing efficient calculations through parallel processing of large amounts of data, the processing performed by the GPU and TPU is effective in the case of performing learning multiple times by using a learning model as in deep learning. Therefore, in this exemplary embodiment, for the processing performed by the training unit of the estimation server, in addition to the control unit 202, the GPU and / or TPU are also used for the computing unit 204. More specifically, in the case of executing a training program including a learning model, the control unit 202 or the computing unit 204 performs training by performing calculations in collaboration with each other. The processing of the training unit can be performed only by the control unit 202 or the computing unit 204. The estimation unit can also use the computing unit 204 like the training unit.
[0038] The input unit 205 receives various operations from the user. The output unit 206 provides various outputs to the user. The output of the output unit 206 includes at least one of a display on the screen, a sound output by a speaker, and a vibration output. Both the input unit 205 and the output unit 206 can be implemented by a single module (such as a touch panel).
[0039] Communication unit 207 is capable of performing wireless communications that conform to the successor standard to the IEEE 802.11EHT standard (also known as the 802.11be standard), which targets a maximum transmission rate of 90 to 100 Gbps. This successor standard to the 802.11be standard aims to support high-reliability communication and low-latency communication as the next goals to be achieved. In view of the above, according to this exemplary embodiment, the successor standard to the IEEE 802.11be standard, which targets a maximum transmission rate of 90 to 100 Gbps, is tentatively referred to as IEEE 802.11HR (High Reliability).
[0040] The name IEEE 802.11HR was given for convenience, taking into account the goals to be achieved by the successor standard and the characteristics of related standards. This name may be changed during the establishment of the standard. The scope of this specification and the appended claims is essentially the successor standard of the 802.11be standard and applies to all successor standards that can support wireless communication.
[0041] The communication unit 207 performs encoding / decoding and modulation / demodulation processing on wireless communication data that conforms to the IEEE 802.11 standard series (such as the IEEE 802.11 EHT and IEEE 802.11 HR standards). The communication unit 207 also controls Wi-Fi wireless communication and Internet Protocol (IP) communication. The communication unit 207 also controls the antenna 208 to transmit and receive wireless signals used for wireless communication.
[0042] like Figure 1 As shown in , when the data collection server 105 and the estimation server 106 for machine learning are provided separately from the AP 101 and the STA 102, these servers include so-called von Neumann computers. More specifically, the server includes at least one memory and at least one processor corresponding to the control unit 204, and computing resources such as a GPU and a TPU corresponding to the computing unit 204. In this case, the GPU and TPU of the server operate as hardware components for performing estimation calculations using the results of machine learning and for computing the machine learning itself.
[0043] Figure 3 STA 102 includes a data transmission / reception unit 312 for transmitting and receiving surrounding information collected by communication unit 207 and information accumulated in storage unit 201 via communication unit 207 and antenna 208. Data storage unit 311 is used as storage unit 201.
[0044] AP 101 includes a data transmission / reception unit 303 for receiving data transmitted by STA 102 and also for transmitting data from AP 101 to STA 102. AP 101 and STA 102 perform these data communications using communication unit 207 and antenna 208. AP 101 also includes a data storage unit 301 for storing data in storage unit 201. Storage unit 201 and control unit 202 are expanded, and communication-related data management unit 302 is included. Communication-related data management unit 302 cooperates with the data collection server and estimation server to transmit input data required for training, receive estimation results, and transmit requests for them.
[0045] The data collecting server accumulates the data collected from the AP 101 and other APs in the data storing unit 321. The data accumulated in the estimation server is transmitted via the data collecting / providing unit 322 as needed.
[0046] The estimation server receives the input information and result data obtained from the data collection server, and generates a learning model via the training data generation unit 332 and the training unit 333. The generated learning model is stored in the data storage unit 331. In response to receiving an estimation value request from the AP 101, the estimation value is calculated by using the result of learning in the estimation unit 334, and the result is returned to the AP 101. If the functions of the data collection server 105 and the estimation server 106 for machine learning are incorporated into the AP 101 and / or the STA 102, then a single device (such as the AP 101 or the STA 102) includes Figure 3 If the data collection server 105 and the estimation server 106 for machine learning are provided as different devices from the AP 101 and the STA 102, then the data collection and reasoning functions will be performed by the servers as different devices, as described above. Figure 3 In the example case of FIG, the server as a different device performs both training and inference, but the present exemplary embodiment is not limited thereto. The inference processing may be implemented by AP 101. In this case, the inference server 106 transmits the trained model data generated based on the received input and output data to AP 101. In this case, it is sufficient for AP 101 to be configured to have the function of inference unit 334. AP 101 stores the trained model data received from server 106. It is sufficient for the inference unit 334 of AP 101 to be configured to calculate an estimated value by using inference input data obtained from the surrounding environment and operating conditions collected by AP 101 itself and the trained model data.
[0047] The training unit 333 may include an error detection unit and an updating unit. The error detection unit obtains the error between the output data output from the output layer of the neural network and the teacher data based on the input data input to the input layer. The error detection unit may calculate the error between the output data output from the neural network and the teacher data by using a loss function.
[0048] The updating unit updates the coupling weight coefficients between the nodes of the neural network to reduce the error obtained by the error detection unit. The updating unit updates the coupling weight coefficients by, for example, using an error back propagation method. The error back propagation method is a method for adjusting the coupling weight coefficients between the nodes of each neural network to reduce the error.
[0049] Figure 4is a conceptual diagram illustrating the input and output configuration of a learning model used according to this exemplary embodiment. Examples of input data for the learning model include information about the location of STA 102, information about the location relationship with AP 101, a radio wave threshold for determining basic service set (BSS) movement, the number of STAs connected to AP 101, and the radio wave strength of STA 102. Examples of input data include communication throughput with STA 102 before roaming, communication delay with STA 102 and other STAs, and STA capability information (such as applicable frequency bands, channels, and bandwidths for STA 102 and other STAs). Examples of input data also include capability information for AP 101 and surrounding APs. Examples of capability information include bandwidth (described above), error correction coding method (BCC and LDPC), number of streams (NSS) indicating the number of streams, and modulation and coding scheme (MCS) indicating the modulation method. Information about the applicable frequency bands described above can be expressed, for example, in an operation class.
[0050] Examples of usable input data also include a signal-to-noise ratio (SNR) indicating a ratio of a signal exchanged between the STA and the AP to noise.
[0051] Examples of input data also include communication throughput, communication delay, and the priority of each index requested by the application. The priority of each index is a manually set weight parameter, which can be omitted according to the machine learning method. The change of the above information within a predetermined unit time relative to a certain time, that is, the time series data of the above information, can be used as an input parameter. Although one minute or about one minute is used as an example of a unit time in the present exemplary embodiment, the present exemplary embodiment is not limited to this.
[0052] The capability information of surrounding APs is an example of information indicating surrounding communication conditions.
[0053] For example, location and radio wave conditions, such as the positional relationship and radio wave strength between a STA and an AP, have a certain correlation with communication quality after roaming. For example, the closer the location relationship, the more likely communication quality will improve after roaming. For example, the farther the location relationship, the less likely communication quality will improve after roaming. The number of connections to APs also has a certain correlation with communication quality after roaming. If the number of connections to the AP after roaming is large, communication quality after roaming is unlikely to improve. If the number of connections to the AP before roaming is small, communication quality after roaming is unlikely to improve. Conversely, if the number of connections to the AP after roaming is small, communication quality after roaming is likely to improve. If the number of connections to the AP before roaming is large, communication quality after roaming is likely to improve. Furthermore, the supportable frequency bands and channels of STA 102 and capability information about surrounding APs are parameters related to the surrounding congestion status, the likelihood of congestion avoidance, and communication throughput. This congestion information has a certain correlation with communication quality after roaming. For example, if you connect to an AP on a relatively uncongested channel after roaming, communication quality is likely to improve. Conversely, if you connect to an AP on a relatively congested channel after roaming, communication quality is unlikely to improve. Bandwidth, Network Security Service (NSS), and Multi-Class Security (MCS) have a certain correlation with communication quality after roaming. For example, if the bandwidth used for communication with the AP after roaming is large, the number of spatial streams is large, or the coding rate is high, communication throughput is likely to improve. Conversely, if the values of the above parameters used for communication with the AP after roaming are small, communication quality is unlikely to improve.
[0054] Quality requirements such as communication throughput and communication delay requested by an application have a certain correlation with the communication quality required after roaming. If the quality requirements are not high, the required communication quality after roaming is likely to be guaranteed. If the quality requirements are high, the required communication quality after roaming is likely to be difficult to guarantee. The communication throughput and communication delay before roaming have a certain correlation with the communication quality after roaming. If the communication throughput and / or communication delay conditions before roaming are poor, the communication quality after roaming is likely to improve. If the communication throughput and / or communication delay conditions before roaming are good, the communication quality after roaming is unlikely to improve. The SNR value has a certain correlation with communication quality. If the SNR after roaming is high, noise has little impact, so the communication quality is likely to improve. If the SNR after roaming is low, noise has a significant impact, and the communication quality is unlikely to improve.
[0055] As mentioned above, each input parameter has a certain tendency toward roaming. Within the communication space, these parameters are complexly correlated with one another and determine whether communication quality improves after roaming. However, because the parameters are complexly correlated, it is difficult to logically determine the threshold used for this determination.
[0056] Conversely, if the necessity or unnecessaryness of roaming is estimated using multiple parameters that clearly indicate certain trends as input, it is possible to estimate whether communication quality is likely to improve after roaming. In view of the above, in this exemplary embodiment, learning is performed using a dataset that identifies, as correct answer data, data indicating the effects of roaming when roaming is actually performed, using some or all of the above parameters as input data. Table 1 shows an example of a dataset used for learning that associates input parameters with correct answer parameters. The training data may include information on error rates after roaming.
[0057] [Table 1]
[0058]
[0059]
[0060] STA location information can be the relative distance from AP 101, the distance from surrounding APs, or location information acquired by a global positioning system (GPS). Examples of location information include information such as N 35° 21.636', E 138° 43.640', and an altitude of 3775.6m. In addition to movement data at the current time point, location information can also include movement data for the past 10 minutes. Movement direction and movement speed can also be used. The positional relationship between surrounding APs and AP 101 can be the relative distance or positional relationship between AP 101 and each of the extracted APs located within 50 meters of AP 101. Alternatively, the distance to a wall near the location where AP 101 is installed can be used. Candidates for surrounding APs can be, for example, the five different APs closest to the coordinates acquired based on the STA location information. STA location information predicted five minutes from now based on the STA location information can be used. Alternatively, APs from which AP 101 and STA 102 can actually receive radio waves can be used. In this case, the AP 101 and / or the server may narrow down the APs to APs operating with the same extended service set identifier (ESSID) among all candidates.
[0061] The radio wave threshold value for determining BSS movement may be, for example, a threshold value of reception radio wave intensity receivable by the AP 101 .
[0062] The communication throughput and communication delay requested by the application can be set in a step-by-step manner. For example, the absolute minimum required communication throughput may be 10 Mbps, while the preferred throughput may be 100 Mbps. Similarly, for communication delay, the maximum allowed delay may be 10 seconds, while the desired delay may be 0.01 seconds. The APs indicated by AP ID 108 and AP ID 170 are examples of other APs that can be used as candidates for roaming by STAs connected to AP 101.
[0063] The combination of input data and teacher data shown in Table 1 can be generated as follows. Initially, the STA records information indicating the measured effectiveness of past roaming. The STA compares the communication throughput and communication delay before roaming with the communication throughput and communication delay after roaming. If the communication throughput increases and the communication delay decreases as a result of roaming, the roaming is considered successful and information indicating that the roaming effect is good is stored. Otherwise, information indicating that the roaming effect is poor is stored. The STA stores the AP ID of the roaming source, the AP ID after roaming, the location and time of roaming, the radio wave strength before and after roaming, the throughput performance and communication delay performance after roaming, and the error rate in communication, all in association with each other. If no data has been accumulated and trained model data has not been established, the communication system according to this exemplary embodiment performs roaming processing based on a predefined algorithm, as is conventional technology. For example, a roaming request is issued when the radio wave strength falls below a predetermined threshold.
[0064] Subsequently, the STA periodically transmits the stored information indicating the effects of past roaming to the connected AP (e.g., AP 101 and other APs). AP 101 and other APs store this information. AP 101 and other APs also periodically collect radio wave conditions and positional relationships with surrounding APs and store this information in association with the time of collection. AP 101 and other APs periodically transmit information on the effects of roaming received from the STA, as well as information collected and stored by AP 101 and other APs, to the collection server 105. The collection server 105 generates metadata for learning based on the data obtained from the APs and STAs and transmits the data to the inference server 106.
[0065] The generation unit 322 of the inference server 106 generates a data set for learning (a combination of input values and teacher data) based on the received metadata. The data set to be used for generating and updating the learning model can reflect either or both data indicating good effects and data indicating bad effects.
[0066] The inference result obtained by inputting the data for inference into the trained model includes the estimated communication throughput and the estimated communication delay after roaming. The model data can be constructed so that the error rate is further inferred as the inference result.
[0067] The estimation server 106 or AP 101 compares the estimated value after roaming with the current measurement data to determine the necessity of roaming. If it is assumed that the current value will be improved, roaming is recommended and information for the roaming destination AP is obtained. The output of the learning model may include whether roaming is to be performed.
[0068] In the case where roaming is actually performed, the measured values may be updated and accumulated as data for learning.
[0069] Examples of specific machine learning algorithms include the nearest neighbor method, the naive Bayes method, a decision tree, and a support vector machine. Examples of specific algorithms also include deep learning that generates feature quantities and coupling weighting coefficients for learning using a neural network. Any of the above-mentioned usable algorithms can be appropriately applied to this exemplary embodiment.
[0070] Figure 5 Illustrated using Figure 4 The system operation to which the present invention is applicable, which has the structure of the learning model shown in FIG. In step S500-1, AP 101 and other APs provide metadata including information indicating the effects of past navigation to inference server 106 via collection server 105. In step S500-2, inference server 106 performs processing for generating and / or updating the learning model. This generation and / or update processing is performed based on a dataset that combines the metadata accumulated in inference server 106 and the information indicating the effects of past navigation received in step S500-1. This processing is performed periodically when a predetermined amount of new data has accumulated. In step S501 and subsequent steps, inference processing using the generated or updated trained model will be described.
[0071] In step S501, AP 101 requests STA 102 to report STA data. The STA data refers to Figure 4The information shown in FIG1 is used as input data for learning and estimation, such as the STA's surrounding environment and location information about the STA, as well as information indicating the effects of past roaming. Examples include STA location information, surrounding APs capable of receiving radio waves, their radio wave strength, capability information, and the radio wave reception strength of AP 101. This request can be issued using, for example, a Radio Measurement Action frame. In this request, various information is requested using a Radio Measurement Request, a Link Measurement Request, and a Neighbor Report Request. A STA Report Request can be defined to collect data required for learning and reasoning. In response to this request, STA 102 sends a report of STA data. For example, a Radio Measurement Action frame can be used in the report. Various information is requested using a Radio Measurement Request, a Link Measurement Request, and a Neighbor Report Request. New STA Report Requests and Responses can be defined to collect data required for learning and reasoning, such as information indicating the effects of roaming.
[0072] Alternatively, you can use Figure 10 and Figure 11 The request and response frames shown in . Figure 10 and Figure 11 Examples of frames to be used to issue requests and responses related to STA data collection are respectively illustrated.
[0073] The request frame includes a category 1000, a radio measurement action 1001, a repetition number 1002, an SSID 1003, and a STA report request element 1004. The response frame includes a category 1000, a radio measurement action 1001, a repetition number 1002, and a STA report 1104.
[0074] In order to indicate that the frame transmitted between AP 101 and STA 102 is a radio measurement action frame, 5 is stored in the category 1000. In "Radio Measurement Action" is stored Figure 12 Any of the values shown in . Each value indicates what type of information is requested. In the case of requesting information required for machine learning, this value is set to 6 to indicate that the STA reports a request. In response to the request, this value is set to 7 to indicate that the STA reports a response.
[0075] The repetition number 1002 indicates the number of repetitions of the requested report.
[0076] SSID 1003 indicates the SSID of the AP requesting the report. This may be omitted.
[0077] The "TA Report Request Element" indicates the type of information to be responded by the STA 102. For example, in order to receive STA location information, information about surrounding APs that can receive radio waves, and capability information about surrounding APs, a request with corresponding bits set to 1 is issued.
[0078] For the STA report element 1104, information corresponding to the requested information is added and sent. The data collection method is not limited to collection based on requests and responses. The STA can also be configured to spontaneously send (submit) a status report including data required for learning and reasoning to the AP 101.
[0079] Information managed by the AP itself, such as the number of connections to the AP, is managed and recorded by the AP itself.
[0080] Return Reference Figure 5 As described above, when AP 101 collects information from STA 102, in step S503, AP 101 transmits data for inference (input data required for inference), including data measured by AP 101 itself and data to be managed, as metadata to estimation server 106. In step S504, estimation server 106 returns estimated values of communication throughput and communication delay when roaming to surrounding APs based on the input data to AP 101. Based on the received estimated values and the current measured values, AP 101 determines whether to perform roaming. If roaming is necessary, AP 101 also determines which AP to roam to. In step S505, if roaming is necessary, AP 101 requests STA 102 to perform roaming. In response to STA 102 receiving the roaming request, STA 102 performs roaming based on the request. At this time, AP 101 can also transmit information about STA 102, keys to be used for communication and authentication, and capability information to the roaming destination AP. Roaming requests can use the MBO attribute to add a transition reason code attribute.
[0081] Figure 6 6 is a flowchart illustrating the process performed by the AP 101 when learning and estimating. The AP 101 starts this process at fixed intervals after starting a connection with an STA. In step S601, the AP 101 requests STA data from the STA 102. Figure 5This is implemented in step S501 of the preceding text. In step S602, AP 101 receives a response to the request. In step S603, AP 101 determines whether to request an estimate of roaming from estimation server 106 based on the STA data. If an estimate is not requested, then in step S604, AP 101 transmits the collected metadata to data collection server 105, completing the process. The metadata collected and transmitted to data collection server 105 includes at least information collected from STAs indicating the effects of past roaming. If an estimate is requested, then in step S605, AP 101 transmits a metadata report to estimation server 106. In step S606, AP 101 receives a response with the estimate. In step S607, AP 101 determines whether STA 102 needs to perform roaming based on at least the received estimate. If roaming is necessary ("Yes" in step S607), the process proceeds to step S608. In step S608, AP 101 analyzes the roaming destination AP and collects information. The estimation process in step S606 and the determination process in step S607 are collectively referred to as calculation processing. The information regarding whether to perform roaming obtained as a result of the calculation processing is also referred to as the calculation result. At this point, AP 101 can notify the candidate roaming destination AP of information about STA 102 and connection parameters. In step S609, AP 101 sends a roaming request to STA 102. If there is at least one STA determined to perform roaming, AP 101 sends the roaming request to the at least one STA. At this point, STA 102 can transmit and receive connection parameters to the candidate connection destination AP. AP 101 can also transmit the connection parameters to the candidate connection destination AP based on the result.
[0082] Even when AP 101 requests an estimate, AP 101 can send metadata to the data collection server 105 after receiving the estimate. After STA 102 successfully completes roaming, the communication throughput and communication delay at that time can be sent together to serve as learning output data. Regarding this data, AP 101 can send the data collection server along with the data received from the roaming destination AP, along with previously recorded data, or along with information the roaming destination AP has received from AP 101. Alternatively, AP 101 and the roaming destination AP can each send metadata, and the data collection server can record the AP data before and after roaming together. If the data collection server combines the data, AP 101 and the roaming destination AP can each send a collection of information about each AP, information about the STA, and the roaming ID to the data collection server.
[0083] Upon receiving the roaming request, the STA executes roaming based on the connection parameters. The STA also collects and stores the pre- and post-roaming information as described above, indicating the effectiveness of the roaming. The connection parameters can be configured to include information required to perform Fast Initial Link Setup (FILS) as defined by IEEE 802.11ai. In this case, the STA performs FILS-based packet exchange with the roaming destination AP to achieve high-speed connection and authentication.
[0084] Figure 7 1 is a flowchart illustrating the processing flow of the data collection server 105 during training and estimation. This processing is always performed by the data collection server 105.
[0085] In step S701, the data collection server 105 waits for a request from the AP 101 or the estimation server 106. In response to receiving the request, processing proceeds to step S702. In step S702, the data collection server 105 changes processing based on the transmission source of the request. If the request is received from the estimation server 106 ("No" in step S702), the data collection server 105 determines that the request is a data list request for learning, and processing proceeds to step S703. In step S703, the data collection server 105 transmits the recorded metadata list to the estimation server. If the request is received from the AP 101 ("Yes" in step S702), the data collection server 105 determines that the request is a metadata recording request issued to the data collection server 105, and processing proceeds to step S705. In step S705, the data collection server 105 stores the metadata. The determination criterion does not necessarily need to be the transmission source address. For example, the details of the request can be described in the request frame.
[0086] Figure 8 1 is a flowchart illustrating the processing of the estimation server 106 during learning.
[0087] The generation and update process for the learning model performed by the estimation server is performed periodically, as described above in conjunction with Figure 5 Just as described.
[0088] In step S801, estimation server 106 requests a metadata list from data collection server 105. In step S802, estimation server 106 receives the metadata list from data collection server 106. In step S803, based on the time-series data, estimation server 106 prepares a dataset for learning based on the roaming results (information indicating the effectiveness of roaming) and data collected at the time of the roaming. In this exemplary embodiment, communication throughput and communication delay after roaming are used as past result data (teacher data), but other data may be used. For example, considering the above configuration, binary data indicating roaming success or failure may be generated to serve as teacher data. In this case, if the communication performance after roaming meets the communication indicators requested by the application, success teacher data is generated. On the other hand, if the communication performance after roaming does not meet the communication indicators requested by the application, failure teacher data is generated. Furthermore, the communication performance of the roaming source AP may be compared with the communication performance of the AP after roaming. If an improvement equal to or greater than a predetermined degree is achieved, success teacher data is generated. If an improvement equal to or greater than a predetermined degree is not achieved, failed teacher data is generated. If the teacher data used for learning also uses an error rate and the error rate is obtained as an inference result, the necessity of roaming can be determined based on the error rate. For example, failed teacher data is generated if the error rate after the estimated roaming is too high. If the teacher data is generated as binary data in this manner, the inference server 106 generates a learning model that outputs a value indicating the probability of successful roaming as an inference result.
[0089] The input data can be all data during a continuous period. For example, the input data can be a collection of data sampled at one-minute intervals for the past day. The time period of the input data is only an example.
[0090] In step S804, the estimation server 106 inputs a data set to be used for learning into the learning model. The data set includes the metadata list (input parameters) prepared in step S803 and the roaming results (teacher data). In step S805, the training unit 333 of the estimation server 106 performs training processing on the model data based on the input parameters. For example, in the case where a learning model is to be constructed by using a neural network, the estimation server 106 updates the coupling weighting coefficients between the nodes of the convolutional neural network so that the output value of the neural network approaches the target value. The estimation server 106 determines the adjustment amount of the coupling weighting coefficient by using an error function that represents error information between the teacher data and the output value output by using the model data under training.
[0091] In step S806, the estimation server determines whether the input of the entire data set prepared in step S803 is completed. If the input of the entire data set is completed ("Yes" in step S806), the estimation server completes a series of training processes. If the input of the entire data set is not completed ("No" in step S806), the process returns to step S804. In step S804, the estimation server continues the training of the model data based on the data set that has not yet been input. The estimation server repeatedly performs the operations in steps S804 and S805 to gradually optimize the coupling weight coefficients, thereby constructing trained model data that is configured to output an output value with a small error from the target value.
[0092] The above-described process enables construction of trained model data for roaming processing.
[0093] Figure 9 1 is a flowchart illustrating the processing performed by the estimation server 106 at the time of estimation. This processing is intended to be always performed. As described above, the inference processing can also be performed by the AP 101. In this case, Figure 9 Each operation in may be performed not by the estimation server but by the AP 101. In step S901, initially, the estimation server 106 receives input data from the AP 101 and is requested to provide a roaming estimation value request.
[0094] If a request is received ("Yes" in step S901), the process proceeds to step S902. In step S902, the estimation server 106 inputs the input data to the trained model. At this time, if the format of the received metadata is different from the format of the input data, the estimation server 106 converts the format of the input data via the training data generation unit 332.
[0095] In step S903 , the estimation server 106 acquires the estimated value from the learning model. In step S904 , the estimation server 106 returns the acquired estimated value to the AP 101 .
[0096] exist Figure 8 After generating a learning model in the process shown in FIG, the estimation server can distribute the entire learning model to all target APs, including AP 101. In this case, the process in this figure will be executed in AP 101. At this time, after obtaining the roaming estimation value, AP 101 determines whether STA 102 performs roaming and notifies STA 102.
[0097] According to the present invention, the AP determines the necessity of roaming for the connected STA by using a frame conforming to the IEEE 802.11 standard. If roaming is necessary, the AP notifies the STA.
[0098] (Variation)
[0099] Although standard names such as IEEE802.11HR are used as examples of successor standards to IEEE802.11be in this exemplary embodiment, this exemplary embodiment is not limited thereto. Examples of standard names include High Reliability (HRL). Examples of standard names include High Reliability Wireless (HRW). Examples of standard names include Very High Reliability (VHT). Examples of standard names include Extremely High Reliability (EHR). Examples of standard names include Ultra High Reliability (UHR). Examples of standard names include Low Latency (LL). Examples of standard names include Very Low Latency (VLL). Examples of standard names include Extremely Low Latency (ELL). Examples of standard names include Extremely Low Latency (ELL). Examples of standard names include Ultra Low Latency (ULL). Examples of standard names include High Reliable and Low Latency (HRLL). Examples of standard names include Ultra-Reliable and Low Latency (URLL). Examples of standard names include Ultra-Reliable and Low Latency Communications (URLLC). Examples of standard names include other names.
[0100] A portion of the training dataset (a combination of input values and teacher data) generated by the generation unit 322 can be used not only for learning but also for performance evaluation of the trained data model. The inference server 106 does not intentionally use a portion of the dataset generated by the generation unit 322 for learning, but instead stores this data separately as a dataset for evaluation. For trained model data, the dataset used for evaluation is a combination of unknown input values and teacher data (correct answer data) that have not been used for learning in the past.
[0101] The inference server 106 calculates an inference result by using the trained model data that has been trained by the training unit 333 and the input value of the data set for evaluation. Then, the estimation server 106 compares the inference result with the teacher data to evaluate the performance of the trained model.
[0102] If, as a result of the performance evaluation, the correct answer rate exceeds a predetermined threshold (eg, 90%), then the application of the reasoning process may be initiated.
[0103] Although it is estimated that the server is combined with the above exemplary embodiment Figure 5 The learning model generation and update process is performed periodically as described above, but the present exemplary embodiment is not limited thereto. For example, a performance evaluation using trained model data and a data set for evaluation may be performed periodically, and the updated and generated process of the trained model may be performed based on the evaluation results. For example, if the correct answer rate drops below a predetermined threshold, the update process is performed. If the correct answer rate further decreases and drops below a second predetermined threshold, the current trained model may be discarded and a new trained model may be constructed.
[0104] In addition, while this exemplary embodiment describes an example case of model data generation using supervised training, this is not intended to be limiting. For example, a learning model can be generated through a combination of supervised learning and reinforcement learning. In this case, a dataset combining teacher data and surrounding conditions is used as pre-learning data. In this case, the inference server 106 generates demonstration data based on this dataset combining teacher data and surrounding conditions in the surrounding environment. This demonstration data serves as a starting point for the early stages of reinforcement learning. Upon completion of pre-learning of the value function and policy based on the demonstration data, reinforcement training and inference phases based on real data are performed. In other words, imitation learning, equivalent to supervised training, is performed to generate a model for the early stages of training. In the subsequent reinforcement training and estimation phases, the inference server 106 determines a specific action to be performed for the roaming process determined by the Markov decision process. The AP executes the roaming based on this action. The STA measures the communication conditions before and after the roaming and stores the aforementioned information regarding the effectiveness of the roaming. The inference server 106 immediately rewards the agent based on the effectiveness of the roaming and updates the value function. These processes are repeated to perform additional learning. In this reinforcement learning, since actions are selected based on Markov deterministic processing, new actions that have not yet been tried for the teacher data can be selected and executed. Then, based on the actual results of this new action, the estimation server 106 evaluates the action and adjusts the agent's strategy. Therefore, as additional learning progresses, the agent's strategy is adjusted to the details to be evaluated in the real environment. Since the value function is updated over time based on the observed evaluation, not only short-term actions can be selected, but also forward actions can be selected. As described above, the use of reinforcement learning makes it difficult to evaluate actions that cause repeated roaming (called ping-pong roaming, in which an AP and another AP impose STA), so as reinforcement learning progresses, such actions are rarely selected as strategies. As described above, the present exemplary embodiment can be appropriately modified to configure, update, and estimate the model through reinforcement learning.
[0105] (Other embodiments)
[0106] The present invention can be implemented by supplying a program for implementing one or more functions according to the above-described exemplary embodiments to a system or device via a network or storage medium, and a computer in the system or device reading and executing the program. The computer has one or more processors or circuits and may include multiple individual computers, multiple individual processors, or a network of circuits to read and execute computer-executable instructions.
[0107] Processors or circuits may include central processing units (CPUs), microprocessing units (MPUs), graphics processing units (GPUs), application-specific integrated circuits (ASICs), and field-programmable gate arrays (FPGAs). Processors or circuits may also include digital signal processors (DSPs), data flow processors (DFPs), and neural processing units (NPUs).
[0108] The present invention is not limited to the exemplary embodiments described above, and various changes and modifications are possible without departing from the spirit and scope of the present invention. Therefore, the following claims are attached to disclose the scope of the present invention.
[0109] This application claims the benefit of Japanese Patent Application No. 2022-110738, filed Jul. 8, 2022, which is hereby incorporated by reference herein in its entirety.
Claims
1. A communication device, comprising: a calculation unit configured to obtain a part or all of a plurality of information as input data of reasoning, and calculate information indicating whether to perform roaming and which access point (AP) is to be subject to roaming in the case of performing roaming, the plurality of information including station (STA) position information, a threshold value of radio wave strength in basic service set (BSS) movement, the number of STAs connected to the AP, radio wave strength to be received from the STA to which the communication device is connected, radio wave conditions of surrounding APs indicated by the STA to which the AP is connected, information indicating surrounding communication conditions indicated by the STA to which the AP is connected, frequency bands and channels supported by the STA to which the AP is connected, capability information of surrounding APs, and time series data of any of the plurality of information in a unit time; as well as A notification unit configured to issue a notification to at least one of the STAs to which the communication device is connected, if roaming of the STA to which the communication device is connected is necessary in the result of the calculation performed by the calculation unit.
2. The communication device according to claim 1, further comprising a generation unit configured to generate trained model data by performing machine learning based on information equivalent to the input data and information about the effect of roaming collected from STAs, wherein the calculation unit includes a process of obtaining an inference result by using the trained model data and the inferred input data, and the inference result obtained in the obtaining process is used at least for calculation as to whether the calculation unit performs roaming.
3. A control method for performing control related to roaming of communication, the method comprising: A part or all of a plurality of information is obtained as input data for reasoning, and information indicating whether roaming is to be performed and which access point (AP) will be subject to roaming if roaming is performed is calculated, wherein the plurality of information includes station (STA) location information, a threshold value of radio wave strength in basic service set (BSS) movement, the number of STAs connected to the AP, the radio wave strength to be received from the STA to which the communication device is connected, the radio wave conditions of surrounding APs indicated by the STA connected to the AP, information indicating surrounding communication conditions indicated by the STA connected to the AP, frequency bands and channels supported by the STA connected to the AP, capability information of surrounding APs, and time series data of any information among the plurality of information per unit time.
4. A program for causing a computer to execute a method comprising: A part or all of a plurality of information is obtained as input data for reasoning, and information indicating whether roaming is to be performed and which access point (AP) will be subject to roaming if roaming is performed is calculated, wherein the plurality of information includes station (STA) location information, a threshold value of radio wave strength in basic service set (BSS) movement, the number of STAs connected to the AP, the radio wave strength to be received from the STA to which the communication device is connected, the radio wave conditions of surrounding APs indicated by the STA connected to the AP, information indicating surrounding communication conditions indicated by the STA connected to the AP, frequency bands and channels supported by the STA connected to the AP, capability information of surrounding APs, and time series data of any information among the plurality of information per unit time.
Citation Information
Patent Citations
Information processing device, information processing method, and program
JP2022110738A