sdo. Класс SampleOptions

Пакет: sdo

Опции выборки параметра для sdo.sample

Описание

Задайте опции метода, чтобы сгенерировать выборки параметра, с помощью sdo.sample, для анализа чувствительности.

Конструкция

opt = sdo.SampleOptions создает объект sdo.SampleOptions и присваивает значения по умолчанию его свойствам.

Используйте запись через точку, чтобы изменить значения свойств. Например:

opt = sdo.SampleOptions;
opt.Method = 'lhs';

Свойства

Method

Выборка метода, заданного как одно из следующих значений:

  • 'random' — Случайные выборки чертятся от распределений вероятностей, заданных для параметров.

    Предположим, что вы задали значение для свойства RankCorrelation объекта sdo.ParameterSpace, который вы используете для выборки. Программное обеспечение использует метод Iman-Коновера, чтобы наложить корреляции параметра.

  • 'lhs' — Латинские выборки гиперкуба чертятся от распределений вероятностей, заданных для параметров. Используйте эту опцию для более систематического заполняющего пространство подхода, чем случайная выборка.

    Предположим, что вы задали значение для свойства RankCorrelation объекта sdo.ParameterSpace, который вы используете для выборки. Программное обеспечение использует метод Iman-Коновера, чтобы наложить корреляции параметра.

  • 'sobol' — Sobol квазислучайные последовательности чертятся от распределений вероятностей, заданных для параметров. Используйте эту опцию для очень систематического заполнения. Поскольку метод Sobol детерминирован, если вы хотите немного отличающиеся последовательности, изменяете свойство MethodOptions. Для получения дополнительной информации смотрите Генерирующиеся Квазислучайные числа (Statistics and Machine Learning Toolbox).

    Предположим, что вы задали значение для свойства RankCorrelation объекта sdo.ParameterSpace, который вы используете для выборки. Программное обеспечение использует метод Iman-Коновера, чтобы наложить корреляции параметра.

    Программное обеспечение Requires Statistics and Machine Learning Toolbox™.

  • 'halton' — Холтон квазислучайные последовательности чертится от распределений вероятностей, заданных для параметров. Как метод Sobol, можно использовать метод Холтона для очень систематического заполнения. Однако метод Sobol дает более систематическое заполнение, если у вас есть много параметров в вашем наборе параметра. Поскольку метод Холтона детерминирован, если вы хотите немного отличающиеся последовательности, устанавливаете свойство MethodOptions. Для получения дополнительной информации смотрите Генерирующиеся Квазислучайные числа (Statistics and Machine Learning Toolbox).

    Предположим, что вы задали значение для свойства RankCorrelation объекта sdo.ParameterSpace, который вы используете для выборки. Программное обеспечение использует метод Iman-Коновера, чтобы наложить корреляции параметра.

    Программное обеспечение Requires Statistics and Machine Learning Toolbox.

  • 'copula' — Случайные выборки чертятся от связки. Используйте эту опцию, чтобы наложить корреляции между параметрами с помощью связок. Вы задаете семейство связок и тип корреляции в свойстве MethodOptions. Необходимо также задать значение свойства RankCorrelation объекта sdo.ParameterSpace, который вы используете для выборки.

    Программное обеспечение Requires Statistics and Machine Learning Toolbox.

Для получения дополнительной информации о методах выборки, смотрите, Генерируют Выборки Параметра для Анализа чувствительности.

Значение по умолчанию: 'random'

MethodOptions

Опции выборочного метода, заданные как структура. MethodOptions применим только, когда Method задан как 'sobol', 'halton' или 'copula'.

  • Method является 'sobol' — Поскольку метод Sobol детерминирован, если вы хотите сгенерировать немного отличающиеся последовательности, измените значения по умолчанию в MethodOptions. Задайте MethodOptions как структуру со следующими полями:

    • Skip — Количество начальных точек, чтобы проигнорировать в последовательности Sobol точек, заданных как неотрицательное целое число. Значением по умолчанию является 1.

    • Leap — Число точек, чтобы проигнорировать между выбранными точками в последовательности Sobol, заданной как неотрицательное целое число. Значением по умолчанию является 0.

    • ScrambleMethod — Перестановка точек последовательности Sobol, заданных как структура со следующими полями:

      • Ввод Имя метода скремблирования, заданного как 'MatousekAffineOwen' (Алгоритм скремблирования Matousek-Affine-Owen [1]). Наборы Sobol со скремблированием не детерминированы. Последовательные выполнения с помощью этого алгоритма генерируют различные точки. Чтобы всегда генерировать те же точки последовательности Sobol, сбросьте генератор случайных чисел каждый раз с помощью команды rng.

      • Опции Задайте как массив пустой ячейки.

      Например, задайте ScrambleMethod как struct('Type','MatousekAffineOwen',Options',{{}}).

      Если вы не хотите скремблировать последовательность, задайте ScrambleMethod как [].

      Значением по умолчанию для ScrambleMethod является 0x0 struct.

    • PointOrder — Закажите, в котором точки последовательности Sobol произведены, заданы как одно из следующего:

      • 'standard' — Точки произвели, совпадают с исходной реализацией последовательности Sobol.

      • 'graycode' — Последовательность Sobol сгенерирована с помощью реализации, которая использует Код Грея индекса вместо самого индекса.

      Значением по умолчанию для PointOrder является 'standard'.

    Метод Sobol используется для очень систематического заполнения. Однако некоторые комбинации значений MethodOptions могут привести к точкам последовательности, которые кластеризируются и не заполнение. После того, как вы сгенерировали выборки с помощью sdo.sample, просмотрите сгенерированные выборки, чтобы гарантировать, что они являются заполняющими пространство.

  • Method является 'halton' — Поскольку метод Холтона детерминирован, если вы хотите сгенерировать немного отличающиеся последовательности, измените значения по умолчанию в MethodOptions. Задайте MethodOptions как структуру со следующими полями:

    • Skip — Количество начальных точек, чтобы проигнорировать в последовательности Холтона точек, заданных как неотрицательное целое число. Значением по умолчанию является 1.

    • Leap — Число точек, чтобы проигнорировать между выбранными точками в последовательности Холтона, заданной как неотрицательное целое число. Значением по умолчанию является 0.

    • ScrambleMethod — Перестановка точек последовательности Холтона, заданных как структура со следующими полями:

      • Ввод Имя метода скремблирования, заданного как 'RR2' (алгоритм противоположного основания [2]).

      • Опции Задайте как массив пустой ячейки.

      Например, задайте ScrambleMethod как struct('Type','RR2',Options',{{}}).

      Если вы не хотите скремблировать последовательность, задайте ScrambleMethod как [].

      Значением по умолчанию для ScrambleMethod является 0x0 struct.

    Метод Холтона используется для очень систематического заполнения. Однако некоторые комбинации значений MethodOptions могут привести к точкам последовательности, которые кластеризируются и не заполнение. После того, как вы сгенерировали выборки с помощью sdo.sample, просмотрите сгенерированные выборки, чтобы гарантировать, что они являются заполняющими пространство.

  • Method является 'copula'MethodOptions является структурой со следующими полями:

    • Family — Семейство связок, заданное как одно из следующих значений:

      • 'Gaussian' — Гауссова связка

      • T t связка

      Значением по умолчанию является 'Gaussian'.

    • Ввод Тип порядковой корреляции, заданный как одно из следующих значений:

      • 'Spearman' — Порядковая корреляция копьеносца

      • 'Kendall' — Порядковая корреляция Кендалла

      Значением по умолчанию является 'Spearman'.

    • DOF — Степени свободы t связки, заданной как положительное число.

      Для Гауссовой связки задайте DOF как []. Спецификация DOF требуется для t связки.

      Значением по умолчанию является [].

Копировать семантику

Значение. Чтобы изучить, как классы значения влияют на операции копии, смотрите Копирование Объектов (MATLAB).

Примеры

свернуть все

opt = sdo.SampleOptions
opt = 
  SampleOptions with properties:

           Method: 'random'
    MethodOptions: [0x0 struct]

opt = sdo.SampleOptions;
opt.Method = 'lhs';

Создайте набор опции по умолчанию.

opt = sdo.SampleOptions;

Задайте метод выборки как Sobol.

opt.Method = 'sobol';

Задайте метод скремблирования.

opt.MethodOptions.ScrambleMethod = struct('Type','MatousekAffineOwen','Options',{{}});
opt = sdo.SampleOptions;
opt.Method = 'copula';
opt.MethodOptions.Family = 't';
opt.MethodOptions.DOF = 2;

Ссылки

[1] Matousek, J. “На L2-несоответствии для Привязанных Полей”. Журнал Сложности. Издание 14, Номер 4, 1998, стр 527–556.

[2] Kocis, L. и В. Дж. Уайтн. “Вычислительные Расследования Последовательностей Низкого Несоответствия”. Транзакции ACM на Mathematical Software. Издание 23, Номер 2, 1997, стр 266–294.