scramble

Скремблируйте квазирандомный набор точек

Описание

пример

ps = scramble(p,type) возвращает скремблированную копию ps набора точек p, созданный с использованием типа скремблирования, заданного type. Набор точек p является либо haltonset или sobolset объект, и каждый тип набора точек поддерживает другой тип скремблирования.

Набор скремблированных точек ps является тем же видом объекта, что и p.

пример

ps = scramble(p,'clear') удаляет настройку скремблирования из p и возвращает результат в ps.

пример

ps = scramble(p) повторно применяет существующую настройку скремблирования к p, что обычно приводит к другому набору точек из-за случайности алгоритмов скремблирования.

Примеры

свернуть все

Сгенерируйте трехмерный набор точек Halton, пропустите первые 1000 значений, а затем сохраните каждую 101-ю точку.

p = haltonset(3,'Skip',1e3,'Leap',1e2)
p = 
Halton point set in 3 dimensions (89180190640991 points)

Properties:
              Skip : 1000
              Leap : 100
    ScrambleMethod : none

Примените скремблирование с обратным радиксом при помощи scramble.

p = scramble(p,'RR2')
p = 
Halton point set in 3 dimensions (89180190640991 points)

Properties:
              Skip : 1000
              Leap : 100
    ScrambleMethod : RR2

Сгенерируйте первые четыре точки при помощи net.

X0 = net(p,4)
X0 = 4×3

    0.0928    0.6950    0.0029
    0.6958    0.2958    0.8269
    0.3013    0.6497    0.4141
    0.9087    0.7883    0.2166

Сгенерируйте каждую третью точку, до одиннадцатой точки, с помощью индексации круглых скобок.

X = p(1:3:11,:)
X = 4×3

    0.0928    0.6950    0.0029
    0.9087    0.7883    0.2166
    0.3843    0.9840    0.9878
    0.6831    0.7357    0.7923

Создайте и скремблируйте пятимерный набор точек Соболь. Задайте 'MatousekAffineOwen' тип скремблирования.

p = sobolset(5);
ps = scramble(p,'MatousekAffineOwen');

Сравните первые четыре точки в двух наборах точек.

X = net(p,4)
X = 4×5

         0         0         0         0         0
    0.5000    0.5000    0.5000    0.5000    0.5000
    0.2500    0.7500    0.2500    0.7500    0.2500
    0.7500    0.2500    0.7500    0.2500    0.7500

X2 = net(ps,4)
X2 = 4×5

    0.6681    0.2784    0.2476    0.5688    0.0513
    0.4485    0.6735    0.5417    0.3285    0.9719
    0.9940    0.9606    0.3515    0.1586    0.4742
    0.1550    0.1202    0.9226    0.9262    0.5491

Удалите настройку скремблирования из ps при помощи 'clear' опция. Набор точек clearps соответствует исходному набору точек p.

clearps = scramble(ps,'clear');
clearX = net(clearps,4)
clearX = 4×5

         0         0         0         0         0
    0.5000    0.5000    0.5000    0.5000    0.5000
    0.2500    0.7500    0.2500    0.7500    0.2500
    0.7500    0.2500    0.7500    0.2500    0.7500

Передайте ps на scramble функция без дополнительных входных параметров. Программа удаляет настройку скремблирования из ps и затем повторно применяет его. Из-за случайности алгоритма скремблирования новый скремблированный набор точек newps отличается от исходного набора скремблированных точек ps.

newps = scramble(ps);
newX = net(newps,4)
newX = 4×5

    0.6882    0.6261    0.9298    0.3314    0.4169
    0.2442    0.1978    0.4307    0.6286    0.8666
    0.7827    0.2868    0.5172    0.8430    0.1261
    0.2772    0.8576    0.0164    0.1404    0.5905

Входные параметры

свернуть все

Набор точек, заданный как haltonset или sobolset объект.

Пример: sobolset(5)

Тип скремблирования, заданный как 'RR2' или 'MatousekAffineOwen'. Различные наборы точек поддерживают различные типы скремблирования, как указано в этой таблице.

ОбъектТип скремблирования
haltonset

'RR2' - сочетание обратных коэффициентов радикала, выведенная путем применения операции обратного радиуса ко всем возможным значениям коэффициентов. Скрембл описан в [1].

sobolset

'MatousekAffineOwen' - Случайное линейное скремблирование в сочетании со случайным цифровым сдвигом. Скремблирование описано в [2].

Ссылки

[1] Kocis, L., and W. J. Whiten. «Вычислительные исследования низкорасходных последовательностей». Транзакции ACM на математическом программном обеспечении. Том 23, № 2, 1997, стр. 266-294.

[2] Matousek, J. «On the L2-Discrepancy for Anchored Boxes». Журнал сложности. Том 14, № 4, 1998, стр. 527-556.

См. также

| | |

Введенный в R2008a