Последовательность Холтона - Halton sequence
В статистика, Последовательности Холтона находятся последовательности используется для создания точек в пространстве для численных методов, таких как Моделирование Монте-Карло. Хотя эти последовательности детерминированный, они из небольшое расхождение, то есть кажутся случайный для многих целей. Впервые они были представлены в 1960 году и являются примером квазислучайное число последовательность. Они обобщают одномерное последовательности ван дер Корпута.
Пример последовательности Холтона, используемой для генерации точек в (0, 1) × (0, 1) в R2
Последовательность Халтона построена согласно детерминированному методу, который использует взаимно простые числа как его основы. В качестве простого примера, давайте возьмем одно измерение последовательности Холтона, основанное на 2, а другое на 3. Чтобы сгенерировать последовательность для 2, мы начнем с деления интервала (0,1) пополам, затем на четверти, восьмые. и т. д., что порождает
- 1⁄2, 1⁄4, 3⁄4, 1⁄8, 5⁄8, 3⁄8, 7⁄8, 1⁄16, 9⁄16,...
Эквивалентно, n-е число этой последовательности - это число n, записанное в двоичном представлении, инвертированное и записанное после десятичной точки. Это актуально для любой базы. В качестве примера, чтобы найти шестой элемент приведенной выше последовательности, мы должны написать 6 = 1 * 22 + 1*21 + 0*20 = 1102, который можно инвертировать и поставить после десятичной точки, чтобы получить 0,0112 = 0*2-1 + 1*2-2 + 1*2-3 = 3⁄8. Таким образом, приведенная выше последовательность такая же, как
- 0.12, 0.012, 0.112, 0.0012, 0.1012, 0.0112, 0.1112, 0.00012, 0.10012,...
Чтобы сгенерировать последовательность для 3, мы делим интервал (0,1) на трети, затем на девятые, двадцать седьмые и т. Д., Что дает
- 1⁄3, 2⁄3, 1⁄9, 4⁄9, 7⁄9, 2⁄9, 5⁄9, 8⁄9, 1⁄27,...
Когда мы объединяем их в пары, мы получаем последовательность точек в единичном квадрате:
- (1⁄2, 1⁄3), (1⁄4, 2⁄3), (3⁄4, 1⁄9), (1⁄8, 4⁄9), (5⁄8, 7⁄9), (3⁄8, 2⁄9), (7⁄8, 5⁄9), (1⁄16, 8⁄9), (9⁄16, 1⁄27).
Несмотря на то, что стандартные последовательности Халтона очень хорошо работают в низких размерностях, проблемы корреляции были отмечены между последовательностями, созданными из более высоких простых чисел. Например, если мы начали с простых чисел 17 и 19, первые 16 пар точек: (1⁄17, 1⁄19), (2⁄17, 2⁄19), (3⁄17, 3⁄19) ... (16⁄17, 16⁄19) было бы идеально линейная корреляция. Чтобы избежать этого, обычно отбрасывают первые 20 записей или какое-то другое заранее определенное количество в зависимости от выбранных простых чисел. Было также предложено несколько других методов. Одним из наиболее известных решений является скремблированная последовательность Халтона, в которой используются перестановки коэффициентов, используемых при построении стандартной последовательности. Другое решение - прыгнувший Халтон, который пропускает точки в стандартной последовательности. Использование, например, только каждой 409-й точки (также возможны другие простые числа, не используемые в основной последовательности Халтона), можно добиться значительных улучшений.[1]
Реализация в псевдокоде
алгоритм Последовательность Холтона является входы: показатель база вывод: результат в то время как делать вернуть
Смотрите также
использованная литература
- ^ Коцис и Уайтен, 1997
- Kuipers, L .; Нидеррайтер, Х. (2005), Равномерное распределение последовательностей, Dover Publications, п. 129, ISBN 0-486-45019-8
- Нидеррайтер, Харальд (1992), Генерация случайных чисел и квази-Монте-Карло методы, СИАМ, п. 29, ISBN 0-89871-295-5.
- Холтон, Дж. (1964), "Алгоритм 247: радикально-обратная квазислучайная последовательность точек", Коммуникации ACM, 7: 701-701, Дои:10.1145/355588.365104.
- Коцис, Ладислав; Уайтен, Уильям (1997), "Вычислительные исследования последовательностей с низким расхождением", Транзакции ACM на математическом ПО, 23: 266-296, Дои:10.1145/264029.264064.