Spectrum vacancy and occupancy forecasting
The spectrum forecasting system addresses congested and contested RF environments by predicting vacancies using deep learning, optimizing channel assignments to enhance spectrum utilization and reduce errors.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- QOHERENT INC
- Filing Date
- 2024-11-22
- Publication Date
- 2026-07-02
Smart Images

Figure CA2024051549_02072026_PF_FP_ABST
Abstract
Description
SPECTRUM VACANCY AND OCCUPANCY FORECASTINGREFERENCE TO PRIORITY APPLICATION
[0001] The present application claims priority to U.S. Provisional Patent Application no. 63 / 554,532, which was filed February 16, 2024, the content of which is incorporated herein by reference in its entirety.FIELD
[0002] The present disclosure relates generally to spectrum forecasting.BACKGROUND
[0003] The following paragraphs are not an admission that anything discussed in them is prior art or part of the knowledge of persons skilled in the art.
[0004] United States Patent App. Pub. No. 2023 / 0308884 purports to disclose systems, methods, and apparatuses for providing dynamic, prioritized spectrum utilization management. The system includes at least one monitoring sensor, at least one data analysis engine, at least one application, a semantic engine, a programmable rules and policy editor, a tip and cue server, and / or a control panel. The tip and cue server is operable to utilize the environmental awareness from the data processed by the at least one data analysis engine in combination with additional information to create actionable data.SUMMARY
[0005] The following summary is intended to introduce the reader to various aspects of the applicant’s teaching, but not to define any invention.
[0006] According to some aspects, there is provided a spectrum forecasting system. According to some aspects, there is provided a spectrum forecasting method.
[0007] According to some aspects, there is provided a spectrum forecasting system comprising a spectrum receiver to monitor a radio spectrum and collect live signal data in the form of raw spectrum recordings; a preprocessing engine communicatively coupled to the spectrum receiver to receive the raw spectrumrecordings and generate a stream of frames of past looking spectrograms from the raw spectrum recordings; and a spectrum forecasting deep learning model, trained on spectrogram data that has vacancies labelled, the spectrum deep learning forecasting model communicatively coupled to the preprocessing engine to receive the live signal data in the form of the stream of frames of past looking spectrograms from the preprocessing engine as input data, infer future vacancies, and chart a path through the future vacancies for assignment.
[0008] In some examples, the spectrogram receiver includes a software defined radio.
[0009] In some examples, the live signal data includes the last 20 milliseconds and the path includes the next 2 milliseconds.
[0010] In some examples, the live signal data includes the last 200 milliseconds and the path includes the next 20 milliseconds.
[0011] According to some aspects, there is provided a spectrum forecasting method, comprising receiving live signal data in the form of raw spectrum recordings of a radio spectrum; processing the raw spectrum recordings into a stream of frames of past looking spectrograms; inputting the stream of frames of past looking spectrograms into a spectrum forecasting deep learning model trained on spectrum data that has vacancies labeled; inferring, using the spectrum forecasting deep learning mode, future vacancies; and charting, using the spectrum forecasting deep learning mode, a path through the future vacancies for assignment.
[0012] In some examples, the live signal data is received from a software defined radio.
[0013] In some examples, the live signal data includes the last 20 milliseconds and the path includes the next 2 milliseconds.
[0014] In some examples, the live signal data includes the last 200 milliseconds and the path includes the next 20 milliseconds.
[0015] According to some aspects, there is provided a spectrum forecasting system, comprising a spectrum receiver to monitor a radio spectrum and collect livesignal data; a spectrum forecasting deep learning model communicatively coupled to the spectrum receiver to receive the live signal data as input data, infer future vacancies, and chart a path through the future vacancies for assignment.
[0016] In some examples, the spectrum forecasting system further comprises a preprocessing engine communicatively coupled to the spectrum receiver to receive the live signal data and preprocess the live signal data before passing the live signal data to the spectrum forecasting deep learning model as the input data.
[0017] According to some aspects, there is provided a spectrum forecasting method, comprising receiving live signal data from a radio spectrum; inputting the live signal data into a spectrum forecasting deep learning model; inferring, using the spectrum forecasting deep learning model, future vacancies; and charting, using the spectrum forecasting deep learning model, a path through the future vacancies for assignment.
[0018] In some examples, the spectrum forecasting method further comprises preprocessing the live signal data prior to inputting the live signal data into the spectrum forecasting deep learning model.DRAWINGS
[0019] The drawings included herewith are for illustrating various examples of articles, methods, and apparatuses of the present specification and are not intended to limit the scope of what is taught in any way. In the drawings:
[0020] Figure 1 is a schematic representation of an example flow of data for training a machine learning model.
[0021] Figure 2 is an example time-series representation of a captured signal.
[0022] Figure 3 is an example spectrogram representation of the signal of Fig.2.
[0023] Figures 4(a) and 4(b) are schematic representations of a machine learning model ingesting either a time-series signal (4(a)) or a spectrogram image (4(b)).
[0024] Figure 5 is an example representation of a time-series signal being separated into smaller length batches, where individual events are identified.
[0025] Figure 6 is a schematic representation of an example spectrogram image with annotations labelled.
[0026] Figure 7 is an example dataflow and schematic representation of the system for training a machine learning model using recorded waveforms and synthetically generated waveforms, for training a 5G model.
[0027] Figure 8 is a schematic representation of a model ingesting both 5GNR and LTE signals and outputting image spectrograms containing annotations.
[0028] Figure 9 is a schematic representation of an example architecture for implementing vacancy and usage prediction in an environment.
[0029] Figure 10 is a schematic representation of an example architecture for implementing vacancy and usage prediction when analysing a wider spectrum and a narrow portion of the wide spectrum at the same time.
[0030] Figures 11(a) and 11(b) are schematic representations of an example inference system trained on time series models and spectrogram models, respectively.
[0031] Figure 12 is a schematic representation of an example pipeline for training and deploying machine learning models onto inference systems.
[0032] Figure 13 is a schematic representation of an example system separated into an ML model component and a COTS hosted SDR component.
[0033] Figure 14 is a schematic representation of an example deployment of multiple receivers in parallel feeding into a supervisor system.
[0034] Figure 15 is a more detailed schematic representation of Fig. 14, where the supervisor system assigns channels to different emitters based on the forecasting obtained, and monitors the state of a channel to inform the forecasts.
[0035] Figure 16 is a schematic representation of an example system similar to Fig. 14, where receivers are monitoring different geographical areas.
[0036] Figure 17 is a schematic representation of an example system where distributed receivers are monitoring a wide spectrum of interest in parallel with a narrow spectrum of interest within the wide spectrum, and how the supervisor system may implement the predictions only to the narrowband receiver.
[0037] Figure 18 is a schematic representation of the generation of spectrogram masks based on an input series of spectrograms, highlighting the areas of availability.
[0038] Figure 19 is a schematic representation of an example recording of multiple spectrogram images into a combined image.
[0039] Figure 20 is a schematic representation of the recording of Fig. 19 fed into the model and the resulting output of predictions.
[0040] Figure 21 is a schematic representation of an example prediction of pathways of availability.
[0041] Figure 22 is a schematic representation of an example deployment of an inference application as deployed on a workstation or in a cloud environment.
[0042] Figure 23 is a schematic representation of an example deployment, where an environment monitor is added to the system and method.
[0043] Figure 24 is a schematic representation of an example deployment of the system providing instructions to a plurality of receivers lleveraging the predictive engine.
[0044] The drawings included herewith are for illustrating various examples of apparatuses and methods of the teaching of the present specification and are not intended to limit the scope of what is taught in any way.DETAILED DESCRIPTION
[0045] Various apparatuses or methods will be described below to provide an example of an embodiment of each claimed invention. No embodiment described below limits any claimed invention and any claimed invention may cover apparatuses and methods that differ from those described below. The claimed invention is not limited to apparatuses and methods having all of the features of any one apparatus ormethod described below, or to features common to multiple or all of the apparatuses or methods described below. It is possible that an apparatus or method described below is not an embodiment of any claimed invention. Any invention disclosed in an apparatus or method described below that is not claimed in this document may be the subject matter of another protective instrument, for example, a continuing patent application, and the applicant(s), inventor(s) and / or owner(s) do not intend to abandon, disclaim or dedicate to the public any such invention by its disclosure in this document.
[0046] Wireless technologies compete for finite spectrum that is increasingly congested (e.g., too many users), contested (e.g., malicious or accidental disruptions), and / or complex (e.g., advanced operating requirements). In some examples, the present disclosure relates to radio-frequency (RF) sensing and machine learning (ML) sensing applications.
[0047] In some examples, spectrum vacancies (may also be referred to as whitespace in some examples) are forecasted, e.g., so they can be assigned to a transmitter (e.g., friendly, adjacent, local, etc.) or to enable a transmitter to dance around interference. In some examples, this helps to overcome congested and / or contested spectrum environments (e.g., in tactical or civilian settings). In some examples, a system includes an RIA inference engine and a spectrum forecasting model. In some examples, a spectrum forecasting model is trained on extensive spectrogram data that has vacancies (areas with no signal) labeled (In some examples, the data comes from raw IQ. In some examples, a raw IQ method may be used alternatively or additionally), receives a stream of frames of past looking spectrograms as the input data (e.g., the last 10 milliseconds or 20 milliseconds or the last 10-20 frames), infers / predicts future vacancies (e.g., next frame, next 2 milliseconds or next 5 milliseconds), and charts a path of potentially vacant areas (e.g., highly probably to be vacant) for assignment. In some examples, the input data includes data from the last 5-30 milliseconds. In some examples, the input data includes data from the last 50-200 milliseconds. In some examples, the prediction includes the next 1-5 milliseconds. In some examples, the prediction includes the next 5-30 milliseconds. In some examples, the prediction includes the next 100milliseconds. In some examples, the prediction includes the next one or two frames (e.g., 5G frames or LTE). In some examples, the input includes 1 to 15 times the prediction (e.g., 1 to 15 times 5 milliseconds if 5 milliseconds is the prediction or 5 to 15 frames if 1 frame is the prediction). In some examples, the input includes about 1 times the prediction. In some examples, the input includes about 2 times the prediction. In some examples, the input includes about 10 times the prediction. In some examples, the input includes only (i.e., is limited to) about 1 or 2 or 10 times the prediction (e.g., 1 or 2 or 10 times 5 milliseconds if 5 milliseconds is the prediction or 1 or 2 or 10 frames if 1 frame is the prediction). In some examples, the radio spectrum monitoring is based on a fixed center frequency, as wide-band as the SDR and host system can allow (e.g., as opposed to sweeping through multiple bands).
[0048] In some examples, identifying future vacancies, if right above a certain threshold, the path can be used for other transmitters to consume, thereby consuming spectrum more efficiently. In some examples, identifying a vacancy identifies an unoccupied (i.e., not occupied but with availability) area. In some examples, the system or method identifies or recommends a path of vacancies in time and in frequency in which the probability of collisions is very low. In some examples, the system or method relies on reducing collisions to the point that the robustness systems of a given communications protocol (e.g. forward error correction) overcome the impact of any false negatives (forecasted vacancies that are not actually vacant). In some examples, the system or method results in a path identification or recommendation in time and in frequency to reduce collisions below a threshold where error correction always succeeds. In some examples, the system or method enables loosening specifications such that the lowest overhead for error correction can be applied, at the highest symbol rates (highest bandwidths).
[0049] In some examples, the system is implemented using a low-cost embedded device and a low cost (or mid cost) commercially available SDR, using a GPU enabled embedded device and a low cost (or mid cost) commercially available SDR, and / or using a workstation or laptop and a GPU and any commercially available SDR. In some examples, the system includes a single receiver and a single inferer. In some examples, the system includes multiple receivers. In some examples, thesystem includes multiple inferers. In some examples, the system includes a multireceiver configuration passing predictions into an analytics application. A multireceiver configuration passing predictions into an analytics application may enable three topologies: monitoring of wider bandwidth, monitoring of wider geographies, and / or monitoring of the same spectrum but with different settings (e.g., antennas, gain profiles, filters, signal processing profiles). In some examples, deep learning techniques are used. Deep learning is a type of machine learning that involves training algorithms on large datasets. In some examples, the system includes a remote, scalable, interoperable sensor that forecasts whitespace in real-time, without reliance on inputs from a network.
[0050] In some examples, the system or method is a passive monitoring system or method. In some examples, the system or method outputs the path recommendation or identification to another system or method for use. In some examples, the system or method is integrated with a transmitter to apply the path recommendation or identification for transmission.
[0051] In some examples, the system or method includes cognitive software-defined radio-based spectrum monitoring, vacant channel forecasting, and / or channel assignment. In some examples, the system or method includes a radiofrequency (RF) sensing system or method, equipped with automated spectrum analytics software, that can identify activity on a wireless spectrum, then forecast with high probability spectrum availability for networks to operate on. In some examples, the system or method includes dynamic spectrum management enabling users to adapt RF communications pathways as necessary. In some examples, the system or method includes a distributed software-defined radio (SDR) spectrum sensing system integrated with a machine learning (ML) application that can identify activity on a spectrum, identify recent whitespaces (or zones of spectrum vacancy), and forecast where a high probability of whitespace is expected in the immediate future. In some examples, the system or method includes a network configuration application configured to ensure that any operating radios are assigned to channels that will have a high probability of availability. In some examples, the system or method includes can be scaled, with multiple receivers working together, enabling an increase inspectrum that is monitored in real-time, or an increase in geographic coverage. In some examples, the system or method includes a trained deep learning (DL) model integrated into a SDR for forecasting areas that whitespaces are expected to be present with high probability, based on an input stream of live signal data from the SDR. In some examples, the system or method includes design architecture based on commercial off-the-shelf SDR and portable computer equipment, designed for scalability with multiple receivers. In some examples, the system or method includes software components within the system for pre-processing, operating any models, logging, and sharing data and inference results. In some examples, the system or method combines emerging ML methodologies from the RF and other domains with COTS SDR hardware and open standards, and uses these techniques to improve real-time wireless network configuration based on real-world measurements.
[0052] In some examples, the system or method includes a remote, scalable, interoperable sensor that forecasts whitespace in real-time, without reliance on inputs from a network. In some examples, the system or method is low cost-per channel and has low power requirements over traditional architectures which stream signal data to a large scale (e.g., hyperscaler) cloud services provider (e.g., Google Amazon Azure). In some examples, the system or method implements whitespace forecasting using generative methods for machine vision or occupancy anticipation methods for robot navigation or few-shot machine learning techniques that are able to learn accurate predictions with small data samples. In some examples, the system or method is integrated with commercially available SDR hardware, and configured for interoperability with third party communication systems using open standards. In some examples, the system or method is fully integrated and includes rear-view inference, forward-looking forecasting, with the ability to be reconfigured and redeployed.
[0053] In some examples, in use the SDR is tuned to the specific spectrum, sample rate, channel, gain settings for its task. It ingests data and produces a stream of IQ samples. In some examples, from here there are two methods (1) time series and (2) spectrogram based. In both cases the outcome may be the same, and functionally they may be the same, the difference is in performance, behaviours, and speed. In some examples, time series can provide more detail on the time axis, buthas special computational needs such as FIR Filtering. In some examples, spectrograms can provide more comprehensive coverage but less detail, and have their own computational needs (basis state transformation). In both cases, the data is preprocessed. In some examples, when using a spectrogram, slicing of a finite component of the stream is performed (for all stream elements), then a power spectrum distribution for each slice is obtained and passed in batches of power spectrum distributions into the ML model. In some examples, the time series is passed through a number of FIR filters based on the frequency resolution that is desired, and the data is then passed through the model or series of models. The model or series of models may perform three sequential tasks: identifying vacancies in the input data for the past few “input examples” - e.g. t=-n, -n+1 ,=n+2, ...-1 ,0, forecasting an estimate of where vacancies are expected for a specific number of frames in the future based on the input data (e.g. t=1,2,3), and recommending an optimal path through the forecasted vacancies. In some examples, the recommended path is then integrated into the desired channel assignment framework of the user. In other words, a sliding window is used to make predictions for sequential input examples. For example, prediction 1 would be derived from input data for to, ti , t2 and ts; prediction 2 would be derived from input data for ti , t2, ts, t prediction 3 would be derived from input data t2, ts, t4, ts; and so on.
[0054] In some examples, the present description describes systems and methods for receiving a window of IQ samples from a radio signal. The window can be e.g. 20ms long. The system and method described herein will output a prediction of usage for the next e.g. 2ms, by using a ML model. In some examples, the ML model is a convolutional LSTM neural network that has been previously trained on RF signals. The input to the ML model is in some examples a 2 by K tensor to produce a 2D tensor of dimension 256x256, i.e. a spectrogram map. The spectrogram map can be e.g. a fast Fourier transform having 256 points of varying amplitude or a masked 1 or 256-point resolution spectrogram, gridded to a lower resolution, for example 64 by 64.
[0055] Preferably, a two-step process is followed for converting an IQ sample with a layer for FFT transformation to produce a series of 2ms spectrogram maps fedto the convolution LSTM neural network for forecasting the next 2ms window. The FFT layer is a fully connected layer, with, in some embodiments, 1024 neurons for 1024-point FFT operations while the convolution LSTM neural network is a 5-layer network of convolution LSTM interleaved with batch normalization to take a sequence of spectrogram maps and produce the next spectrogram map.
[0056] Figure 1 is a schematic representation of an example workflow for training a machine learning model 150 from recorded signals 100. The signals 100 are sliced (or separated into shorter time samples) and labelled 110. The resulting data set, obtained over a period of time, is curated and fed into the machine learning model 150, One the model is trained, the model 150 can be deployed on operational devices 160.
[0057] Figures 2 and 3 are respectively a time-series and spectrogram representation of a recorded signal 100.
[0058] Figure 4(a) and 4(b) illustrate how the model 150 may be fed a complex vector stream 201 (4(a)) or a series of spectrogram images 301 , each derived from recorded signal 100.
[0059] Referring now to Figure 4a, an exemplary time series classification is illustrated. As mentioned previously, the time series data is preferably converted to a spectrogram. A model 150 is fed a complex vector stream. The model 150 performs inference on batches of data, ranging in samples from 16ms to over 20ms. The model 150 optionally labels each batch as will be explained hereinafter (or annotates individual events). Figure 4b shows an exemplary spectrogram image inference step. The reader will understand that since the input is already in the form of a spectrogram, it is not necessary to convert the input. A person skilled in the art will recognize that the embodiments described herein are exemplary, and various design choices can achieve the objectives outlined herein. For example, while a method of converting a signal into a spectrogram, generating a spectrogram mask and generating a resource grid, this series of steps is not essential. The examples provided herein can be adapted to start from a time series of a signal, produce a forecasted resource grid orin the form of a time series following by a path recommendation either in spectrogram form or time series.
[0060] The model 150 is in this illustrated in Fig. 4(b) fed yet another complex vector stream in the form of spectrograms 301.
[0061] As an example, the type of annotation for an inference result 400 is shown in Fig. 5, and includes information such as the nature of the signal or signals present and their configuration, the utilization of the batch and the context thereof. For example, the nature of the signal can include whether 5GRN or LTE signals are detected. The utilization will return information such as the number of users, identification of anomalous events, impairment present on the channel and the quantification of such impairments. Context refers to whether the signal is related to 2-way call traffic or video streaming. Of course, a person skilled in the art will recognize that additional features can be extracted and annotated.
[0062] Referring now to Fig. 6, in some examples, as mentioned above, a time series of the data is converted into a spectrogram. The spectrogram is fed into a filter to identify portions of the spectrogram that lie above a predetermined level. The resulting, filtered spectrogram is called a mask. The mask is then converted into a resource grid. A first exemplary method for converting into a resource grid includes defining a resource grid as a set quantum of time and frequency (bins are say 100khz 100khz 1mhz wide and each have a length of 0.5ms 1ms 2ms etc). Within each location in the grid, a pixel count is performed, based on a threshold of “occupied” pixels. In other words, if half the pixels at a predetermined location are positive, the resource is considered occupied. A person skilled in the art will recognize that other means are possible to perform the pixel count.
[0063] The mask of Fig. 6 also illustrates different annotations related to the spectrogram.
[0064] In some examples, the mask that is returned is fairly simple in that a binary indication is made regarding whether the pixel is vacant (returning i.e. a value of “0”) or occupied (returning i.e. a value of “1”)
[0065] Figure 7 illustrates a variation on the method for training a model 150 and deploying the model 150 into classifiers 160. Raw waveforms 100 are captured, sliced and labelled 110. The resulting recorded dataset is curated and fed into a machine learning model. In parallel, synthetic waveforms are generated 111, and are also curated to create a base dataset, which can be also fed to the model 150.
[0066] Figure 8 is a schematic representation of a workflow, where a spectrogram, in the illustrated case from a 5GNR or LTE signal is fed into a model which produces a segmented image, or an image with bounding boxes or mask overlaid with the predicted image. Referring now to Figure 9, illustrated is an exemplary system constructed according to the present disclosure. Streamed signal data 500 (whether a time series or spectrogram) is provided to a prediction application 600 deployed to a software defined radio (SDR), a workstation, and / or the cloud 700. The prediction application includes a user interface / application 601 , an IO interface 603, and a control interface 605. The control interface includes an input module 607 (e.g., SDR control / driver code, such as gr-based to drive either from the original equipment manufacturer or a third party such as a community driver), a pre-model module 609 (e.g., to batch, resize, preprocess, and / or ingest), and an inference module 611 (e.g., for classifications). In some examples, the model or models are deployed into an inference deployment and execution solution, e.g., an RIA inference engine. In some examples, a post-process module is further provided, to for example, change a representation of a signal (i.e. produce a masked spectrogram or a resource grid), chart pathways of vacancies, identify specific occupancies of interest or assign channels or resource blocks, or a combination thereof.
[0067] In some examples, the system and method is adapted to ingest the stream signal data (before conversion to a spectrogram) for the past 10 or 20 ms, up to and beyond the past 500ms.
[0068] Referring now to Figure 10, illustrated is an exemplary workflow. A software defined radio (SDR) 701 is tuned to a spectrum of interest 711 (e.g., for B200mini 56mhz wide). The SDR produces a baseband IQ stream 713. Batches of data are loaded into a trained model 150 / 160 for inference. The model classifies, andoutputs results, e.g., for visualization and / or logging. In some examples, the inference system is used with time series models (e.g., as exemplified in Figure 11a). In some examples, the inference system is used with spectrogram models (e.g., as exemplified in Figure 11b).
[0069] As exemplified in Figure 12, a pipeline may be included for training and deploying models onto inference systems, such as either of the inference systems of Figures 11a and 11b. The purpose of the pipeline is to augment the method and system as described herein with an additional module to train and deploy the ML models, and to provide continual training to the ML models, allowing the ML model to adapt and evolve with changes in the environment.
[0070] Referring now to Figure 13, in some examples receivers 701 are powered with machine learning models 150. A receiver may include a machine learning model or models 150 to perform classification it is trained for. A receiver may further include a commercial, off the shelf, hosted software defined radio 701 with infrastructure for radio frequency, supporting model, logging, and interacting with external systems. The model 150 be executed as a standalone prediction engine, or can be integrated or deployed into a commercial radio package.
[0071] Referring now to Figures 14 and 15, in some examples low cost SDR units 701 , 70T, ... , 701nare used to form multiple receivers. Distributed receivers may input to a supervisory system 800. The supervisory system may include analytics.
[0072] It will be appreciated that multiple receivers may result in more bandwidth. As illustrated in Figure 114 and 15, the exemplary receivers 701, 70T, ..., each cover a different portion of the spectrum. In various examples, the different portions of the spectrum may be adjacent (e.g., abutting), overlapping, or spaced from one another. Referring now to Figure 15, the environment may be congested and / or contested.
[0073] Figure 15 illustrates an example where the system and method of the present invention are further operatively connected to a supervisor system 800. The supervisor system 800 a component that is capable of assigning channels to communications links, while be informed by the system and method described herein.The supervisor system 800 may be, in some example, a spectrum access system, a base station or other device which may be dynamically assigning resource blocks, and may in some examples be triggering other adaptations to the communications link such as modulation, gain, and others. In some embodiments, the supervisor system 800 may be monitoring other metrics of the communication channel, such as BER, and use that information as an indicator of the state of the environment.
[0074] The illustrated example illustrates reinforcement learning, whereby states inform an action of an agent (the whole system in this case). The illustrated example may be a testbed for training an agent.
[0075] Alternatively, or additionally, multiple receivers may result in more coverage (e.g., geographical). As illustrated in Figure 16, the exemplary receivers each covers a different geographic area (in this illustrated map, the receivers are looking at different parts of what is knows as Atlantic Canada). In various examples, the different areas may be adjacent (e.g., abutting), overlapping, or spaced from one another.
[0076] In some examples, multiple receivers are used for parallel capture. Multiple receivers may have different configurations. Referring to Figure 17, illustrated is an exemplary system including a receiver covering a wide spectrum of interest and a separate receiver covering a narrow spectrum of interest within the wide spectrum of interest. The supervisory system may monitor the wide spectrum of interest through the first receiver and issue instructions for the narrow spectrum of interest. In some embodiments, supervisor system 800 performs a spectrum analytics suite of functions, by i.e. forecasting events. Alternatively, supervisor system 800 may be logging the forecasts, assigning channels, jamming a portion of the spectrum or even informing another unrelated system to monitor some activity on the spectrum. Multiple receivers may result in parallel granularity.
[0077] In various examples, various topologies may be used. In some examples, colocation is used. Shared hosts are possible. In some examples, distributed receivers are used. In some examples distributed collocated multi receivers are used (e.g., narrow or wide coverage).
[0078] Referring now to Figures 18-21, an exemplary method includes, at Fig.18, using a segmentation model to produce masks 901 of the spectrum that identify portions of the spectrum that are unoccupied. As illustrated in Figure 21, the exemplary model includes producing a stream of frames (analogous to a video stream) of the output masks 901. In some embodiments, the forecast status includes a forecast for the next few milliseconds 901. As illustrated in Figure 21 , the exemplary method includes identifying pathways of availability 903. In some examples, the method does not identify all availability, but only pathways of availability. Forecasting pathways of availability may save on computing costs and may reduce confusion and / or ambiguity. Forecasting pathways of availability may increase a probability of successfully achieving error-free communication over a channel. In some examples, the channels identified in the pathways of availability are selected such that the selection reduces the number of changes in channels that are needed over time (e.g., a penalty is introduced for changing the channel).
[0079] Referring now to Figure 22, an exemplary method running on the schematic representation of the system of Fig. 9 is illustrated. The method or system may be integrated into an SDR inference system 600. A whitespace inference application 680 may be deployed to a workstation or cloud. Because of the environment, if may be necessary to produce a spectrogram and resizing of the data frames and thus may be deployed upstream of the models and classifiers. The models 150 / 160 may be used to generate classification including availability paths in time and frequency, as they may be defined on a resource grid, and the classifications may be passed to an output interface 603, shown in Fig. 9. In some examples, a single receiver that identifies whitespaces and timestamps / annotates usage may be used. In particular, the whitespace inference application 680 may be supported by module 690 which ingests the original or resized spectrograms, outputs the availability masks. The availability masks are then fed into a future availability forecaster which outputs the predicted availability paths for the next few milliseconds. For example, the predicted availability paths can cover the next 2ms, the next 10 ms, or more. In other examples, the predicted availability paths can cover 20ms, 30ms or more.
[0080] For greater clarity, an inference engine is the software that runs the model; a model loaded to an inference engine is an application anda whitespace inference application is an inference engine with a whitespace forecasting model loaded to it.
[0081] Referring to Figure 23, in some examples, a system or method may be implemented as part of a communications system, adding sensing capability to the network to dynamically assign channels according to predicted pathways of availability.
[0082] In some examples, dataset curation may include recording waveforms, slicing and labeling the recordings, constructing classes and creating a recorded dataset. In some examples, dataset curation may also, or alternatively, include creating synthetic waveforms, slicing and labeling the synthetic waveforms, constructing classes and creating a synthetic dataset.
[0083] In other examples, the forecasting of vacancies can be exploited for other purposes. In particular, forecasting of vacancies results in an identification of portions of the spectrum that are in fact highly used. This can lead one to identify those portions of the spectrum that can be jammed, or captured and recorded for further analysis.
[0084] In various examples, the system or method may be designed for various targets. The system or method may be designed for a particular target (e.g., targetspecific adaptations) or designed for more than one target (e.g., able to be applied to more than one at the user’s discretion). For example, targets include SDR, workstations, and cloud servers. The system or method may be designed for a computer such as Raspberry Pi and / or Jetson Orin. A system or method may be designed for a SDR such as RTLSDR, LISRP, BladeRF, HackRF, ThinkRF, and / or Pluto.
[0085] In some examples, streamed signal data is provided to a prediction application deployed to an SDR, workstation or cloud. The prediction application advantageously uses Fast Fourier Transform (FFT) techniques to convert the timeseries data into spectrogram data and resizes the spectrogram when necessary,applies a model or models, develops classification, and provides the output via an output interface.
[0086] In some examples, an artificial intelligence radio transceiver (AIR-T) may be used. In some examples, models may be deployed to FPGA. In some examples, federated learning may be used. In some examples, federated learning with continuous retraining and deployment may be used.
[0087] Embodiments may be deployed in hardware and / or software.
[0088] What has been described above has been intended to be illustrative and nonlimiting. It will be understood by persons skilled in the art that other variants and modifications may be made without departing from the scope of the claims appended hereto. The scope of the claims should not be limited by the preferred embodiments and examples, but should be given the broadest interpretation consistent with the description as a whole.
Claims
CLAIMS:
1. A spectrum forecasting system, comprising:a spectrum receiver to monitor a radio spectrum and collect live signal data in the form of raw spectrum recordings;a preprocessing engine communicatively coupled to the spectrum receiver for receiving the raw spectrum recordings and generating a stream of frames of spectrograms from the raw spectrum recordings; anda forecasting engine communicatively coupled to the preprocessing engine to receive the stream of frames of spectrograms as input data, identify vacancies in the frames of spectrograms and predict future vacancies for assignment.
2. The spectrum forecasting system of claim 1 , wherein the spectrogram receiver includes a software defined radio.
3. The spectrum forecasting system of claim 1 , wherein the live signal data includes at least the last 20 milliseconds and the path includes at least the next 2 milliseconds.
4. The spectrum forecasting system of claim 3, wherein the live signal data includes the last 200 milliseconds and the path includes the next 20 milliseconds.
5. A spectrum forecasting method, comprising:receiving live signal data in the form of raw spectrum recordings of a radio spectrum;processing the raw spectrum recordings into a stream of frames of past looking spectrograms;inputting the stream of frames of past looking spectrograms into a spectrum forecasting deep learning model trained on spectrum data that has vacancies labeled;inferring, using the spectrum forecasting deep learning model, future vacancies; andcharting, using the spectrum forecasting deep learning model, a path through the future vacancies for assignment.
6. The spectrum forecasting method of claim 5, wherein the live signal data is received from a software defined radio.
7. The spectrum forecasting method of claim 5, wherein the live signal data includes the last 20 milliseconds and the path includes the next 2 milliseconds.
8. The spectrum forecasting method of claim 5, wherein the live signal data includes the last 200 milliseconds and the path includes the next 20 milliseconds.
9. A spectrum forecasting system, comprising:a spectrum receiver to monitor a radio spectrum and collect live signal data; a spectrum forecasting deep learning model communicatively coupled to the spectrum receiver to receive the live signal data as input data, infer future vacancies, and chart a path through the future vacancies for assignment.
10. The spectrum forecasting system of claim 9, further comprising a preprocessing engine communicatively coupled to the spectrum receiver to receive the live signal data and preprocess the live signal data before passing the live signal data to the spectrum forecasting deep learning model as the input data.11.A spectrum forecasting method, comprising:receiving live signal data from a radio spectrum;inputting the live signal data into a spectrum forecasting deep learning model;inferring, using the spectrum forecasting deep learning model, future vacancies; andcharting, using the spectrum forecasting deep learning model, a path through the future vacancies for assignment.
12. The spectrum forecasting method of claim 11, further comprising preprocessing the live signal data prior to inputting the live signal data into the spectrum forecasting deep learning model.
13. A spectrum forecasting system, comprising:a spectrum receiver configured to monitor a radio spectrum and collect live signal data;a spectrum forecasting deep learning model communicatively coupled to the spectrum receiver, the spectrum forecasting deep learning model configured to receive the live signal data as input data, infer future vacancies, and chart a path through the future vacancies for assignment; anda preprocessing engine communicatively coupled to the spectrum receiver, the preprocessing engine configured to preprocess the live signal data before passing the live signal data to the spectrum forecasting deep learning model as the input data.