Radar Systems Engineering and Data Synthesis in MATLAB
Overview
In this webinar, you will learn how to perform trade-off analysis in the early stages of the radar system development when the design requirements are being developed. We will also show the workflow for authoring scenarios with multiple radar sensors and targets to synthesize radar data with varying levels of fidelity, from raw I/Q signals to clustered detections and tracks. Through several examples, we will demonstrate the use of these scenarios to synthesize radar data for algorithm development, system performance assessment, and resource management for a multifunction radar.
Highlights
Highlights include:
- Perform link budget analysis and evaluate design trade-offs interactively with the Radar Designer app
- Author and simulate a radar scenario to synthesize radar data using statistical models and signal-level models.
- Model resource management for multifunction radars
About the Presenter
Sam Lehman is an Application Engineer at MathWorks specializing in signal processing, communications, and radar. Prior to MathWorks he worked as a software engineer at Boeing and obtained degrees in Physics and Electrical Engineering from the Georgia Institute of Technology.
Recorded: 24 May 2023
Hello, everyone. Thank you for attending the multifunction radar system design with MATLAB seminar. My name is Sam Lehman. And I'm an application engineer at MathWorks supporting our aerospace and defense customers with signal processing, communications, and radar workflows.
Prior to working at MathWorks, I was a software engineer working in the aerospace and defense industry. Before that I studied physics and electrical engineering at the Georgia Institute of Technology. Today I'll be covering an introduction to radar system development in MATLAB.
In our view, the building blocks of a radar system are RF frontend, antenna systems and phased arrays, signal processing and data processing blocks for generating detections and tracks, and resource management and control from modeling multifunction radar systems and allocating resources between different tasks.
Because it is important to predict and analyze the performance of the radar system in realistic environments, it's essential to consider the effects of the environment and targets by modeling scenes and scenarios. Our goal is to make MATLAB and Simulink the preferred platforms to develop radar systems from analysis of real data, to using more simulations for the design, deployment, integration, and test of radar.
The radar toolbox supports the full radar lifecycle from trade off analysis and systems engineering to component design and operations analysis. We've identified four areas of focus that enable us to support the full radar lifecycle, radar systems engineering for early stages of development and trade off analysis, radar scenarios and data synthesis that enable simulating different scenarios and generating data to evaluate the performance of algorithms, multifunction radar to perform multiple tasks through proper resource allocation for each task, and use of artificial intelligence in radar applications.
In this presentation, I'll show you the capabilities of the radar toolbox in these focus areas. In radar systems development and modeling, there's always a trade off between simulation time and fidelity. In the early stages, you want to know if an idea is possible. For this a low level of fidelity is required to be able to explore a lot of what-if scenarios in a short amount of time.
To validate your designs, you need a higher level of fidelity. And for more detailed designs, you will need a much higher level of fidelity. As you can see in this chart, the simulation time increases as the fidelity of your model increases. It's essential to have models at different levels of fidelity to serve different stages of the radar system lifecycle.
One of the key enablers to support the full radar lifecycle is three different abstraction levels for analyzing and modeling radars, power level, measurement level, and waveform level. The power level is based on the radar equation and is used for link budget analysis at a system level. In the measurement level, the signal processing is abstracted out. And detections are generated based on the target signal to noise ratio and receiver operating characteristics.
This abstraction level is used for scenario analysis in designing tracking systems that need longer-duration scenario simulations. Finally, the waveform level is used to generate synthetic IQ signals. In this abstraction level, all components of the radar system, including the antennas and transceivers, are modeled. This abstraction level can be applied to algorithm development and end-to-end system performance analysis.
The fidelity of these abstraction levels increases from the power level to the waveform level, as do the required computational resources. This is why the measurement level is more suitable for long-duration scenarios, while the waveform level is mainly used for much shorter amounts of time. It is important to be able to switch between these levels of fidelity and to ensure their consistency.
We'll discuss an example of using multiple levels of fidelity later. I want to briefly cover our agenda today before we dive in. We're first going to discuss performing a link budget analysis and evaluating design trade offs for our radar system. Next, we'll simulate a radar scenario to synthesize radar data. Finally, we will look at modeling resource management for multi-function radars.
In this presentation, I will demonstrate the capabilities of the radar toolbox in each of the focus areas. To help with following along, I have some reminders included in the slides. In the top left, you'll see the focus area. And on the bottom left, you'll see the abstraction level that is used in the presented example or feature.
Let's start with radar systems engineering. The first example we'll talk about today is performing link budget analysis and evaluating design trade offs. With the radar designer app, you can interactively perform link budget analysis. You can use this app in the early stages of radar system development when you know the requirements of a system and want to come up with a set of parameters that satisfy these requirements.
You can start with five built-in configurations to get a head start. There's a set of visualizations available for trade off analysis, such as a stoplight chart and range doppler coverage to name a few. In the table in the bottom of the app, you'll see the radar performance metrics, such as minimum range and range resolution, and the threshold and objective values for each of the parameters.
The color coding in the last column of the table will indicate the system performance compared to objectives and thresholds. If the objective is met, the color is green. If the performance is not meeting the objective but is still above the threshold, the color is yellow. And red indicates that the performance is below the required threshold.
The final thing I'd like to point out to you here is the set of different panels for parameter configuration for our radar scenario design. You'll see here that we can specify parameters for the radar, the target, and the environment. Let's go ahead and jump into our specific example here today.
Here's the set of radar specifications we want to design to today. There are a couple of specifications that I want to point out in particular. First is that the radar should detect a small manned aircraft with a radar cross-section of one meter squared. It ranges from 300 meters to 18 kilometers. The second is the probability of detection over that range should be 0.9. And the probability of false alarm should be 10 to the minus 6.
Let's jump into the app and see if we can get started designing this radar system. OK, let's get started with some radar system design in MATLAB using the Radar Designer app. So to open the Radar Designer app, I'm going to go to the MATLAB toolbar across the top, open the Apps tab, open the apps dropdown, and scroll down to the Radar Designer, and open it up.
Awesome. Now my Radar Designer application is opened. And I can get started with my radar design. I'm going to get started today by opening an existing session and iterating on a radar that I have previously worked on. So I'll go ahead and open that up. You'll notice today that as we work, we move from left to right across this toolbar.
We started here on the left, opening or creating a new session. And now, we are going to take a look at this metrics panel right here. You'll notice we're specifying a maximum range constraint of 18 kilometers, which matches that maximum range that we need to detect our target at that we specified in the slides previously.
What that maximum range constraint is specifying is the range at which we are evaluating our probability of detection down here. So you'll notice that we have a threshold for our probability of detection of 0.75 and an objective of 0.9. Like we stated before, the threshold is the minimum requirement for our system to perform. The objective is what it will do under ideal conditions.
Right now, our radar has a designed probability detection at 18 kilometers of 0.80. That's above the threshold, but below the objective. So this box is yellow. What if I get new requirements in? My boss just called me and let me know that 0.75 isn't a sufficient operational requirement for this radar system. Well, I can just go ahead and update that requirement to 0.85 from 0.75.
And you'll notice that the radar app will automatically update everything for me. So we'll see here now that box in the last column is turned red, signifying that I'm no longer meeting the threshold or the objective. I'll change that back to 0.75 just to match what we had in the slides.
OK, so now I want to look at another one of our metrics down here, range resolution. So you can see here that we have a range resolution requirement of at least 50 meters of range resolution. We need to be able to resolve two targets that are 15 meters apart. Ideally we want to be able to resolve two targets that are 30 meters apart. Right now, you'll see that we're meeting the threshold, but not meeting our objective.
Well, what can we do to potentially meet our objective? Let's take a look now at the radar design parameters panel over here on the left. So we want to meet the objective. And we know that there's a few parameters that we can change. We know that the pulse bandwidth for our radar pulse waveform is proportional to our range resolution. The larger the pulse bandwidth, the better our range resolution.
So let's take a look at changing this pulse bandwidth parameter right here. Right now it's three megahertz. So maybe I'll try making it something like five megahertz and see how that affects my performance of my radar system. We'll see now that the range resolution metric has updated. And we can see a green box now in that last column. And we see that our new range resolution is right about 30 meters.
Great. So that's awesome. We've already improved the performance of our radar system. And now we're meeting another one of the requirements that we specified in that PowerPoint. I'll jump back there briefly before we get to the target environment, just to see what some of the other requirements that we may have to meet are.
You'll notice there's a whole bunch of other parameters here on the left as well that we can start specifying based on some of those system specifications and requirements in that slide that we had. These are things like your kind of main radar parameters, like peak power, pulse width, pulse repetition frequency, some hardware characteristics, antenna and scanning characteristics, and coverage characteristics for the radar, detection and tracking, and some other signal processing kind of gains and losses you might incur from things like post integration and constant false alarm rate detection. And you can even include your own custom loss factors there at the bottom.
Next I want to take a look at the target panel in designing some of the target parameters. I want to jump back into the slide though for just a second to take a look at what some of our requirements are. Another one of the requirements you can see here is that the radar we're detecting should have a small radar cross-section of one meter squared.
We can take that and input that directly into the Radar Designer application up here in the target panel. You'll see we specified a radar cross-section of one meter squared. And we've even specified a fluctuation model for it. We can also specify some characteristics of the target's motion and position using the elevation angle and maximum acceleration tabs.
Next, let's take a look at the Environment tab. Again, I want to jump back into our requirements and take a look at what some of the environmental factors that we should consider are. Because this is an airport radar and we're trying to detect planes, we need to be able to detect planes in all kinds of weather conditions.
It would be great if we could evaluate the performance of our radar in heavy rainfall up to 16 millimeters an hour of rain conditions over the range of our radar. Let's take a look and see how we can use the Environment tab to do that. You'll see here that there's a precipitation specification panel with different kinds of precipitation in it in the Environment tab.
Let's first take a look at our radar performance in 16 millimeters per hour of rain. So we can see here that we're specifying that we want the rain to occur over the entire range of our radar from 0 kilometers to 20 kilometers away, and has a rate of 16 millimeter an hour as stated in our requirements document. We can see that our probability of detection with that high rate of rain is 0.8089, which meets our threshold, but not our objective.
Well, let's see the difference that happens if our radar is operating on a sunny day. So we're going to go ahead and change the precipitation type from rain to none. We can see now that our radar is operating much better than our ideal objective with the probability of detection of 0.99 at 18 kilometers away. That's great.
So we see now that the impact of the rain is in fact massive on this radar system. It's great that we can include the effect of the rain to be sure that we are sufficiently designing our radar to operate in non-ideal conditions. If I want to see more about the specific effects of the rain on my radar system, I can use this environmental losses analysis up in the Analysis tab at the top of the screen.
I'll go ahead and open that up. And what I want to direct your attention to right now is this precipitation loss plot. You'll notice that at 18 kilometers of range, our maximum range, we have a little bit more than 4 dB of loss that's just due to the heavy rain that we're experiencing. Finally, I want to point out that we also have effects of atmospheric gas loss and lens effect loss.
You can look at atmospheric and surface effects by checking this free space box over here on the left. This will provide you with earth models, atmosphere models, and surface clutter models for things like sea, and land, or your own custom clutter model, as well as different kinds of atmosphere models, and taking into account the curvature of the Earth.
Well, for now, I'm pretty happy with the performance of my radar. We've seen that it can work in kind of not ideal conditions when there's a heavy rainfall going on. And we've also seen that we've really got ideal performance when there isn't rain and in sunny conditions. I think I'm ready to take this to the next part of my workflow, which we'll discuss in a little bit.
To do that, I'm going to go up to this Export button in the toolbar at the top. Like I said, we've worked from left to right. We saw how we used the file, metric, analysis, and now export panels in the toolbar. So I'll go ahead and click that. And I'll export my detectability analysis to a MATLAB script.
This performs all the same tasks that we just did in the Radar Designer application. But it does them programmatically. So you have a little bit more flexibility in running parametric sweeps through different parameters and using some of these in further workflows. I want to scroll down a little bit to a function that is particularly useful, which is the design radar function that's generated by the Radar Designer app.
This includes all of those parameters that we just specified in that radar parameters panel in the app. We can use this to design radar objects to use in simulations and scenarios that we'll see later. With that, I'm going to jump back into the slides. And we can start talking about how we can take this radar design further.
As we discussed during the demonstration, the system parameters include fundamental radar parameters such as operating frequency and peak power, hardware specifications such as noise figure and beam shape loss. And you can also consider the processing and scanning gains and losses in your budget analysis.
Of course, you'll also want to include the effects due to targets in the environment in your link budget analysis and system design. These effects can include target radar cross-section and swirling models, as well as surface clutter and precipitation. One more example in radar systems engineering is in analyzing detectability of a target over terrain.
You can place the radar at a specific location and have a target trajectory as shown here. The color map on the target trajectory is showing the signal to noise ratio of the target. The red color indicates the lack of line of sight from the radar.
Then you can obtain a detectability map based on the target signal to noise ratio, line of sight, and the effect of signal processing gains, for example, pulse integration. Now let's move to the next section, radar scenarios and data synthesis. Within the radar toolbox you can author and simulate radar scenarios.
In this slide, I'll briefly introduce the workflow. And in the following slides, I'll provide more detail of each step. First, we start by modeling platforms and targets. We will see different ways of defining the radar cross-section for these platforms and targets. Next, we'll model the effects of the environment. This can include clutter from land and sea surfaces, as well as refraction due to the atmosphere.
Then we'll define trajectories and motion for the platforms and targets in this scenario. After that, we will model radar sensors. Based on the specific simulation needs and requirements, we will select an appropriate abstraction level from the levels we discussed in the beginning. We'll cover more on this later.
Now we're ready to run the simulation and generate results based on the sensor model we used. We can take this further and perform Monte Carlo analysis and perturb either the ground truth or sensor parameters. Now let's see each of these steps with a little more detail.
There are several levels of fidelity we can choose from for modeling radar targets. We can use point targets with a radar cross-section that is a function of azimuth, elevation, frequency, and polarization. We can also utilize analytical radar cross-sections for basic shapes like a cylinder. And with a superposition of these basic shapes or point targets, we can make a non-rigid body model with multiple scatters.
We can also use measurement data or full-wave simulation results, for example, from the Antenna Toolbox as the radar cross-section of the targets. Next, we'll look at modeling the environment in this scenario. To increase the fidelity of our analysis, we can model and assess the effect of land and sea surface clutter.
To briefly touch upon the atmospheric refraction, there are a number of built-in atmosphere models based on effective earth radius and refractive gradient. There are three options for you to define the land elevation height map. You can model a flat surface. You can import different data files, for example, digital terrain elevation data, or a DTED file. Or you can generate a custom elevation height map.
There are helper functions that are available for you to synthesize custom elevation data. Or you can use your own functions to generate the elevation height maps. After you define the elevation height map, you want to assign a reflectivity model to your surface. Here is a table of built-in land surface reflectivity models that covers a large frequency range for all the grazing angles.
And if there's a model that you would like to work with and you don't see it on the list, you can certainly bring in your own models. Like the land surfaces, you can also model sea surfaces with motion. We provide a built-in motion model for sea surfaces based on the model, where we multiply a spectral model in a spreading function to model two kinds of waves, gravity waves with lower frequency and higher height and capillary waves with lower height and higher frequency.
You have three parameters to control the behavior of the sea motion, wind direction, wind speed, and fetch. You can also control these parameters through sea state. It's important to note that besides the available built-in model, you can bring in your own sea motion models to this platform. And similar to the table I showed you in the previous slide, there's a list of available sea reflectivity models in MATLAB.
For the platforms and targets that you defined earlier, you can model motion by defining their trajectory. You have two ways of defining a trajectory, either by defining the waypoints or by using kinematic properties like velocity and position. Having access to different frames of reference, like the global frame, platform frame, and ultimately the center or local frame, provides the required flexibility to model complex scenarios with multiple platforms while the sensors are scanning in different directions.
You'll notice here that two nice features we also have are automatic banking and automatic pitch and roll, which are suitable for modeling fixed-wing and rotary-wing aircraft respectively. There are two different radar sensor models available. The radar data generator is the measurement-level model that generates detections or tracks.
There are three detection modes that you can use in your simulations, monostatic, bistatic, and passive or electronic support measures. In the monostatic mode, you can set up the radar model to generate clustered or unclustered detections. The other sensor model is the radar transceiver, which is based on a waveform-level model.
You define the waveform, antenna system or phased array, as well as the transmitter and receiver. With this model, you can generate an IQ signal which can be used for training a network for artificial intelligence or for developing signal processing algorithms. With a number of available scopes, you can easily generate different visualizations, such as range Doppler and range angle maps.
Next, I'll show you an example of using these workflows. OK, let's jump into MATLAB now and see how we can do this in earnest. We want to use radar scenes to generate synthetic radar data at both the measurement and the waveform level. We're going to demonstrate this today by trying to detect three targets with one centrally-located radar at both of those abstraction levels.
We're then going to compare the outputs of the results of the two simulations to be sure that our radar sensor models are consistent. So how are we going to go about getting started with doing this? Well, first we're going to configure a radar scenario. This is the environment in which all of this stuff occurs. It handles platform motion and signal emission propagation and return.
At the end, it will generate the detection objects that we need for a measurement level radar analysis or the IQ we need to do a waveform-level radar analysis and signal processing design and system evaluation. Let's go ahead and create our radar scenario object. OK, so we have an empty scenario created now. But we need to populate it with target platforms.
How can we go about getting started doing that? Well, the first thing we'll need to do is define how our targets move in this scenario. We can do that using trajectory objects. In this case, I've chosen a kinematic trajectory and assigned a position at no velocity because these targets are stationary. You can also define waypoint trajectories in XYZ or long/lat/alt coordinates.
I'll then take that trajectory and apply it to a platform object to add it to the scenario. I'll do this three times, one time for each of my three targets. If I want to improve the fidelity of my simulation, I can also add radar cross-sections to each of these targets to understand how different radar cross-sections will affect my radar performance.
Let's run this section and add those targets to our radar scenario. Great. So now we can see our targets visualized as these red triangles in our radar scenario. Looks like we're ready to start adding our radar platform and configure our measurement-level sensor model. OK, so here's where we start doing our sensor monitor configuration in our radar platform development.
You'll notice that I'm using the radar data generator function here. This is the measurement-level radar model that exists in MATLAB. You'll notice there's a few properties that we've applied here to make sure it agrees with some of our design specifications. There's even more properties that you can choose from to make sure your statistical model is an accurate representation of your system.
We can scroll through a few here in the radar data generator documentation. This can be daunting at first. But this is where I want to call back to that Radar Designer application we discussed earlier. The design radar function that we got as output from that application is a great way to get an idea of what kind of property specifications you need to apply here in your radar data generator object to have a radar sensor model that will really work for whatever your scenario or mission is.
So now let's add this radar sensor to a radar platform and apply that to our scenario. It looks pretty much the same as what we did before. Now we're just specifying a sensor for the platform as well. The radar is also stationary and is located at the origin between those three targets. Let's run this section and see what happens when we add our radar platform.
Now we've added our radar platform. And we can see that as a blue square here in our radar scenario. Looks like we're ready to start simulating. So how do we go about running the actual radar scenario simulation? Well, it's super easy. All we need to do is call the advanced function of the radar scenario object. This will evolve the scenario until there's no platform motion left to perform or until we reach the maximum time that was specified up above when we defined the scenario object.
You'll notice that inside the while loop we're using the detect function here. This generates the measurement level statistical detections that we can use to evaluate our radar performance. We'll add those detections to this detection buffer, so that we can plot them later. Let's go ahead and run this section and see if we detected each of our targets.
The simulation is done. And now I can scroll down and look at my radar scenario plot. We can see here in the visualization that these green diamonds have been added. These green diamonds represent the statistical detections that our radar sensor generated. We notice that those diamonds are directly over the top of the target ground truth for each of our targets.
That's great. That means our radar sensor model worked exactly as we wanted it to. You can specify more complex trajectories and more noise in your own models if you want to create a more representative realistic scenario. So now that we've got our measurement level sorted, let's go ahead and try to generate IQ data and a waveform level detection for each of these targets as well.
Now I'm going to restart the scene, so that I can perform the exact same simulation over again with my waveform-level radar sensor model. I'll define my radar sensor model with the radar transceiver object. You'll notice as input to the radar transceiver I'm passing my measurement-level radar sensor model. This is a great way to ensure consistency between the radar transceiver and the radar data generator.
You can also specify your own parameters manually for the radar transceiver object if you want. And there's additional parameters that you might want to configure as well, like the transmit antenna, receive antenna, and receiver, which will help improve the fidelity of your radar system simulation. Let's apply this now to our radar platform, so that it has a waveform-level sensor model.
Great. So the next thing we'll need to do is actually develop some signal processing to be able to extract detections from our IQ data that we receive from our radar scenario. You'll notice that we have a matched filter that we're configuring here. This matched filter is configured using built-in MATLAB functions and the waveform that we specified for our IQ-level sensor object. You'll notice in this case it's a rectangular waveform.
So now we specified our matched filter to help improve our range resolution and do pulse compression. And we need to specify a noise floor and threshold, so we can actually do detections when we receive a signal. You'll notice we also apply some automatic gain control using the time varying gain functionality. Awesome.
So now we have our signal processing system configured, so that we can get detection information out of our received IQ data. This is where you can perform your own high-fidelity modeling. If you have your own algorithms, noise mitigation, clutter mitigation, or other kinds of techniques you're using here to process your radar data, this is a great place to add them in.
OK, so let's go about running the simulation. It looks largely the same as what we did before. We're using the advanced function from the radar scenario still. But we're using the receive function to receive IQ data as opposed to the detect function to receive measurement level detections. The rest of this while loop is where we perform our signal processing.
You'll notice here that we're applying our matched filter. And then we're applying our time-varying gain object. Further, we apply the threshold and actually generate detections. We then transform those detections into the global coordinate system, so we can plot them later and evaluate the performance of our radar system. Let's go ahead and run this section. I think it should be pretty quick.
So our simulation is done. And let's see if our IQ-level sensor performed as well as our measurement-level sensor did. So I'll scroll down here. And I'll blow this up so it's a little bit easier to see. OK, so now in our radar scenario we still see our radar here in the middle. And we still see our statistical detections over the top of our target ground truths.
We can also see black circles around those targets. And those represent the IQ detections that we generated using our own signal processing in the IQ or waveform sensor model. We can see that those exist around each of these targets, which means that our IQ-level sensor did a pretty good job of detecting these targets as well.
So now we have two great models for my radar system. We have a waveform level model that I can use to evaluate and develop my own signal processing algorithms and a statistical level model, where I can use detections to generate tracking algorithms and to work on higher level system or mission-level performance.
Great. So now that we've seen how this works in practice, let's jump back into the slides. We'll look a little bit more in depth at an applied example here. The example is to model and analyze the performance of a frequency-modulated continuous wave radar altimeter. The radar altimeter is a flight safety instrument that provides altitude reading.
First, we need to author the scenario. For a radar altimeter, the reflection from land surfaces is the target instead of the clutter. To model the land surface, we're going to import a DTED file and use an APL model for the reflectivity, which supports a 90-degree grazing angle in an urban environment. With waypoints, we'll define a landing trajectory for the airplane.
The blue patch you see on the surface here is the radar beam footprint projected on the surface. In this example, the waveform-level radar model, or radar transceiver, is used to model an FMCW radar. For the waveform, a triangle FMCW wave is used. And the antenna is modeled by a Gaussian antenna element with 40 degrees of beam width. The transmitter and receiver are also modeled based on the parameters found in the radar altimeter recommendation document by the ITU.
By simulating the scenario, you generate an IQ signal for each measurement point. Then you generate a range response by applying dechirping and an FFT. After that you apply the constant false alarm rate detection algorithm to generate detections on the range data.
The goal is to find the first reflection point from the ground for an accurate altitude measurement. You can evaluate the accuracy of your signal processing algorithm against the ground truth and compare that with the required accuracy thresholds. We can see this in the plot on the right.
We have that green triangle, which is the accuracy limit. And we have regions of accuracy thresholds necessary, the best being the one meter accuracy close to the ground, followed by 3% accuracy, and then 5% accuracy. You can see that our altimeter altitude and our truth altitude align well within the accuracy required for basically the entire trajectory of this plane.
Next, let's look at one example in managing resources for a multifunction radar. Multifunction phased array radars perform multiple tasks, including searching for targets, tracking and classifying detected targets, communicating with other systems, and protecting against interferences. Having a phased array frontend provides agility in beam steering and switching between different beams.
These functionalities are usually multiplexed not only in time, but also in angle. Each of these functionalities require certain resources such as signal bandwidth and beam width. There are several constraints on the available resources, so it is important to be able to model a system that performs different functions and find the optimum resource allocation for these functionalities in different conditions.
Now let's take a look at an example of resource allocation for a multifunction radar. Let's look at a closed-loop loop system of a multifunction phased array radar, where the radar resources are split between three tasks. The volume search task is for scanning large volumes of space looking for targets. It has a wide beam within a narrow bandwidth, which results in only approximate target location.
In the figure on the right hand side, you see the search pattern for the volume search. Notice the widening of the beam pattern on the edges of the volume search due to the scan loss. The detections from volume search are passed to cued search. Cued search scans a small volume around the detection provided by volume search in an adaptive fashion.
More specifically, it forms seven beams around the generated detection and volume search tasks. In cued search task radar systems, narrow beams and wide bandwidth waveforms are used to provide better accuracy of the target position. Tracking tasks first confirm the detection is generated by a cued search and then track them.
We used an adaptive tracker in this example to update the tracks based on the estimated target dynamics. In other words, maneuvering targets have higher revisit rates compared with other targets. Using a phased array, the system can create multiple simultaneous beams to perform multiple tasks in parallel. As a result, these tasks are competing for resources such as bandwidth, power-aperture product, and time.
It's worth noting the tracking task will use all available bandwidth and all available power-aperture product. Therefore the tracking task cannot be done in parallel with other tasks. In each update interval, each task requests a look that defines the required resources for the next task based on the current operational situation. The job of the scheduler block is to prioritize these looks and assign resources to each of them.
Then the radar sensor model executes the scheduled looks and produces detections. These detections are passed to either cued search or to tracking tasks for the next scheduled look. Let's look at applying this to a scenario with six maneuvering targets. On the left hand side, you see the search grid with different beams.
The blue is showing the beams for volume search. Orange beams are for cued search tasks. And purple beams are for track updates. On the right hand side, we see the resources used at each moment of time, as well as the average used resources. Tracking six targets in addition to performing volume and cued search does not put much strain on the radar system resources.
To stress test the model, we can increase the probability of false alarms. In this situation, because the number of false detections are high, additional cued search and even more track confirmation beams are scheduled. This ultimately results in few or no resources left for the volume search.
Before we finish, let's briefly discuss AI for radar. AI for radar is a big topic. I'm going to go through a simple workflow for deep learning and explain the pain points within the workflow. With a brief example, I'll mention some of the capabilities that will address these pain points.
The workflow for deep learning starts with creating and accessing data sets. You can either work with recorded data from real hardware or synthesized data with the radar scenario workflow I showed you earlier. To train a neural network, a large, good quality data set is required. This data also needs to be labeled.
Labeling can be a time-consuming and repetitive task. But it's an essential part of this workflow. With the signal labeler app, you can actually automate the labeling of synthesized or recorded data sets. You then start pre-processing and transforming the data to make it more suitable for training the network of your application.
For example, if you're using networks that are working with images, you can transform the IQ signal into time-frequency images and use that for network training. Radar and wireless-specific expertise in tools play a key role when preparing and preprocessing data to train networks. You might also be dealing with a large amount of recorded data.
Besides labeling the data, you might need to perform some augmentation and transformation on all the data. Features such as the data store and image store in MATLAB come in handy in these situations, which will enable you to work with these large data sets natively. Next is to develop predictive models and train models with the data you prepared. You could either be designing the models from scratch or modifying an already developed model.
Either way, you can use the Deep Network Designer app to get a head start. There are also tools available for managing and optimizing the training process. Once you're satisfied with the outcome of the training and the performance of the network, you may want to deploy that to a desktop app, cloud, or embedded devices, all of which are supported by MATLAB.
And it's important to note that this is an iterative approach. For example, you might not be satisfied with the performance from the network. In that case, you can go back to step one to generate more data or potentially step two to apply a different transformation, and then train the network with new data to improve the network performance. Here's an example where we want to remove the maritime clutter from the PPI images using neural networks.
We use the radar scenario workflow to synthesize the data required for training and the validation of the network. A maritime radar is scanning the surface of the sea with 360-degree rotation. The beam pattern for the radar is shown in the figure in the top left. The target shown in the picture is modeled by a number of point scatters to model an extended target.
The sea surface motion is modeled with the built-in model. Each training data includes a pair of synthetic radar PPI images, an input image that has both sea clutter and extended target returns, and the desired response image, which includes only the target returns. Both surface parameters and target parameters are varied to generate 84 pairs of synthetic radar images.
To evaluate the network, we provide the network with a set of PPI images that the network has not seen during the training and validation. At the output, you can see in the picture in the bottom right hand side the sea clutter is moved from the input PPI image. The remaining high-power clutter near the center of the images could be removed by a spatially-aware layer such as a fully connected layer or by preprocessing the original images to remove the range-dependent losses.
And this brings us to the summary of the presentation. I showed you the capabilities and examples for each of these four pillars that ultimately enable the full radar lifecycle. Radar systems engineering, we looked at the Radar Designer app for link budget analysis. Then we looked at the workflow for authoring and simulating radar scenarios along with some examples.
Finally, we saw how you can model a closed-loop phased array radar system to analyze the performance of resource management under stress conditions. Finally, we talked briefly about AI for radar and some workflows that might be valuable there. There are more than 80 examples shipping with the radar toolbox that you can take advantage of to get started.
I would highly suggest checking out the radar Toolbox documentation page and seeing the Get Started with Radar Toolbox section. We also have further sections describing additional applications of the Radar Toolbox, radar systems engineering, scenario generation, data synthesis, and signal and data processing. I started the presentation by saying that you can develop radar systems with MATLAB and Simulink. And I hope through the presentation, I have been able to show you the capabilities of the Radar Toolbox that enable you to analyze, simulate, and design radar systems.
Now, I also want to mention that other tools that are necessary for developing radar systems. I'm showing some of these tools in this slide, for example, the sensor fusion and tracking toolbox. With the sensor fusion and tracking toolbox, you can apply more complicated tracking algorithms. And with the phased array system toolbox, you can model beamforming and signal processing algorithms.
You can also deploy these algorithms to your choice of hardware. System Composer is another tool that can help with your model-based systems engineering workflows by connecting the requirements to component design and tracing test results back to the requirements. With that, I'd like to thank you for taking the time to attend this seminar. I hope you found it useful. And I would certainly encourage you to take a deeper dive into all of these examples. Thank you very much.