Обмен координатами
dCE = cordexch(nfactors,nruns)
[dCE,X] = cordexch(nfactors,nruns)
[dCE,X] = cordexch(nfactors,nruns,'model')
[dCE,X] = cordexch(...,'name',value)
dCE = cordexch(nfactors,nruns) использует алгоритм обмена координатами для формирования D-оптимальной конструкции dCE с nruns runs (строки dCE) для линейной аддитивной модели с nfactors коэффициенты (столбцы dCE). Модель включает постоянный член.
[dCE,X] = cordexch(nfactors,nruns) также возвращает связанную матрицу проектирования X, чьи столбцы являются модельными терминами, оцениваемыми при каждой обработке (строке) dCE.
[dCE,X] = cordexch(nfactors,nruns,' использует модель линейной регрессии, указанную в model')model. model является одним из следующих:
'linear' - Постоянный и линейный члены. Это значение по умолчанию.
'interaction' - Постоянные, линейные и интерактивные термины
'quadratic' - постоянные, линейные, интерактивные и квадратные члены;
'purequadratic' - Постоянные, линейные и квадратные члены
Порядок столбцов X для полной квадратичной модели с n членами:
Постоянный член
Линейные члены порядка 1, 2,..., n
Члены взаимодействия в порядке (1, 2), (1, 3),..., (1, n), (2, 3),..., (n - 1, n)
Квадратные члены в порядке 1, 2,..., n
Другие модели используют подмножество этих терминов в том же порядке.
В качестве альтернативы, model может быть матрицей, задающей многочлены произвольного порядка. В этом случае model должен иметь один столбец для каждого фактора и одну строку для каждого термина в модели. Записи в любой строке model являются полномочиями для факторов в столбцах. Например, если модель имеет коэффициенты X1, X2, и X3, затем ряд [0 1 2] в model задает термин (X1.^0).*(X2.^1).*(X3.^2). Строка всех нулей в model указывает постоянный член, который может быть опущен.
[dCE,X] = cordexch(...,' указывает одну или несколько дополнительных пар имя/значение для проекта. Допустимые параметры и их значения перечислены в следующей таблице. Определить name',value)name внутри одиночных кавычек.
| имя | Стоимость |
|---|---|
bounds | Нижняя и верхняя границы для каждого коэффициента, указанного как |
categorical | Индексы категориальных предикторов. |
display | Также |
excludefun | Дескриптор функции, исключающей нежелательные прогоны. Если функция f, она должна поддерживать синтаксис b = f (S), где S - матрица обработок с |
init | Первоначальный проект как |
levels | Вектор количества уровней для каждого фактора. Не используется, когда |
maxiter | Максимальное число итераций. Значение по умолчанию: |
tries | Число попыток создания конструкции из новой начальной точки. Алгоритм использует случайные точки для каждой попытки, за исключением, возможно, первой. Значение по умолчанию: |
options | Структура, определяющая параллельный запуск и определяющая случайный поток или потоки. Для этого параметра требуется Toolbox™ параллельных вычислений. Создать
|
Предположим, что проект должен оценить параметры в следующей семифакторной модели взаимодействия:
2β13xx1 + 3β23xx2 + 3
Использовать cordexch для создания D-оптимальной конструкции с семью прогонами:
nfactors = 3;
nruns = 7;
[dCE,X] = cordexch(nfactors,nruns,'interaction','tries',10)
dCE =
-1 1 1
-1 -1 -1
1 1 1
-1 1 -1
1 -1 1
1 -1 -1
-1 -1 1
X =
1 -1 1 1 -1 -1 1
1 -1 -1 -1 1 1 1
1 1 1 1 1 1 1
1 -1 1 -1 -1 1 -1
1 1 -1 1 -1 1 -1
1 1 -1 -1 -1 -1 1
1 -1 -1 1 1 -1 -1Столбцы матрицы проектирования X являются модельными терминами, оцениваемыми в каждой строке конструкции dCE. Члены появляются в порядке слева направо: постоянный член, линейные члены (1, 2, 3), члены взаимодействия (12, 13, 23). Использовать X для соответствия модели, как описано в разделе «Линейная регрессия», данным отклика, измеренным в точках проектирования в dCE.
Оба cordexch и rowexch использовать алгоритмы итеративного поиска. Они работают путем инкрементного изменения исходной матрицы X конструкции для увеличения D = | XTX | на каждом шаге. В обоих алгоритмах существует случайность, встроенная в выбор начальной конструкции и в выбор инкрементных изменений. В результате оба алгоритма могут возвращаться локально, но не глобально, D-оптимальными конструкциями. Запустите каждый алгоритм несколько раз и выберите наилучший результат для окончательной разработки. Обе функции имеют 'tries' параметр, который автоматизирует это повторение и сравнение.
В отличие от алгоритма обмена строками, используемого rowexch, cordexch не использует набор кандидатов. (Вернее, набор кандидатов - это все пространство проектирования.) На каждом шаге алгоритм обмена координатами обменивается одним элементом X с новым элементом, оцениваемым в соседней точке расчетного пространства. Отсутствие набора кандидатов снижает требования к памяти, но меньший масштаб поиска означает, что алгоритм обмена координатами с большей вероятностью окажется в ловушке локального минимума.