ПОЦЕЛУЙ (алгоритм)
KISS ( Keep it Simple Stupid ) — семейство генераторов псевдослучайных чисел, представленное Джорджем Марсальей . [1] [2] [3] Начиная с 1998 года Марсалья размещал в различных группах новостей, включая sci.math , comp.lang.c , comp.lang.fortran и sci.stat.math , несколько версий генераторов. Все генераторы KISS объединяют в себе три или четыре независимых генератора случайных чисел с целью повышения качества случайности. Генераторы KISS создают 32-битные или 64-битные случайные целые числа, из которых при желании можно составить случайные числа с плавающей запятой. Оригинальный генератор 1993 года основан на комбинации линейного конгруэнтного генератора и двух генераторов сдвиговых регистров с линейной обратной связью . Имеет период 2 95 , хорошая скорость и хорошие статистические свойства; однако он не проходит тест LinearComplexity в тестах Crush и BigCrush пакета TestU01 . [4] Более новая версия 1999 года основана на линейном конгруэнтном генераторе, трехсдвиговом регистре сдвига с линейной обратной связью и двух генераторах умножения с переносом. Он на 10–20% медленнее версии 1993 г., но имеет больший период 2 123 и проходит все тесты в TestU01. В 2009 году Марсалья представил версию, основанную на 64-битных целых числах (подходящих для 64-битных процессоров), которая сочетает в себе генератор умножения с переносом , генератор Xorshift и линейный конгруэнтный генератор. [5] Имеет период около 2 250 (около 10 75 ).
Ссылки
[ редактировать ]- ^ Марсалья, Джордж; Заман, Ариф (1993). «Генератор ПОЦЕЛУЯ». Технический отчет, Департамент статистики, Университет штата Флорида, Таллахасси, Флорида, США .
- ^ Роуз, Грег (2018). «KISS: слишком просто» (PDF) . Криптография и связь . 10 : 123–137. дои : 10.1007/s12095-017-0225-x .
- ^ Кнейзель, Рональд Т. (2018). Случайные числа и компьютеры . Спрингер. ISBN 978-3-319-77696-5 .
- ^ Л'Экуйер, Пьер; Симард, Ричард (2007). «TestU01: Библиотека AC для эмпирического тестирования генераторов случайных чисел». Транзакции ACM в математическом программном обеспечении . 33 (4): 22–с. дои : 10.1145/1268776.1268777 . S2CID 273446 .
- ^ «64-битные генераторы случайных чисел KISS» . 28 февраля 2009 г.
Дальнейшее чтение
[ редактировать ]- Баклью, Джеймс (2013). «1.1 Равномерные генераторы» . Введение в моделирование редких событий . Спрингер. стр. 1–8. ISBN 978-1-4757-4078-3 .
- Роберт, Кристиан; Джордж Казелла (2013). «2.1.2 Генератор поцелуев» . Статистические методы Монте-Карло . Спрингер. стр. 39–43. ISBN 978-1-4757-3071-5 .
- Роуз, Грегори Г. (2017). «ПОЦЕЛУЙ: Слишком просто» . Криптография и связь . 10 : 123–137. дои : 10.1007/s12095-017-0225-x . ISSN 1936-2447 .