Disclosure of Invention
The present invention has been made in view of the above problems, and it is an object of the present invention to provide a beam management method, apparatus, computing device and storage medium that overcomes or at least partially solves the above problems.
According to an aspect of the present invention, there is provided a beam management method, including:
determining a transmission scene according to the current coverage information of the terminal to be tested;
acquiring feature information to be processed corresponding to a terminal to be tested in a transmission scene;
inputting the feature information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing to obtain a model prediction result;
and determining the information of the beam to be switched of the terminal to be tested according to the model prediction result, and switching the beam for the terminal to be tested according to the information of the beam to be switched.
Optionally, the transmission scenario includes: the prediction model corresponding to the video transmission scene is a track prediction model;
the obtaining the feature information to be processed of the terminal to be tested corresponding to the transmission scene specifically comprises the following steps: acquiring track data of a terminal to be tested in a first preset period;
inputting the feature information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing, wherein the obtaining of the model prediction result specifically comprises the following steps:
inputting the track data in the first preset period into a pre-trained track prediction model for processing to obtain predicted track data of the terminal to be tested;
the determining the information of the beam to be switched of the terminal to be tested according to the model prediction result specifically comprises the following steps:
and determining a coverage area to which the predicted track data belongs, and determining the information of the beam to be switched of the terminal to be tested according to the mapping relation between the coverage area and the beam.
Optionally, the method further comprises: the mapping relation between each wave beam in the base station and the corresponding coverage area is recorded in advance.
Optionally, the method further comprises:
acquiring sample track data of a plurality of user terminals;
inputting sample track data of each user terminal into an initial track prediction model for processing to obtain initial predicted track data;
and calculating loss according to the initial predicted track data and the real track data of the corresponding period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of the initial track prediction model, and repeatedly executing the steps until the preset iteration ending condition is met, so as to obtain the track prediction model.
Optionally, the transmission scenario includes: a non-line-of-sight transmission scene, wherein a prediction model corresponding to the non-line-of-sight transmission scene is a channel prediction model;
the obtaining the feature information to be processed of the terminal to be tested corresponding to the transmission scene specifically comprises the following steps: acquiring channel information data in a second preset period of a terminal to be tested;
inputting the feature information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing, wherein the obtaining of the model prediction result specifically comprises the following steps:
and inputting the channel information data in the second preset period into a pre-trained channel prediction model for processing to obtain predicted channel information data.
Optionally, the method further comprises:
acquiring sample channel information data of a plurality of user terminals;
inputting the sample channel information data of each user terminal into an initial channel prediction model for processing to obtain initial prediction channel data;
and calculating loss according to the initial predicted channel data and the real channel information data of the corresponding time period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of the initial channel prediction model, and repeatedly executing the steps until the preset iteration ending condition is met, so as to obtain the channel prediction model.
Alternatively, the mean square error is used as a loss function for calculating the loss.
According to another aspect of the present invention, there is provided a beam management apparatus comprising:
the scene detection module is suitable for determining a transmission scene according to the current coverage information of the terminal to be detected;
the characteristic acquisition module is suitable for acquiring characteristic information to be processed of the terminal to be detected under a transmission scene;
the prediction processing module is suitable for inputting the characteristic information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing, so as to obtain a model prediction result;
and the beam management module is suitable for determining the information of the beam to be switched of the terminal to be tested according to the model prediction result, and switching the beam for the terminal to be tested according to the information of the beam to be switched.
Optionally, the transmission scenario includes: the prediction model corresponding to the video transmission scene is a track prediction model;
the feature acquisition module is further adapted to: acquiring track data of a terminal to be tested in a first preset period; the prediction processing module is further adapted to: inputting the track data in the first preset period into a pre-trained track prediction model for processing to obtain predicted track data of the terminal to be tested; the beam management module is further adapted to: and determining a coverage area to which the predicted track data belongs, and determining the information of the beam to be switched of the terminal to be tested according to the mapping relation between the coverage area and the beam.
Optionally, the apparatus further comprises: and the recording module is suitable for pre-recording the mapping relation between each wave beam in the base station and the corresponding coverage area.
Optionally, the apparatus further comprises: the first model training module is suitable for acquiring sample track data of a plurality of user terminals; inputting sample track data of each user terminal into an initial track prediction model for processing to obtain initial predicted track data; and calculating loss according to the initial predicted track data and the real track data of the corresponding period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of the initial track prediction model, and repeatedly executing the steps until the preset iteration ending condition is met, so as to obtain the track prediction model.
Optionally, the transmission scenario includes: a non-line-of-sight transmission scene, wherein a prediction model corresponding to the non-line-of-sight transmission scene is a channel prediction model;
the feature acquisition module is further adapted to: acquiring channel information data in a second preset period of a terminal to be tested;
the prediction processing module is further adapted to: and inputting the channel information data in the second preset period into a pre-trained channel prediction model for processing to obtain predicted channel information data.
Optionally, the apparatus further comprises: the second model training module is suitable for acquiring sample channel information data of a plurality of user terminals; inputting the sample channel information data of each user terminal into an initial channel prediction model for processing to obtain initial prediction channel data; and calculating loss according to the initial predicted channel data and the real channel information data of the corresponding time period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of the initial channel prediction model, and repeatedly executing the steps until the preset iteration ending condition is met, so as to obtain the channel prediction model.
Alternatively, a mean square error loss function is employed for calculating the loss.
According to yet another aspect of the present invention, there is provided a computing device comprising: the device comprises a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface complete communication with each other through the communication bus;
the memory is used for storing at least one executable instruction, and the executable instruction enables the processor to execute the operation corresponding to the beam management method.
According to still another aspect of the present invention, there is provided a computer storage medium having stored therein at least one executable instruction for causing a processor to perform operations corresponding to the beam management method described above.
The invention relates to a beam management method, a device, a computing device and a storage medium, which relate to the technical field of wireless technology and determine a transmission scene according to the current coverage information of a terminal to be tested; acquiring feature information to be processed corresponding to a terminal to be tested in a transmission scene; inputting the feature information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing to obtain a model prediction result; and determining the information of the beam to be switched of the terminal to be tested according to the model prediction result, and switching the beam for the terminal to be tested according to the information of the beam to be switched. By means of the method, the future wave beam information can be predicted by combining the deep neural network with wave beam management, errors caused by time delay can be reduced, and the accuracy of wave beam estimation is improved.
The foregoing description is only an overview of the present invention, and is intended to be implemented in accordance with the teachings of the present invention in order that the same may be more clearly understood and to make the same and other objects, features and advantages of the present invention more readily apparent.
Detailed Description
Exemplary embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present invention are shown in the drawings, it should be understood that the present invention may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.
Fig. 1 shows a flowchart of a beam management method according to an embodiment of the present invention, as shown in fig. 1, the method includes the following steps:
step S110, determining a transmission scene according to the current coverage information of the terminal to be tested.
According to the current coverage condition of the terminal to be tested, determining a wireless transmission scene, wherein the transmission scene is divided into a line-of-sight transmission scene and a non-line-of-sight transmission scene, the line-of-sight transmission scene refers to no obvious shielding in the coverage area of the base station, and is relatively open, and the non-line-of-sight transmission scene refers to shielding in the coverage area of the base station. Specifically, a transmission scene corresponding to the base station is determined in advance according to surrounding environment information of the base station, and then the corresponding transmission scene is determined according to the base station to which the coverage area of the terminal to be tested belongs.
Step S120, obtaining feature information to be processed corresponding to the terminal to be tested in the transmission scene.
In order to perform beam management, the information required to be predicted is different in different transmission scenes, the characteristic information required to be predicted is different, and the characteristic information to be processed of the terminal to be tested corresponding to the transmission scenes is obtained.
And step S130, inputting the feature information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing, and obtaining a model prediction result.
And for each transmission scene, training by using sample data through a deep learning algorithm in advance to obtain a prediction model under the transmission scene, inputting the characteristic information to be processed of the terminal to be tested into the prediction model for processing, and outputting a prediction result after the processing of the prediction model.
And step S140, determining the information of the beam to be switched of the terminal to be tested according to the model prediction result, and switching the beam for the terminal to be tested according to the information of the beam to be switched.
According to the beam management method provided by the embodiment, a transmission scene is determined according to the current coverage information of the terminal to be tested; acquiring feature information to be processed corresponding to a terminal to be tested in a transmission scene; inputting the feature information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing to obtain a model prediction result; and determining the information of the beam to be switched of the terminal to be tested according to the model prediction result, and switching the beam for the terminal to be tested according to the information of the beam to be switched. By means of the method, the future wave beam information can be predicted by combining the deep neural network with wave beam management, errors caused by time delay can be reduced, and the accuracy of wave beam estimation is improved.
Fig. 2 shows a flowchart of a beam management method according to another embodiment of the present invention, as shown in fig. 2, the method includes the following steps:
step S210, determining a transmission scene according to the current coverage information of the terminal to be tested.
The transmission scenes are divided into a line-of-sight transmission scene and a non-line-of-sight transmission scene, wherein the line-of-sight transmission scene refers to no obvious shielding in the coverage area of the base station and is relatively open, and the non-line-of-sight transmission scene refers to shielding in the coverage area of the base station. Specifically, a transmission scene corresponding to the base station is determined in advance according to surrounding environment information of the base station, and then the corresponding transmission scene is determined according to the base station to which the coverage area of the terminal to be tested belongs.
In the method of the embodiment, different beam management algorithms are adopted for different transmission scenes, and if the transmission scene is a line-of-sight transmission scene, step S220 is executed; if the transmission scene is a non-line-of-sight transmission scene, step S240 is performed.
S220, acquiring track data in a first preset period of the terminal to be tested, and inputting the track data in the first preset period into a pre-trained track prediction model for processing to obtain predicted track data of the terminal to be tested.
And if the transmission scene is a line-of-sight transmission scene, acquiring track data in a first preset period of the terminal to be tested, inputting the track data into a pre-trained track prediction model for processing, and outputting predicted track data of the terminal to be tested by the track prediction model.
The track prediction model is obtained through training in the following mode: acquiring sample track data of a plurality of user terminals; inputting sample track data of each user terminal into an initial track prediction model for processing to obtain initial predicted track data; and calculating loss according to the initial predicted track data and the real track data of the corresponding period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of the initial track prediction model, and repeatedly executing the steps until the preset iteration ending condition is met, so as to obtain the track prediction model. The initial track prediction model is constructed according to the deep neural network, for example, parameters of the deep neural network are initialized, and the initial track prediction model is obtained.
For example, track data of a plurality of user terminals in an observation period is acquired as sample track data, that is, the sample track data is time sequence data, for example, more than 6 ten thousand groups of sample track data are acquired, and the observation period is expressed as: t= (1, 2,3, …, t) last ),t last Representing the last point in time within the observation period, acquiring trajectory data for a plurality of user terminals within the observation period, expressed as: p= (P) 1 ,P 2 ,…,P i ,…,P N ) Wherein N represents the number of user terminals in the observation period, and the coordinates of the user terminal i at the time point t are as followst=(1,2,3,…,t last ),/>And->The abscissa and the ordinate of the user terminal i at time t are indicated, respectively.
Inputting track data of each user terminal in an observation period of 1 to T into an initial track prediction model, and obtaining predicted track data of each user terminal in a future period of (t+1) to (t+T) through forward propagation, wherein the predicted track data of the user terminal in the future period of (t+1) to (t+T) is expressed as:the true trajectory data of the user terminal at (t+1) to (t+t) are expressed as: />Calculating the mean square error of the predicted coordinate value and the real coordinate value, and completing the forward propagation process; and then, calculating the gradient value of the loss function relative to the parameter of the initial track prediction model according to a back propagation algorithm, updating the parameter of the initial track prediction model by adopting a gradient descent algorithm, and continuously iterating until the model converges.
Wherein, the mean square error is adopted as the loss function, and the formula is as follows:
after training to obtain a track prediction model, track data of the terminal to be tested in a first preset period is obtained, the first preset period is consistent with the duration of the observation period, the track data in the first preset period is input into the track prediction model for processing, and the track prediction model outputs a predicted track of the terminal to be tested in a future period.
Step S230, determining a coverage area to which the predicted track data belongs, determining information of a beam to be switched of the terminal to be tested according to a mapping relation between the coverage area and the beam, and switching the beam for the terminal to be tested according to the information of the beam to be switched.
And judging the coverage area to which the predicted track data belongs, selecting a corresponding beam according to the mapping relation between the beam and the coverage area, and scanning in a small range according to the predicted track to determine the beam to be switched of the terminal to be tested, and subsequently switching the terminal to be tested to the beam to be switched, so that the pilot frequency overhead can be reduced, and the accuracy of beam management is improved.
The mapping relation between each beam and the corresponding coverage area in the base station is recorded in advance, and in the base station site planning construction stage, the number of the beams and the coverage area range of each beam are known, and each beam and the corresponding coverage area are recorded in a one-to-one correspondence.
In specific implementation, the beam management algorithm of the line-of-sight transmission scenario is executed at the base station side, that is, the main execution body of the step S220 and the step S230 is the base station.
Step S240, obtaining channel information data in a second preset period of the terminal to be tested; and inputting the channel information data in the second preset period into a pre-trained channel prediction model for processing to obtain predicted channel information data.
If the transmission scene is a non-line-of-sight transmission scene, acquiring a plurality of channel information data estimated on the CSI-RS in a preset period of the terminal to be tested, inputting the channel information data into a pre-trained channel prediction model for processing, and outputting predicted channel information data of the terminal to be tested by the channel prediction model.
The channel prediction model is obtained through training in the following mode: acquiring sample channel information data of a plurality of user terminals; inputting the sample channel information data of each user terminal into an initial channel prediction model for processing to obtain initial prediction channel data; and calculating loss according to the initial predicted channel data and the real channel information data of the corresponding time period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of the initial channel prediction model, and repeatedly executing the steps until the preset iteration ending condition is met, so as to obtain the channel prediction model. The initial channel prediction model is constructed according to the deep neural network, for example, parameters of the deep neural network are initialized, and the initial channel prediction model is obtained.
For example, channel information data of a plurality of user terminals in an observation period is acquired as sample channel information data, for example, more than 6 ten thousand sets of sample channel information data are acquired, a sequence of 1 to t' periods is obtainedAs sample channel information data, wherein +_> Representing the frequency response of the v-th transmitting antenna to the u-th receiving antenna on the k-th subcarrier at the nth time point, taking the real part and the imaginary part of the complex number H, namely [ Re (H), im (H), respectively]The method comprises the following steps of:
information H of multiple channels to be 1 to t' period new Input into the initial channel prediction type, initial predicted channel data at future time periods of (T ' +1) to (T ' +t ') are obtained through forward propagation, specifically:wherein T' represents the length of the output channel data sequence; the real channel information data in the (T ' +1) to (T ' +t ') periods are: />Adopting the mean square error as a loss function of the network to finish the forward propagation process; a kind of electronic deviceAnd then, calculating the gradient value of the loss function relative to the parameter of the initial channel prediction model through a back propagation algorithm, updating the parameter by adopting a gradient descent algorithm, and continuously iterating until convergence.
Wherein, the loss function formula is as follows:
after training to obtain a channel prediction model, obtaining channel information data of a terminal to be tested in a second preset period, wherein the second preset period is consistent with the duration of an observation period of a model training stage, inputting the channel information data in the second preset period into the channel prediction model for processing, and outputting the channel information data in a future period by the channel prediction model, wherein the channel information data is specifically expressed as:
wherein (1)> Indicating the frequency response of the nth transmit antenna through the nth receive antenna on the kth subcarrier at the nth point in time.
Step S250, the information of the beam to be switched of the terminal to be tested is determined according to the predicted channel information data, and the beam is switched according to the information of the beam to be switched.
The base station selects the beam information at the corresponding moment according to the predicted channel information data and the conventional technical means of selecting the beam according to the channel information, and then switches the terminal to be tested to the beam to be switched, so that errors caused by time delay can be reduced, and the accuracy of beam estimation and the throughput of the system can be improved.
In particular, step S240 is performed at the user side, and step S250 is performed at the base station side, that is, after the predicted channel information data is obtained at the user side, the predicted channel information data is provided to the base station, so that the base station determines the beam information to be switched according to the predicted channel state information.
According to the beam management method, the method is divided into a line-of-sight transmission scene algorithm and a non-line-of-sight transmission scene algorithm, under the line-of-sight transmission scene, a deep neural network is applied to a base station side for predicting the movement track of a user, and the base station side can accurately acquire the movement track of the user so as to perform beam management, so that pilot frequency overhead can be reduced, and the accuracy of the beam management is improved; in a non-line-of-sight transmission scene, the deep neural network at the terminal side is applied to predict future channel information, and the base station selects beam information according to the predicted channel information, so that errors caused by time delay can be reduced, and the accuracy of beam estimation and the throughput of a system can be improved.
Fig. 3 is a schematic structural diagram of a beam management apparatus according to an embodiment of the present invention, where, as shown in fig. 3, the apparatus includes:
the scene detection module 31 is suitable for determining a transmission scene according to the current coverage information of the terminal to be detected;
the feature acquisition module 32 is adapted to acquire feature information to be processed of the terminal to be detected corresponding to the transmission scene;
the prediction processing module 33 is adapted to input the feature information to be processed into a pre-trained prediction model corresponding to the transmission scene for processing, so as to obtain a model prediction result;
the beam management module 34 is adapted to determine information of a beam to be switched of the terminal to be tested according to the model prediction result, and switch the beam for the terminal to be tested according to the information of the beam to be switched.
In an alternative way, the transmission scenario includes: the prediction model corresponding to the video transmission scene is a track prediction model;
the feature acquisition module 32 is further adapted to: acquiring track data of a terminal to be tested in a first preset period; the prediction processing module 33 is further adapted to: inputting the track data in the first preset period into a pre-trained track prediction model for processing to obtain predicted track data of the terminal to be tested; the beam management module 34 is further adapted to: and determining a coverage area to which the predicted track data belongs, and determining the information of the beam to be switched of the terminal to be tested according to the mapping relation between the coverage area and the beam.
In an alternative, the apparatus further comprises: and the recording module is suitable for pre-recording the mapping relation between each wave beam in the base station and the corresponding coverage area.
In an alternative, the apparatus further comprises: the first model training module is suitable for acquiring sample track data of a plurality of user terminals; inputting sample track data of each user terminal into an initial track prediction model for processing to obtain initial predicted track data; and calculating loss according to the initial predicted track data and the real track data of the corresponding period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of the initial track prediction model, and repeatedly executing the steps until the preset iteration ending condition is met, so as to obtain the track prediction model.
In an alternative way, the transmission scenario includes: a non-line-of-sight transmission scene, wherein a prediction model corresponding to the non-line-of-sight transmission scene is a channel prediction model;
the feature acquisition module 32 is further adapted to: acquiring channel information data in a second preset period of a terminal to be tested;
the prediction processing module 33 is further adapted to: and inputting the channel information data in the second preset period into a pre-trained channel prediction model for processing to obtain predicted channel information data.
In an alternative, the apparatus further comprises: the second model training module is suitable for acquiring sample channel information data of a plurality of user terminals; inputting the sample channel information data of each user terminal into an initial channel prediction model for processing to obtain initial prediction channel data; and calculating loss according to the initial predicted channel data and the real channel information data of the corresponding time period of the user terminal, carrying out back propagation based on the loss, adjusting parameters of an initial channel prediction model, and repeatedly executing the steps until a preset iteration ending condition is met, so as to obtain the channel prediction model.
In an alternative approach, a mean square error loss function is employed for calculating the loss.
Embodiments of the present invention provide a non-volatile computer storage medium storing at least one executable instruction that may perform the beam management method of any of the method embodiments described above.
FIG. 4 illustrates a schematic diagram of an embodiment of a computing device of the present invention, and the embodiments of the present invention are not limited to a particular implementation of the computing device.
As shown in fig. 4, the computing device may include: a processor 402, a communication interface (Communications Interface) 404, a memory 406, and a communication bus 408.
Wherein: processor 402, communication interface 404, and memory 406 communicate with each other via communication bus 408. A communication interface 404 for communicating with network elements of other devices, such as clients or other servers. Processor 402 is configured to execute program 410 and may specifically perform the relevant steps of the beam management method embodiments for a computing device described above.
In particular, program 410 may include program code including computer-operating instructions.
The processor 402 may be a central processing unit CPU, or a specific integrated circuit ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement embodiments of the present invention. The one or more processors included by the computing device may be the same type of processor, such as one or more CPUs; but may also be different types of processors such as one or more CPUs and one or more ASICs.
Memory 406 for storing programs 410. Memory 406 may comprise high-speed RAM memory or may also include non-volatile memory (non-volatile memory), such as at least one disk memory.
The algorithms or displays presented herein are not inherently related to any particular computer, virtual system, or other apparatus. Various general-purpose systems may also be used with the teachings herein. The required structure for a construction of such a system is apparent from the description above. In addition, embodiments of the present invention are not directed to any particular programming language. It will be appreciated that the teachings of the present invention described herein may be implemented in a variety of programming languages, and the above description of specific languages is provided for disclosure of enablement and best mode of the present invention.
In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the above description of exemplary embodiments of the invention, various features of the embodiments of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be construed as reflecting the intention that: i.e., the claimed invention requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules in the apparatus of the embodiments may be adaptively changed and disposed in one or more apparatuses different from the embodiments. The modules or units or components of the embodiments may be combined into one module or unit or component and, furthermore, they may be divided into a plurality of sub-modules or sub-units or sub-components. Any combination of all features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or units of any method or apparatus so disclosed, may be used in combination, except insofar as at least some of such features and/or processes or units are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings), may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments herein include some features but not others included in other embodiments, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments can be used in any combination.
Various component embodiments of the invention may be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. Those skilled in the art will appreciate that some or all of the functionality of some or all of the components according to embodiments of the present invention may be implemented in practice using a microprocessor or Digital Signal Processor (DSP). The present invention can also be implemented as an apparatus or device program (e.g., a computer program and a computer program product) for performing a portion or all of the methods described herein. Such a program embodying the present invention may be stored on a computer readable medium, or may have the form of one or more signals. Such signals may be downloaded from an internet website, provided on a carrier signal, or provided in any other form.
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The use of the words first, second, third, etc. do not denote any order. These words may be interpreted as names. The steps in the above embodiments should not be construed as limiting the order of execution unless specifically stated.