А.Ф. Деон, Ю.А. Меняев
134
ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. Приборостроение. 2017. № 5
{
if (c[j] == 0) q0++;
else if (c[j] == 1) q1++;
else if (c[j] == 2) q2++;
else q3++;
}
cout << "q0 = " << q0 << endl;
cout << "q1 = " << q1 << endl;
cout << "q2 = " << q2 << endl;
cout << "q3 = " << q3 << endl;
_getch(); // просмотр результата
}
После запуска этой программы на мониторе появляется следующий листинг:
w = 15 N1 = 32767
n1 = 0 n2 = 32767
q0 = 11996
q1 = 12162
q2 = 5977
q3 = 2633
Полученный результат показывает, что было пропущено
q0 = 11996
слу-
чайных величин. Только
q1 = 12162
случайные величины были созданы один
раз и действительно обладают свойством равномерности на интервале
0 : 32767 .
Дважды были сгенерированы
q2 = 5977
случайные величины, нару-
шающие условие равномерности. Остальные
q3 = 2633
случайные величины
могли быть созданы три и более раз. Это и есть результат низкого качества: что-то
есть, но мало.
Для создания случайной сетки на плоскости, должны выполнять два декар-
товых условия равномерности:
1) сетка не должна иметь пропущенные узлы-вершины;
2) сетка не должна иметь повторяющиеся вершины.
Далее будем называть плоскость равномерно случайной, если на ней суще-
ствует декартовая сетка случайных узлов-вершин.
Предыдущее тестирование
H0101
функции
rand()
показывает, что со-
зданная на ее основе случайная плоскость обладает низким качеством, посколь-
ку будет иметь пропущенные и повторяющиеся случайные величины. Из этого
также будет следовать, что представленный выше программный код из генера-
тора нормальных случайных величин методом Бокса — Мюллера не сможет
обеспечить высокое качество последовательностей нормальных случайных ве-
личин. Причина — низкое качество функции
rand()
.
Возникает вопрос, какими должны быть равномерные случайные последо-
вательности, чтобы обеспечить существование абсолютно всех равномерных
последовательностей случайных величин длиной
w
бит? Доказательство суще-
ствования полного множества таких последовательностей будет убедительным,
если можно представить абсолютно все последовательности равномерных слу-
чайных величин длиной
w
бит.