Clear Filters
Clear Filters

Definition of minimum and maximum values of each parameter in Definitive Screening Designs runs

1 view (last 30 days)
It generates a plan of experiments but It would not be effective if one wrote manually the parameter values and then run the experiments (by calling the function).
Is there any version of dsd where one can define the minimum and maximum values of each parameters (not -1, 0 and 1) and then dsd sets them according to the generated plan (like in JMP)?
Many thanks and best regards,
Andras Borosy

Answers (1)

Aditya
Aditya on 20 Feb 2024
The function you're referring to for creating Definitive Screening Designs (DSDs) in MATLAB from the MathWorks File Exchange generates designs using coded levels (-1, 0, and 1). These coded levels are standard for creating experimental designs because they simplify the statistical analysis. However, you can easily convert these coded levels to actual physical values (natural scale) by specifying the minimum and maximum values for each parameter.
The DSD function does not directly accept minimum and maximum values for each factor, but you can achieve this by using a simple transformation. Here's a step-by-step guide on how to do this:
  1. Generate the DSD: First, use the dsd function to generate your design matrix with coded levels.
  2. Define Min/Max Values: For each factor, define the minimum and maximum values that you want to use in your experiments.
  3. Transform Coded Levels: Apply a linear transformation to convert the coded levels to the actual physical values.
  4. Apply Transformation: Loop through each column in your design matrix and apply the transformation to each element.
Here's a MATLAB code snippet that demonstrates how you might apply this transformation:
% Assume dsd_matrix is the matrix you got from the dsd function
dsd_matrix = ... % Your DSD matrix from the dsd function
% Define the min and max values for each factor
min_values = [min1, min2, min3, ...]; % Replace with your actual min values
max_values = [max1, max2, max3, ...]; % Replace with your actual max values
% Number of factors
num_factors = size(dsd_matrix, 2);
% Initialize matrix for natural scale values
natural_scale_matrix = zeros(size(dsd_matrix));
% Loop through each factor and apply the transformation
for i = 1:num_factors
natural_scale_matrix(:, i) = min_values(i) + (dsd_matrix(:, i) + 1) * (max_values(i) - min_values(i)) / 2;
end
% Now natural_scale_matrix contains the experimental plan with actual values
After you've transformed the coded levels to the natural scale, you can use the natural_scale_matrix for running your experiments with the actual parameter values.
Remember that the transformation is a simple linear scaling, so it's crucial that the relationship between the coded level and the natural scale is appropriate for your experimental context

Categories

Find more on Dynamic System Models in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!