exponenta event banner

Использование автокалибровки для учета неопределенностей массива

В этом примере показана процедура самокалибровки на основе процесса оптимизации с ограничениями. Источники возможностей используются для одновременной оценки неопределенностей формы массива и направлений источника.

В этом примере требуется Toolbox™ оптимизации.

Введение

Теоретически можно сконструировать совершенную однородную линейную матрицу (ULA) для выполнения всех видов обработки, таких как формирование луча или оценка направления прихода. Обычно этот массив перед развертыванием калибруется в контролируемой среде. Однако во время работы в системе могут возникать неопределенности, указывающие на то, что массив нуждается в повторной калибровке. Например, воздействие окружающей среды может вызвать возмущение положений элементов массива, что приводит к неопределенностям формы массива. Наличие этих неопределенностей вызывает быстрое ухудшение характеристик обнаружения, разрешения и оценки алгоритмов обработки массива. Поэтому крайне важно как можно скорее устранить эти неопределенности массива.

Существует множество алгоритмов калибровки массива. В этом примере основное внимание уделяется одному из их классов - самокалибровке (также называемой автокалибровкой), где неопределенности оцениваются совместно с позициями ряда внешних источников в неизвестных местах [1]. В отличие от калибровки пилот-сигнала, это позволяет перекалибровать матрицу в менее известной среде. Однако в целом это приводит к небольшому количеству наблюдений сигнала с большим количеством неизвестных. Существует ряд подходов к решению этой проблемы, как описано в [2]. Один из них заключается в построении и оптимизации на основе функции затрат. Эти функции затрат имеют тенденцию быть в высшей степени нелинейными и содержат локальные минимумы. В этом примере функция затрат, основанная на алгоритме множественной классификации сигналов (MUSIC) [3], формируется и решается как задача оптимизации fmincon с помощью Optimization Toolbox (TM). В литературе также существует много других комбинаций [2].

Идеальный массив

Рассмотрим сначала использование 5-элементной ULA, работающей с интервалом в половину длины волны. В таком массиве позиции элементов могут быть легко вычислены.

N = 5;
designed_pos = [zeros(1,N);-(N-1)/2:(N-1)/2;zeros(1,N)]*0.5;

Не такой совершенный массив

Далее предположим, что массив возмущен во время работы и поэтому подвергается неопределенностям формы массива в измерениях x и y. Чтобы зафиксировать глобальные оси, предположим, что первый датчик и направление на второй датчик известны, как предписано в [4].

rng default
pos_std = 0.02;
perturbed_pos = designed_pos + pos_std*[randn(2,N);zeros(1,N)];
perturbed_pos(:,1) = designed_pos(:,1); % The reference sensor has no
                                        % uncertainties
perturbed_pos(1,2) = designed_pos(1,2); % The x axis is fixed down by
                                        % assuming the x-location of
                                        % another sensor is known

Визуализация несовершенства массива

На рисунке ниже показана разница между развернутым и возмущенным массивом.

helperCompareArrayProperties('Position',perturbed_pos,designed_pos,...
    {'Perturbed Array','Deployed Array'});
view(90,90);

Figure contains an axes. The axes with title Array Element Positions contains 2 objects of type scatter. These objects represent Perturbed Array, Deployed Array.

Ухудшение оценки DOA

В предыдущем разделе показано различие между развернутым массивом и массивом, который претерпел возмущения во время работы. Если слепо использовать обработку, разработанную для развернутого массива, производительность массива снижается. Например, рассмотрим оценщик луча, используемый для оценки направлений 3 неизвестных источников при -20, 40 и 85 градусах азимута.

% Generate 100K samples with 30dB SNR
ncov = db2pow(-30);
Nsamp = 1e5;               % Number of snapshots (samples)
incoming_az = [-20,40,85]; % Unknown source locations to be estimated
M = length(incoming_az);
[x_pert,~,Rxx] = sensorsig(perturbed_pos,Nsamp,incoming_az,ncov);

% Estimate the directions of the sources
ula = phased.ULA('NumElements',N);
spatialspectrum = phased.BeamscanEstimator('SensorArray',ula,...
    'DOAOutputPort',true,'NumSignals',M);
[y,estimated_az] = spatialspectrum(x_pert);

incoming_az
incoming_az = 1×3

   -20    40    85

estimated_az
estimated_az = 1×3

   -19    48    75

Эти неопределенности ухудшают производительность массива. Самокалибровка может позволить перекалибровать массив с использованием источников возможностей без необходимости знать их местоположение.

Самокалибровка

Ряд подходов к самокалибровке основан на оптимизации функции затрат для совместной оценки неизвестных параметров массива и источника (таких как датчик массива и местоположение источника). Необходимо тщательно выбрать функцию затрат и алгоритм оптимизации, чтобы обеспечить максимально легкую и быструю реализацию глобального решения. Кроме того, параметры, связанные с алгоритмом оптимизации, должны быть настроены для данного сценария. В литературе существует ряд комбинаций функции затрат и алгоритма оптимизации. Для этого примера сценария вместе с алгоритмом оптимизации fmincon выбирается функция затрат MUSIC [3]. По мере изменения сценария может оказаться целесообразным адаптировать используемый подход в зависимости от надежности алгоритма калибровки. Например, в этом примере производительность алгоритма калибровки падает по мере того, как источники отходят от конечного пожара, или увеличивается число элементов матрицы. Первоначальные оценки исходных местоположений, оцененные ранее, используются в качестве критерия инициализации процедуры оптимизации.

fun = @(x_in)helperMUSICIteration(x_in,Rxx,designed_pos);
nvars = 2*N - 3 + M;                       % Assuming 2D uncertainties
x0 = [0.1*randn(1,nvars-M),estimated_az];  % Initial value
locTol = 0.1;                              % Location tolerance
angTol = 20;                               % Angle tolerance
lb = [-locTol*ones(nvars-M,1);estimated_az.'-angTol]; % lower bound
ub = [locTol*ones(nvars-M,1);estimated_az.'+angTol];  % upper bound 

options = optimoptions('fmincon','TolCon',1e-6,'DerivativeCheck','on',...
    'Display','off');
[x,fval,exitflag] = fmincon(fun,x0,[],[],[],[],lb,ub,[],options);

% Parse the final result
[~,perturbed_pos_est,postcal_estimated_az]=helperMUSICIteration(...
    x,Rxx,designed_pos);
helperCompareArrayProperties('Position',perturbed_pos,perturbed_pos_est,...
    {'Perturbed Array','Calibrated Array'});
view(90,90);

Figure contains an axes. The axes with title Array Element Positions contains 2 objects of type scatter. These objects represent Perturbed Array, Calibrated Array.

polarplot(deg2rad(incoming_az),[1 1 1],'s',...
    deg2rad(postcal_estimated_az(1,:)),[1 1 1],'+',...
    deg2rad(estimated_az),[1 1 1],'o','LineWidth',2,'MarkerSize',10)
legend('True directions','DOA after calibration',...
    'DOA before calibration','Location',[0.01 0.02 0.3 0.13]) 
rlim([0 1.3])

Figure contains an axes. The axes contains 3 objects of type line. These objects represent True directions, DOA after calibration, DOA before calibration.

Благодаря выполнению этого процесса калибровки точность оценки источника значительно улучшилась. Кроме того, были также оценены положения возмущенных датчиков, которые могут быть использованы в качестве новой геометрии матрицы в будущем.

Резюме

В этом примере показано, как неопределенности формы массива могут повлиять на возможность оценки направления поступления неизвестных источников. Пример также иллюстрирует, как можно использовать самокалибровку для преодоления эффектов этих возмущений и оценки этих неопределенностей одновременно.

Ссылки

[1] Деревья фургонов, H. Оптимальная обработка массива. Нью-Йорк: Wiley-Interscience, 2002.

[2] E Tuncer и B Friedlander. Классическая и современная оценка направления прибытия. Elsevier, 2009.

[3] Шмидт, Р. О. «Оценка местоположения и параметров сигнала нескольких эмиттеров». Транзакции IEEE на антеннах и распространении. т. AP-34, март 1986, стр. 276-280.

[4] Я. Рокка и П. М. Шультхейс. Калибровка формы массива с использованием источников в неизвестных местоположениях - Часть I: Источники Фарфилда. IEEE Trans. ASSP, 35: 286-299, 1987.