candexch

Проект D-optimal от кандидата установил обмены строки использования

Синтаксис

rlist = candexch(C,nrows)
rlist = candexch(C,nrows,Name,Value)

Описание

rlist = candexch(C,nrows) использует обменный строкой алгоритм, чтобы выбрать проект D-optimal из набора кандидата C.

rlist = candexch(C,nrows,Name,Value) генерирует проект D-optimal с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

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

C

N-by-P матрица, содержащая значения модели P, называет в каждой из точек N.

nrows

Желаемое количество строк в проекте.

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

'display'

Когда 'on', номер итерации отображений. Отключите отображение путем установки на 'off'.

Значение по умолчанию: 'on', кроме тех случаев, когда опцией UseParallel является true

'init'

nrows-by-P матрица, дающая первоначальный проект.

Значение по умолчанию: случайное подмножество строк C

'maxiter'

Максимальное количество итераций, положительного целого числа.

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

'options'

Структура, которая задает, запуститься ли параллельно, и задает случайный поток или потоки. Эта опция требует Parallel Computing Toolbox™.

Создайте структуру options с statset. Поля опции:

  • 'UseParallel' Установите на true, чтобы вычислить параллельно. Значением по умолчанию является false.

  • UseSubstreams — Установите на true, чтобы вычислить параллельно восстанавливаемым способом. Значением по умолчанию является false. Чтобы вычислить восстанавливаемо, установите Streams на тип, позволяющий подпотоки: 'mlfg6331_64' или 'mrg32k3a'.

  • Объектный массив Streams — A RandStream или массив ячеек таких объектов. Если вы не задаете Streams, candexch использует поток по умолчанию или потоки. Если вы принимаете решение задать Streams, используйте отдельный объект кроме случая

    • UseParallel является true

    • UseSubstreams является false

    В этом случае используйте массив ячеек тот же размер в качестве Параллельного пула.

Значение по умолчанию: []

'start'

nobs-by-p матрица факторных настроек, задавая набор nobs зафиксированный проект указывает, чтобы включать в проект. candexch находит nrows дополнительными строками, чтобы добавить к проекту start. Параметр обеспечивает ту же функциональность как функция daugment, с помощью обменного строкой алгоритма, а не координатно-обменного алгоритма.

Значение по умолчанию: []

'tries'

Число раз, чтобы попытаться сгенерировать проект от новой отправной точки. Алгоритм использует случайные точки для каждой попытки, кроме возможно первого.

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

Выходные аргументы

rlist

Вектор длины nrows, перечисляющий выбранные строки.

Примеры

Этот пример показывает, как сгенерировать проект D-optimal, когда существует ограничение на набор кандидата, таким образом, функция rowexch не является соответствующей.

F = (fullfact([5 5 5])-1)/4; % factor settings in unit cube
T = sum(F,2)<=1.51;         % find rows matching a restriction
F = F(T,:);                 % take only those rows
C = [ones(size(F,1),1) F F.^2]; 
                            % compute model terms including
                            % a constant and all squared terms
R = candexch(C,12);         % find a D-optimal 12-point subset
X = F(R,:);                 % get factor settings

Алгоритмы

candexch выбирает стартовый проект X наугад и использует обменный строкой алгоритм, чтобы итеративно заменить строки X строками C в попытке улучшить детерминант X'*X.

Альтернативы

Функция rowexch также генерирует проекты Д-оптимэла с помощью обменного строкой алгоритма, но она автоматически генерирует набор кандидата, который подходит для заданной модели. Функция daugment увеличивает набор фиксированных точек проекта с помощью координатно-обменного алгоритма; параметр 'start' обеспечивает ту же функциональность с помощью алгоритма обмена строки.

Расширенные возможности

Представлено до R2006a