checkConfirmation

Проверяйте, должна ли дорожка быть подтверждена

Синтаксис

tf = checkConfimation(historyLogic)
tf = checkConfimation(scoreLogic)

Описание

пример

tf = checkConfimation(historyLogic) возвращает флаг, который является true, когда, по крайней мере, Mc из Nc недавние обновления объекта historyLogic логики истории дорожки является true.

пример

tf = checkConfimation(scoreLogic) возвращает флаг, который является true, когда дорожка должна быть подтверждена на основе счета дорожки.

Примеры

свернуть все

Создайте основанную на истории логику. Задайте пороговые значения подтверждения Mc и Nc как вектор [2 3]. Задайте пороговые значения удаления Md и Nd как вектор [3 3].

historyLogic = trackHistoryLogic('ConfirmationThreshold',[2 3], ...
    'DeletionThreshold',[3 3])
historyLogic = 
  trackHistoryLogic with properties:

    ConfirmationThreshold: [2 3]
        DeletionThreshold: [3 3]
                  History: [0 0 0]

Инициализируйте логику, которая записывает хит как первое обновление логики. Флагом подтверждения является false, потому что количество хитов - меньше чем два (МГц).

init(historyLogic)
history = output(historyLogic);
confFlag = checkConfirmation(historyLogic);
disp(['History: [',num2str(history),']. Confirmation Flag: ',num2str(confFlag)]);
History: [1  0  0]. Confirmation Flag: 0

Обновите логику с хитом. Флагом подтверждения является true, потому что два хита (МГц) считаются в новых трех обновлениях (Nc).

hit(historyLogic)
history = output(historyLogic);
confFlag = checkConfirmation(historyLogic);
disp(['History: [',num2str(history),']. Confirmation Flag: ',num2str(confFlag)]);
History: [1  1  0]. Confirmation Flag: 1

Создайте основанную на счете логику, задав порог подтверждения. Логика использует порог удаления по умолчанию.

scoreLogic = trackScoreLogic('ConfirmationThreshold',8);

Задайте вероятность обнаружения (pd), вероятность ложного предупреждения (pfa), объем интервала обнаружения датчика (volume) и новый целевой уровень в единичном объеме (beta).

pd = 0.8;
pfa = 1e-3;
volume = 1.3;
beta = 0.1;

Инициализируйте логику с помощью этих параметров. Первое обновление логики имеет успех.

init(scoreLogic,volume,beta,pd,pfa);
disp(['Score and MaxScore: ', num2str(output(scoreLogic))]);
Score and MaxScore: 4.6444      4.6444

Флагом подтверждения является false, потому что счет является меньше, чем порог подтверждения.

confirmationFlag = checkConfirmation(scoreLogic)
confirmationFlag = logical
   0

Задайте вероятность, что обнаружение присвоено дорожке. Затем обновите логику с хитом. Текущий счет и максимум выигрывают увеличение.

likelihood = 0.05 + 0.05*rand(1);
hit(scoreLogic,volume,likelihood,pd,pfa)
disp(['Score and MaxScore: ', num2str(output(scoreLogic))])
Score and MaxScore: 9.1916      9.1916

Флаг подтверждения теперь верен, потому что счет больше, чем порог подтверждения.

confirmationFlag = checkConfirmation(scoreLogic)
confirmationFlag = logical
   1

Входные параметры

свернуть все

Отследите логику истории, заданную как объект trackHistoryLogic.

Отследите логику счета, заданную как объект trackScoreLogic.

Выходные аргументы

свернуть все

Дорожка должна быть подтверждена, возвращена как true или false.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

| | |

Введенный в R2018b