malobukov: (Default)
[personal profile] malobukov

Если кучность винтовки 1 MOA, то какова вероятность попасть из неё в мишень диаметром 1 MOA?

Всё честно, никаких подвохов. Винтовка пристреляна по центру, расстояние то же, все условия те же. Кучность определена как размер группы из 5 выстрелов (усреднённый по многим группам). Координаты пробоин следуют нормальному распределению с одинаковой дисперсией по вертикали и горизонтали. Для определённости можно считать, что MOA означает угловую минуту, но с таким же успехом могло бы быть полваленка на полверсты — единицы измерения всё равно сокращаются и на ответ не влияют.

Эта простая на первый взгляд задачка, как ни странно, не имеет аналитического решения (или по крайней мере мне оно неизвестно). Поэтому придётся отправиться в Монте-Карло. Оттуда нужно всего одно число — средний размер группы из 5 выстрелов, когда координаты пробоин следуют стандартному нормальному распределению. Получить его можно нехитрой программой.
#include <iostream>
#include <random>
#include <complex>

int main(void)
{
  std::default_random_engine gen(42);
  std::normal_distribution<double> dist;
  for (unsigned j = 0; j < 20; j++) { // Повторить эксперимент несколько раз
    double sum = 0;
    const unsigned groups = 10000000;
    for (unsigned group = 0; group < groups; group++) {
      std::complex<double> impact[5]; // Координаты пробоин в виде комплексных чисел
      for (unsigned shot = 0; shot < 5; shot++) { // Выстрелы в группе
        impact[shot] = std::complex(dist(gen), dist(gen));
      }
      double extreme_spread = 0; // Размер группы
      for (unsigned i = 0; i < 5 - 1; i++) {
        for (unsigned j = i + 1; j < 5; j++) {
          double candidate = std::abs(impact[i] - impact[j]);
          if (extreme_spread < candidate) {
            extreme_spread = candidate;
          }
        }
      }
      sum += extreme_spread;
    }
    std::cout << sum / groups << "\n";
  }
  return 0;
}


Результат вынесен в заголовок: 3.066.

Дальше — дело техники. Радиус промаха r следует распределению Рэлея с функцией распределения CDF = 1 - e-r2/2σ2. В нашем случае диаметр мишени равен 1, поэтому r = 1/2. Стандартное нормальное распределение (у которого σ = 1) даёт группу размером 3.066. Чтобы получить группу размером 1, σ должна быть 1/3.066.

Подставив эти значения r и σ в функцию распределения, получаем вероятность попадания 1 - e-3.0662/8 = 69%, то есть примерно два из трёх.

На первый взгляд совсем негусто. Для сравнения можно грубо прикинуть вероятность попадания по формуле Алана Агрести (Simple and Effective Confidence Intervals for Proportions and Differences of Proportions Result from Adding Two Successes and Two Failures, прямая ссылка на PDF): если было k успехов после n попыток, то вероятность успеха (k + 2) / (n + 4). Тогда получается (5 + 2) / (5 + 4) = 78%, то есть заметно больше.

Но тонкость тут в том, что центр каждой отдельной группы не совпадает с центром мишени. Мы сначала стреляем в стену сарая, а потом рисуем на ней мишень там, где дырки. Чем меньше количество выстрелов в группе, тем больше этот эффект.

Монте-Карло говорит, что если при пяти выстрелах считать радиус промаха от средней точки попадания группы, то получится 77%. А если от центра мишени — тогда как раз 69%. Так что всё сходится.

Date: 2017-02-24 03:59 pm (UTC)
From: [identity profile] slon357.livejournal.com
Т.е. из СВД (тигра) с кучностью в 6-7см. валовым патроном, вероятность попадания в головную мишень на 300 метрах - два из трёх, в идеальных условиях - при пристрелке в ноль, отсутствии ветра и ошибок при стрельбе?

Вроде того

Date: 2017-02-24 09:04 pm (UTC)
From: [identity profile] malobukov.livejournal.com
Я с СВД знаком только понаслышке, поэтому придётся лезть в НСД. Там написано, что "кучность боя винтовки признается нормальной, если все четыре пробоины вмещаются в круг диаметром 8 см [на 100 м]". Это примерно соответствует размеру группы из 5 в 8*3.066/2.793=8.8 см. То есть 6-7 см нормально.

Тогда теоретически - да, два из трёх в круг диаметром 18-21 см.

На практике размер группы на 300 отличается от размера группы на 100 больше, чем в три раза, и на расстояниях больше 200 систематические ошибки начинают играть большую роль (погрешности измерения расстояния, ошибки в вычислении превышения и т.п.)

Про то, как померять размер мишени, которую можно поразить на заданном расстоянии (или наоборот) с помощью бумажки и линейки, но без компьютера - завтра.

Re: Вроде того

Date: 2017-02-24 09:24 pm (UTC)
From: [identity profile] slon357.livejournal.com
кучность боя винтовки признается нормальной, если все четыре пробоины вмещаются в круг диаметром 8 см [на 100 м]"

Там ещё + отклонение СТП на 3 см., емнип, тоже в норме.

Profile

malobukov: (Default)
Лжедмитрий Малобуков

July 2017

S M T W T F S
       1
23456 78
91011 12131415
161718 19202122
23242526272829
3031     

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 22nd, 2017 04:36 am
Powered by Dreamwidth Studios