Jump to content

Спектральный тест

Трехмерный график из 100 000 значений, созданный с помощью RANDU . Каждая точка представляет собой 3 последовательных псевдослучайных значения. Хорошо видно, что точки лежат в 15 двумерных плоскостях .

Спектральный тест — это статистический тест качества класса генераторов псевдослучайных чисел (PRNG), линейных конгруэнтных генераторов (LCG). [1] LCG обладают свойством: при построении в двух или более измерениях образуются линии или гиперплоскости, на которых можно найти все возможные выходные данные. [2] Спектральный тест сравнивает расстояние между этими плоскостями; чем дальше они друг от друга, тем хуже генератор. [3] Поскольку этот тест разработан для изучения решетчатых структур LCG, его нельзя применять к другим семействам PRNG.

По словам Дональда Кнута , [4] это, безусловно, самый мощный из известных тестов, поскольку он может не дать результатов LCG, которые проходят большинство статистических тестов. Подпрограмма IBM RANDU [5] [6] LCG не проходит этот тест для трех измерений и выше.

Пусть ГПСЧ генерирует последовательность . Позволять — максимальное расстояние между покрывающими параллельными плоскостями последовательности . Спектральный тест проверяет, что последовательность не разлагается слишком быстро.

Кнут рекомендует проверить, что каждое из следующих 5 чисел больше 0,01. где – модуль ЛКГ.

Цифры достоинств

[ редактировать ]

Кнут определяет показатель качества , который описывает, насколько близко разделение находится на теоретическом минимуме. В новой нотации Стила и Винья для измерения , фигура определяется как: [7] : 3 

,

где определяются, как и раньше, и постоянная Эрмита размерности d . – минимально возможное межплоскостное расстояние. [7] : 3 

L'Ecuyer 1991 далее вводит две меры, соответствующие минимуму во многих измерениях. [8] Опять же под повторной записью, это минимум для LCG от габаритов от 2 до , и то же самое для мультипликативного конгруэнтного генератора псевдослучайных чисел (MCG), т.е. такого, в котором используется только умножение, или . Стил и Винья отмечают, что в этих двух случаях рассчитывается по-разному, что требует отдельных значений. [7] : 13  Они также определяют «гармоничный» средневзвешенный показатель качества, ). [7] : 13 

Небольшой вариант печально известного RANDU , с имеет: [4] : (Таблица 1)

д 2 3 4 5 6 7 8
н 2
д
536936458 118 116 116 116
μмкд 3.14 10 −5 10 −4 10 −3 0.02
ж д [а] 0.520224 0.018902 0.084143 0.207185 0.368841 0.552205 0.578329

Совокупные показатели достоинств таковы: , . [а]

Джорджа Марсальи (1972) Соображения как «кандидат на лучший из всех множителей», потому что его легко запомнить и он имеет особенно большие спектральные тестовые числа. [9]

д 2 3 4 5 6 7 8
н 2
д
4243209856 2072544 52804 6990 242
μмкд [б] 3.10 2.91 3.20 5.01 0.017
ж д [а] 0.462490 0.313127 0.457183 0.552916 0.376706 0.496687 0.685247

Совокупные показатели достоинств таковы: , . [а]

Steele & Vigna (2020) предоставляют множителям самые высокие совокупные показатели качества для многих вариантов m = 2. н и заданная битовая длина файла . Они также обеспечивают индивидуальное значения и пакет программ для расчета этих значений. [7] : 14–5  Например, они сообщают, что лучший 17-битный a для m = 2 32 является:

  • Для LCG (c ≠ 0) 0x1dab5 (121525). , . [7] : 14 
  • Для MCG (c = 0) 0x1e92d (125229). , . [7] : 14 

Дополнительная иллюстрация

[ редактировать ]
Несмотря на то, что оба отношения проходят тест хи-квадрат , первый LCG менее случайен, чем второй, поскольку диапазон значений, которые он может выдавать в том порядке, в котором он их производит, распределен менее равномерно.
  1. ^ Jump up to: Перейти обратно: а б с д Рассчитано с использованием программного обеспечения Steele & Vigna (2020), программа «mspect» (src/spect.cpp, мультипликативный режим).
  2. ^ Рассчитано по ν 2
    d
    сообщил Марсалья.
  1. ^ Уильямс, КБ; Дуайер, Джерри (1 августа 1996 г.), «Тестирование генераторов случайных чисел, часть 2» , Журнал доктора Добба , получено 26 января 2012 г.
  2. ^ Марсалья, Джордж (сентябрь 1968 г.). «Случайные числа падают в основном в плоскостях» (PDF) . ПНАС . 61 (1): 25–28. Бибкод : 1968ПНАС...61...25М . дои : 10.1073/pnas.61.1.25 . ПМЦ   285899 . ПМИД   16591687 .
  3. ^ Джайн, Радж. «Тестирование генераторов случайных чисел (лекция)» (PDF) . Вашингтонский университет в Сент-Луисе . Проверено 2 декабря 2016 г.
  4. ^ Jump up to: Перейти обратно: а б Кнут, Дональд Э. (1981), «3.3.4: Спектральный тест», Искусство компьютерного программирования, том 2: Получисловые алгоритмы (2-е изд.), Аддисон-Уэсли .
  5. ^ IBM, Пакет научных подпрограмм System/360, версия II, Руководство программиста, H20-0205-1, 1967, стр. 54.
  6. ^ Международная корпорация бизнес-машин (1968). «Пакет подпрограмм IBM/360 Scientific (360A-CM-03X), версия III» (PDF) . Библиотека Стэна . II . Уайт-Плейнс, штат Нью-Йорк: Отдел технических публикаций IBM: 77. doi : 10.3247/SL2Soft08.001 . Программа научного применения H20-0205-3.
  7. ^ Jump up to: Перейти обратно: а б с д и ж г Стил, Гай Л. младший ; Винья, Себастьяно (февраль 2022 г.) [15 января 2020 г.]. «Простые в вычислении спектрально хорошие множители для конгруэнтных генераторов псевдослучайных чисел» (PDF) . Программное обеспечение: практика и опыт . 52 (2): 443–458. arXiv : 2001.05304 . дои : 10.1002/сп.3030 . Сопутствующее программное обеспечение и данные доступны по адресу https://github.com/vigna/CPRNG .
  8. ^ Л'Экуйер, Пьер (январь 1999 г.). «Таблицы линейных конгруэнтных генераторов разных размеров и хорошей решетчатой ​​структуры» (PDF) . Математика вычислений . 68 (225): 249–260. Бибкод : 1999MaCom..68..249L . CiteSeerX   10.1.1.34.1024 . дои : 10.1090/S0025-5718-99-00996-5 . Обязательно прочтите « Ошибки» . также
  9. ^ Марсалья, ДЖОРДЖ (1972-01-01), Заремба, С.К. (редактор), «Структура линейных конгруэнтных последовательностей» , «Приложения теории чисел к численному анализу » , Academic Press, стр. 249–285, ISBN  978-0-12-775950-0 , получено 29 января 2024 г.

Дальнейшее чтение

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2703c97ccaec0c31de4193133378f604__1710100200
URL1:https://arc.ask3.ru/arc/aa/27/04/2703c97ccaec0c31de4193133378f604.html
Заголовок, (Title) документа по адресу, URL1:
Spectral test - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)