diff --git a/docs/source/chapt_sdoe/examples-inputresponse.rst b/docs/source/chapt_sdoe/examples-inputresponse.rst index 0a18528ae..500d01eb9 100644 --- a/docs/source/chapt_sdoe/examples-inputresponse.rst +++ b/docs/source/chapt_sdoe/examples-inputresponse.rst @@ -29,33 +29,33 @@ Here is the process for generating IRSF designs for this problem: 1. From the FOQUS main screen, click the **SDOE** button. On the top left side, select **Load Existing Set**, and select the “irsf-example1-candset.csv” file from the examples folder. -.. figure:: figs/irsf-e101-firstpage.png +.. figure:: figs/11-SS3.png :alt: SDOE First Page - :name: fig.irsf-e101-firstpage + :name: fig.11-SS3 Figure 3: SDOE Module First Page 2. Next, by selecting **View** and then **Plot**, it is possible to see the grid of points that will be used as the candidate points. In this case, the range for each of the inputs, X1 and X2, has been chosen to be between 0 and 1. The range of the response, Y, is from -5 to 21. -.. figure:: figs/irsf-e120-viewcandset.png +.. figure:: figs/11-SS4.png :alt: SDOE First Page - :name: fig.irsf-e120-viewcandset + :name: fig.11-SS4 Figure 4: Pairwise Scatterplots of the Candidate Set -.. figure:: figs/irsf-e102-dcboxselected.png +.. figure:: figs/11-SS5.png :alt: SDOE First Page With Right-hand Size - :name: fig.irsf-e102-dcboxselected + :name: fig.11-SS5 Figure 5: Choose Design Method on the Right-Hand Side 3. Next, click on **Continue** to advance to the **Design Construction** Window, and then click on **Input-Response Space Filling (IRSF)** to advance to the second SDOE screen, where particular choices about the design can be made. On the second screen, the first choice for **Optimality Method Selection** is automatic, since the input-response space filling designs only use the **Maximin** criterion. We next select the **Design Size**, where here we have decided to construct a design with 10 runs. The choice of design size is typically based on the budget of the experiment. -.. figure:: figs/irsf-e131-designchoices.png +.. figure:: figs/11-SS6.png :alt: SDOE Design Choices - :name: fig.irsf-e131-designchoices + :name: fig.11-SS6 Figure 6: Generate Design Box for Making Design Selections @@ -64,26 +64,26 @@ There are also choices for which columns to include in the design construction. Next, we must confirm that each row has the correct **Type** indicated. The index column has the type **Index**. The two input columns **X1** and **X2** have type **Input**. The response variable **Y** currently has the type **Input** which must be changed to **Response** before moving forward with creating an input-response space filling design. 4. -Once the choices for the design have been specified, click on the **Estimate Runtime** button to estimate the time required for creating the designs. For the computer on which this example was developed, if we ran 10 random starts, it is estimated that the algorithm would take 4 minutes and 49 seconds to generate the designs and identify those on the Pareto front. Note that the timing changes linearly, so using 20 random starts would take twice as long as using 10 random starts. Recall that the choice of the number of random starts involves a trade-off between getting the designs created quickly and the quality of the designs. For many applications, we would expect that using at least 20 random starts would produce designs that are of good quality. For this example, we select to run 20 random starts, which is projected to take 9 minutes and 38 seconds. +Once the choices for the design have been specified, click on the **Estimate Runtime** button to estimate the time required for creating the designs. For the computer on which this example was developed, if we ran 10 random starts, it is estimated that the algorithm would take 2 minutes and 50 seconds to generate the designs and identify those on the Pareto front. Note that the timing changes linearly, so using 20 random starts would take twice as long as using 10 random starts. Recall that the choice of the number of random starts involves a trade-off between getting the designs created quickly and the quality of the designs. For many applications, we would expect that using at least 20 random starts would produce designs that are of good quality. For this example we select to run 50 random starts, which is projected to take 13 minutes and 10 seconds. -.. figure:: figs/irsf-e133-nrsbox.png +.. figure:: figs/11-SS7.png :alt: Number of Random Starts Box - :name: fig.irsf-e133-nrsbox + :name: fig.11-SS7 Figure 7: Number of Random Starts -.. figure:: figs/irsf-e132-nrschoices.png +.. figure:: figs/11-SS8.png :alt: Number of Random Start Choices - :name: fig.irsf-e132-nrschoices + :name: fig.11-SS8 Figure 8: Choices for Number of Random Starts 5. Once the algorithm has generated the designs, the left box called **Created Designs** populates with the Pareto front of designs that we have created. The Pareto front will populate a single row of the Created Designs box, and will display some useful information such as the **Number of Designs** found on the Pareto front, **Number of Random Starts** used, and the **Runtime**. If another design search is run afterwards, that Pareto front will populate the next row, and so on. -.. figure:: figs/irsf-e134-createddesign.png +.. figure:: figs/11-SS9.png :alt: Created Design - :name: fig.irsf-e134-createddesign + :name: fig.11-SS9 Figure 9: Created Designs @@ -92,49 +92,49 @@ To examine the Pareto front and each of the designs on the Pareto front, select As we explained in the Basics section, a Pareto front is made up of a collection of objectively best designs for different weightings of space-filling in the response and space-filling in the input spaces. A design that is on the Pareto front cannot be improved along one criterion of interest (space-filling in the response or space-filling in the input space) without worsening along the other criterion; if a design is located on the Pareto front, there exists no other design that is the same or better in both dimensions. Thus, it may be confusing to some users that this Pareto front below shows some pairs of designs connected by a vertical line, indicating one should outperform the other in the vertical dimension (space-filling in the response). However, this is simply a result of rounding in the horizontal dimension. The true values are in fact different by a small amount in space-filling in the input space. -.. figure:: figs/irsf-e135-paretofront.png +.. figure:: figs/11-SS10.png :alt: Pareto Front - :name: fig.irsf-e135-paretofront + :name: fig.11-SS10 Figure 10: Pareto Front of Created Designs Once the Pareto front has been examined, experimenters should further explore by **clicking on one of the color-coded design points within the plot to view that design**. Once a point is selected, a pairwise scatterplot of the chosen design will open, with the scatterplots and histograms being of the same color as the design point on the Pareto front for ease of comparison between designs. Multiple designs can be open simultaneously. 7. -To get a better understanding of the different designs located on the Pareto front, we will examine three: one from the left end, one from the right end, and one from the middle. The three designs we will choose are Design 1 (purple), Design 11 (red), and Design 7 (green), as shown on the Pareto front plot above. +To get a better understanding of the different designs located on the Pareto front, we will examine three: one from the left end, one from the right end, and one from the middle. The three designs we will choose are Design 1 (purple), Design 15 (red), and Design 10 (green), as shown on the Pareto front plot above. -From the values on the axes in Figure 10 for each of the three design points, we can determine, even before viewing the individual designs, several important facts. We know that Design 1 (purple) is the best design if we want the objectively-best space-filling in the response space, and don’t mind poor space-filling in the input space. Similarly, we know that Design 11 (red) is the best design if we want the objectively-best space-filling in the input space, and don’t mind poor space-filling in the response space. We also know Design 7 (green) will offer a compromise, with moderate space-filling in both spaces. Design 7, or another compromise design along the Pareto front, is a good choice if we hope to balance space-filling in the input and response spaces. +From the values on the axes in Figure 10 for each of the three design points, we can determine, even before viewing the individual designs, several important facts. We know that Design 1 (purple) is the best design if we want the objectively-best space-filling in the response space, and don’t mind poor space-filling in the input space. Similarly, we know that Design 15 (red) is the best design if we want the objectively-best space-filling in the input space, and don’t mind poor space-filling in the response space. We also know Design 10 (green) will offer a compromise, with moderate space-filling in both spaces. Design 10, or another compromise design along the Pareto front, is a good choice if we hope to balance space-filling in the input and response spaces. .. note:: - The design with the best space-filling in the input space overall, here Design 11 (red), is the same as a regular uniform space-filling design. + The design with the best space-filling in the input space overall, here Design 15 (red), is the same as a regular uniform space-filling design. -.. figure:: figs/irsf-e136-design1purple.png +.. figure:: figs/11-SS11.png :alt: Design 1 Purple - :name: fig.irsf-e136-design1purple + :name: fig.11-SS11 Figure 11: Pairwise Scatterplot of Design 1 -.. figure:: figs/irsf-e136-design11red.png - :alt: Design 11 Red - :name: fig.irsf-e136-design11red +.. figure:: figs/11-SS12.png + :alt: Design 15 Red + :name: fig.11-SS12 - Figure 12: Pairwise Scatterplot of Design 11 + Figure 12: Pairwise Scatterplot of Design 15 -.. figure:: figs/irsf-e136-design7lime.png - :alt: Design 7 Lime - :name: fig.irsf-e136-design7lime +.. figure:: figs/11-SS13.png + :alt: Design 10 Green + :name: fig.11-SS13 - Figure 13: Pairwise Scatterplot of Design 7 + Figure 13: Pairwise Scatterplot of Design 10 -To determine how well a design fills the response space, we will look at the histogram for the response, Y, in the bottom-right for each of the designs and see how evenly spread the values appear. If we had a two- or higher-dimensional response space, we would examine the scatterplot(s) for the response variables for even spacing. We can confirm that Design 1 (purple) does have the best space-filling in the response space of the three. The values of the response are evenly spread throughout the space, with no large gaps. By contrast, Design 11 (red) has many holes and gaps in the response space. +To determine how well a design fills the response space, we will look at the histogram for the response, Y, in the bottom-right for each of the designs and see how evenly spread the values appear. If we had a two- or higher-dimensional response space, we would examine the scatterplot(s) for the response variables for even spacing. We can confirm that Design 1 (purple) does have the best space-filling in the response space of the three. The values of the response are evenly spread throughout the space, with no large gaps. By contrast, Design 15 (red) has many holes and gaps in the response space. -Even though the criterion value for response space-filling in Design 7 (green) is less than half that of Design 1 (purple), the response space-filling in Design 7 seems to fill the space fairly well. The differences in criterion values provide a useful summary of the trade-offs but it is important to also examine the scatterplots directly for a more intuitive illustration of what these trade-offs will look like in practice. +Even though the criterion value for response space-filling in Design 10 (green) is less than Design 1 (purple), the response space-filling in Design 10 seems to fill the space fairly well. The differences in criterion values provide a useful summary of the trade-offs but it is important to also examine the scatterplots directly for a more intuitive illustration of what these trade-offs will look like in practice. To examine input space-filling, we will now look at the scatterplot of the input variables, X1 and X2, located in the top-middle. If we had more than two input variables, we would look at a combination of pairwise scatterplots. It would be a bit harder to determine how well the space-filling of a given design appeared, so in that case, we rely more heavily on the position of the design on the Pareto front. -Here, Design 11 (red) definitely has the best input space-filling. The design points are spread apart with no large holes or gaps, covering the entire space well. The input space-filling in Design 1 (purple) has many large holes, and even that in Design 7 (green) has a few holes. +Here, Design 15 (red) definitely has the best input space-filling. The design points are spread apart with no large holes or gaps, covering the entire space well. The input space-filling in Design 1 (purple) has many large holes, and even that in Design 10 (green) has a hole or two. -With this variety of space-filling designs, plus the 8 more located on the Pareto front, it’s easy to see there are many “best” designs for any given weighting of input and response space-filling. The Input-Response Space-Filling design tool gives the experimenter the flexibility to consider each design on the Pareto front to find the compromise between input and output space-filling to best fit the experimental objectives. +With this variety of space-filling designs, plus the 12 more located on the Pareto front, it’s easy to see there are many “best” designs for any given weighting of input and response space-filling. The Input-Response Space-Filling design tool gives the experimenter the flexibility to consider each design on the Pareto front to find the compromise between input and output space-filling to best fit the experimental objectives. 8. -In the case of this example, we were hoping to find a design with good space-filling in both spaces. Design 7 (green) is an excellent candidate for this, though to be thorough we should also examine Designs 6 and 8, and even 4, 5, and 9, to see how these other “best” designs balance space-filling uniquely in the two spaces. +In the case of this example, we were hoping to find a design with good space-filling in both spaces. Design 10 (green) is an excellent candidate for this, though to be thorough we should also examine more designs along the Pareto front. In particular, Designs 4, 6, 7, and 11, and even 2, 3, and 13, should be explored to see how these other “best” designs balance space-filling uniquely in the two spaces. diff --git a/docs/source/chapt_sdoe/examples-nonuniform.rst b/docs/source/chapt_sdoe/examples-nonuniform.rst index 0ab37c2ed..aa672efa7 100644 --- a/docs/source/chapt_sdoe/examples-nonuniform.rst +++ b/docs/source/chapt_sdoe/examples-nonuniform.rst @@ -5,9 +5,9 @@ For this first Non-Uniform Space Filling design example, the goal is to construc As noted previously in the Basics section, in addition to specifying the candidate point input combinations, it is also required to supply an additional column of weights. This column will provide the necessary information about which regions of the input space should be emphasized more, and which should be emphasized less. The figure below shows some of the characteristics of the candidate set. -.. figure:: figs/NUSFex1-wts.png +.. figure:: figs/9-SS1.png :alt: Home Screen - :name: fig.NUSFex1-wts + :name: fig.9-SS1 Ex NUSF1 Candidate set of points with their associated weights. Left shows the underlying relationship used to generate the design, and right shows the candidates with the size of the point proportional to the assigned weight. @@ -15,82 +15,82 @@ The candidates are laid out in a regular grid with equal spacing between levels Here is the process for generating NUSF designs for this problem: -1. From the FOQUS main screen, click the **SDOE** button. On the top left side, select **Load from File**, and select the "NUSFex1.csv" file from examples folder. +1. From the FOQUS main screen, click the **SDOE** button. On the top left side, select **Load Existing Set**, and select the "NUSFex1.csv" file from examples folder. -.. figure:: figs/NUSFex1-loadfile.png +.. figure:: figs/9-SS2.png :alt: Home Screen - :name: fig.NUSFex1-loadfile + :name: fig.9-SS2 Ex NUSF1 choice of file for candidate set 2. Next, by selecting **View** and then **Plot** it is possible to see the grid of points that will be used as the candidate points. In this case, the range for each of the inputs, X1 and X2, has been chosen to be between -1 and 1. -3. Next, click on **Confirm** to advance to the **Ensemble Aggregation** Window, and the click on **Non-Uniform Space Filling** to advance to the second SDOE screen, where particular choices about the design can be made. On the second screen, the first choice for **Optimality Method Selection** is automatic, since the non-uniform space filling designs only use the **Maximin** criterion. +3. Next, click on **Continue** to advance to the **Design Construction** Window, and the click on **Non-Uniform Space Filling** to advance to the second SDOE screen, where particular choices about the design can be made. On the second screen, the first choice for **Optimality Method Selection** is automatic, since the non-uniform space filling designs only use the **Maximin** criterion. The next choice is to choose the **Scaling Method**, where the choices are **Direct** and **Ranked**. The default is to use the Direct scaling which translates the weights provided with a linear transformation so that they lie in the range 1 to whatever **MWR** value is selected below. For this example, we choose the option for Direct scaling. -.. figure:: figs/NUSFex1-choices1.png +.. figure:: figs/9-SS3.png :alt: Home Screen - :name: fig.NUSFex1-choices1 + :name: fig.9-SS3 Ex NUSF1 Choice of settings for generating NUSF designs Next select the **Design size**, where here we have decided to construct a design with 20 runs. The choice of the **Maximum Weight Ratio** or **MWR** is one of the more difficult choices that the experimenter will need to make, since it is often one that they do not have much experience with. It is for this reason that we recommend constructing several designs with different MWR values and then comparing the results to see which value is best suited for the experiment to be run. Recall that a value of 1 corresponds to a uniform space filling design, while larger values will place increasing concentration of points near the regions with larger weight values. -In this case, we select to generate 3 designs, with **MWR** values of 5, 10 and 20. This should give a good variety of designs to choose from after they have been constructed. +In this case, we select to generate 3 designs, with **MWR** values of 5, 10 and 30. This should give a good variety of designs to choose from after they have been constructed. -There are also choices for which columns to include in the analysis. Here we use all 3 columns for creating the design, so all **Include?** boxes remain checked. In addition, it is possible to see the range of values for each of the columns in the spreadsheet. Here the two input columns range from -1 to 1, while the "RawWt" column ranges from -14.48 to 50. The user can change these values if they wish to rescale the ranges to widen or narrow them, but in general these values can be left as is. +There are also choices for which columns to include in the analysis. Here we use all 4 columns for creating the design, so all **Include?** boxes remain checked. The **__id** column is automatically created and we will use it as the index column here. In addition, it is possible to see the range of values for each of the columns in the spreadsheet. Here the two input columns range from -1 to 1, while the "RawWt" column ranges from -8 to 50. The user can change these values if they wish to rescale the ranges to widen or narrow them, but in general these values can be left as is. -4. Once the choices for the design have been specified, click on the **Test SDOE** button to estimate the time taken for creating the designs. For the computer on which this example was developed, if we ran 30 random starts, it is estimated that the algorithm would take 17:38 minutes to generate the 3 designs with MWR values of 5, 10, 20. Note that the timing changes linearly, so using 40 random starts would take twice as long as using 20 random starts. Recall that the choice of the number of random starts involves a trade-off between getting the designs created quickly and the quality of the designs. For many applications, we would expect that using at lest 30 random starts would produce designs that are of good quality. +4. Once the choices for the design have been specified, click on the **Estimate Runtime** button to estimate the time taken for creating the designs. For the computer on which this example was developed, if we ran 30 random starts, it is estimated that the algorithm would take 10:08 minutes to generate the 3 designs with MWR values of 5, 10, 30. Note that the timing changes linearly, so using 20 random starts would take twice as long as using 10 random starts. Recall that the choice of the number of random starts involves a trade-off between getting the designs created quickly and the quality of the designs. For many applications, we would expect that using at least 30 random starts would produce designs that are of good quality. -.. figure:: figs/NUSFex1-timing.png +.. figure:: figs/9-SS4.png :alt: Home Screen - :name: fig.NUSFex1-timing + :name: fig.9-SS4 Ex NUSF1 specification of timing to generate the requested designs. 5. Once the algorithm has generated the designs, the left box called **Created Designs** populates with the 3 designs that we have created. Some of the key choices of the designs are summarized in the columns. The size of the design, the MWR value and the number of random starts are all noted. In addition, the time to create the design is also included. The criterion value is provided. Recall from the discussion in the Basics section, that the criterion value can be compared for designs of the same size and with the same MWR value, but should not be compared across design sizes or across different MWR values. -.. figure:: figs/NUSFex1-createddesign.png +.. figure:: figs/9-SS5.png :alt: Home Screen - :name: fig.NUSFex1-createddesign + :name: fig.9-SS5 - Ex NUSF1 created designs for three MWR values of 5, 10 and 20 + Ex NUSF1 created designs for three MWR values of 5, 10 and 30 -6. To examine each of the created designs, select **View** and choose the columns to be included, and click **Plot**. For this example we included all of the columns. Note that two plots are created for each design. The first is the **Closest Distance by Weight (CDBW) plot**, and the second is the more familiar **pairwise scatterplot** of the created design. +6. To examine each of the created designs, select **View** and choose the columns to be included, and click **Plot**. For this example we included all of the columns except the index column **__id**. Note that two plots are created for each design. The first is the **Closest Distance by Weight (CDBW) plot**, and the second is the more familiar **pairwise scatterplot** of the created design. -First, we describe the information that is contained in the CDBW plot. There are two portions to the plot. The lower section shows a histogram of the weights in the candidate set. Note that the range of values goes from 1 to the MWR value selected. For the figure below, we are looking at a design created with a MWR value of 5. The shape of the histogram shows what values were available to be selected from. The top portion of the plot, has a vertical line for each of the design points selected (in this case 20 vertical lines for 20 design points). The location of each vertical line shows the weight for the selected design point. In this case, the smallest weight selected had weight a bit below a value of 2, while there are several design points chosen that have weight close to the maximum possible (the MWR value). This allows the user to see how much emphasis was placed on getting the larger weight values into the design. +First, we describe the information that is contained in the CDBW plot. There are two portions to the plot. The lower section shows a histogram of the weights in the candidate set. Note that the range of values goes from 1 to the MWR value selected. For the figure below, we are looking at a design created with a MWR value of 5. The shape of the histogram shows what values were available to be selected from. The top portion of the plot, has a vertical line for each of the design points selected (in this case 20 vertical lines for 20 design points). The location of each vertical line shows the weight for the selected design point. In this case, the smallest weight selected had weight around a value of 2, while there are several design points chosen that have weight close to the maximum possible (the MWR value). This allows the user to see how much emphasis was placed on getting the larger weight values into the design. -.. figure:: figs/NUSFex1-graph1.png +.. figure:: figs/9-SS6.png :alt: Home Screen - :name: fig.NUSFex1-NUSFex1-graph1 + :name: fig.9-SS6 Ex NUSF1 Closest Distance by Weight (CDBW) plot for the constructed design with MWR values of 5 The second plot is the more familiar scatterplot of the design points. It is clear that the non-uniform space filling approach has lived up to its name and has generated a design that has a greater emphasis of points for the larger weights. The design still provides space filling throughout the region, but with very different densities of points for the various regions. -.. figure:: figs/NUSFex1-graph2.png +.. figure:: figs/9-SS7.png :alt: Home Screen - :name: fig.NUSFex1-NUSFex1-graph2 + :name: fig.9-SS7 Ex NUSF1 pairwise scatterplot for the constructed design with MWR values of 5 -7. The next step is to repeat the process for the other two designs created. In this case we can see that the NUSF designs for MWR values of 10 and 20 create even more concentrated designs in the region with higher weights. The figure below shows the collection of the CDBW plot for MWR values of 10 and 20. +7. The next step is to repeat the process for the other two designs created. In this case we can see that the NUSF designs for MWR values of 10 and 30 create even more concentrated designs in the region with higher weights. The figure below shows the collection of the CDBW plot for MWR values of 10 and 30. -.. figure:: figs/NUSFex1-CDBW.png +.. figure:: figs/9-SS8.png :alt: Home Screen - :name: fig.NUSFex1-CDBW + :name: fig.9-SS8 - Ex NUSF1 Closest Distance by Weight (CDBW) plot for the constructed designs with MWR values of 10 and 20 + Ex NUSF1 Closest Distance by Weight (CDBW) plot for the constructed designs with MWR values of 10 and 30 -When we compare the three CDBW plots for the designs with MWR of 5, 10 and 20, we see that more of the points are shifted to the right closer to the maximum weight value as we increase the MWR value. This gives control to the user to adjust the relative density of points for different weights. +When we compare the three CDBW plots for the designs with MWR of 5, 10 and 30, we see that more of the points are shifted to the right closer to the maximum weight value as we increase the MWR value. This gives control to the user to adjust the relative density of points for different weights. -.. figure:: figs/NUSFex1-graph3.png +.. figure:: figs/9-SS9.png :alt: Home Screen - :name: fig.NUSFex1-graph3 + :name: fig.9-SS9 - Ex NUSF1 pairwise scatterplot for the constructed designs with MWR values of 10 and 20 + Ex NUSF1 pairwise scatterplot for the constructed designs with MWR values of 10 and 30 -When we compare the three designs, we can see that increasing the **MWR** produces a design that moves more of the points closer to the higher weight regions of the input space. This gives the user the control that is needed to create a customized design that matches the desired concentration of points in the regions where they are desired. After examinig the different summary plots for the three designs, the user can choose the plot that is the best match to their experimental needs +When we compare the three designs, we can see that increasing the **MWR** produces a design that moves more of the points closer to the higher weight regions of the input space. This gives the user the control that is needed to create a customized design that matches the desired concentration of points in the regions where they are desired. After examining the different summary plots for the three designs, the user can choose the plot that is the best match to their experimental needs. Example NUSF-2: Constructing Non-Uniform Space Filling for a 4-Input Carbon Capture example ----------------------------------------------------------------------------------------------- diff --git a/docs/source/chapt_sdoe/examples-uniform.rst b/docs/source/chapt_sdoe/examples-uniform.rst index 28474e1a3..60a069866 100644 --- a/docs/source/chapt_sdoe/examples-uniform.rst +++ b/docs/source/chapt_sdoe/examples-uniform.rst @@ -3,45 +3,45 @@ Example USF-1: Constructing Uniform Space Filling minimax and maximin designs fo For this first example, the goal is to construct a simple space-filling design with between 8 and 10 runs in a 2-dimensional space based on a regular unconstrained square region populated with a grid of candidate points. -1. From the FOQUS main screen, click the **SDOE** button. On the top left side, select **Load from File**, and select the SDOE_Ex1_Candidates.csv file from examples folder. This identifies the possible input combinations from which the design will be constructed. The more possible candidates that can be provided to the search algorithm used to construct the design, the better the design might be for the specified criterion. +1. From the FOQUS main screen, click the **SDOE** button. On the top left side, select **Load Existing Set**, and select the SDOE_Ex1_Candidates.csv file from examples folder. This identifies the possible input combinations from which the design will be constructed. The more possible candidates that can be provided to the search algorithm used to construct the design, the better the design might be for the specified criterion. -.. figure:: figs/Ex1_1_load_candidate.png +.. figure:: figs/6-SS1.png :alt: Home Screen - :name: fig.Ex1_1_load_candidate + :name: fig.6-SS1 - Ex 1 Ensemble Selection + Ex 1 Design Setup 2. Next, by selecting **View** and then **Plot** it is possible to see the grid of points that will be used as the candidate points. In this case, the range for each of the inputs, X1 and X2, has been chosen to be between -1 and 1. -.. figure:: figs/Ex1_2_candidate_grid.png +.. figure:: figs/6-SS2.png :alt: Home Screen - :name: fig.Ex1_2_candidate_grid + :name: fig.6-SS2 Ex 1 Candidate Grid -3. Next, click on **Continue** to advance to the **Ensemble Aggregation** Window, and then select **Uniform Space Filling** and click on **Open SDoE Dialog** to advance to the second SDOE screen, where particular choices about the design can be made. On the second screen, select **minimax** for the **Optimality Method Selection**. Change the **Min Design Size** and **Max Design Size** to 8 and 10, respectively. This will construct 3 minimax designs of size 8, 9 and 10. Next, uncheck the column called **Label**. This will mean that the design is not constructed using this as an input. There should be an **_id** column automatically created containing unique identifiers to identify which runs from the candidate set were chosen for the final designs. Since the ranges of each of X1 and X2 are the bounds that we want to use for creating this design, we do not need to change the entries in **Min** and **Max**. +3. Next, click on **Continue** to advance to the **Design Construction** Window, and then select **Uniform Space Filling** and click on **Open SDoE Dialog** to advance to the second SDOE screen, where particular choices about the design can be made. On the second screen, select **minimax** for the **Optimality Method Selection**. Change the **Min Design Size** and **Max Design Size** to 8 and 10, respectively. This will construct 3 minimax designs of size 8, 9 and 10. Next, uncheck the column called **Label**. This will mean that the design is not constructed using this as an input. There should be an **_id** column automatically created containing unique identifiers to identify which runs from the candidate set were chosen for the final designs. Since the ranges of each of X1 and X2 are the bounds that we want to use for creating this design, we do not need to change the entries in **Min** and **Max**. -.. figure:: figs/Ex1U_3_mM_choices.png +.. figure:: figs/6-SS3.png :alt: Home Screen - :name: fig.Ex1U_3_mM_choices + :name: fig.6-SS3 Ex 1 Minimax design choices -4. Once the choices for the design have been specified, click on the **Run SDOE** button to estimate the time taken for creating the designs. For the computer on which this example was developed, if we ran the minimum number of random starts (10^3=1000), it is estimated that the code would take 4 seconds to create the three designs (of size 8, 9 and 10). If we chose 10^4=10000 runs, then the code is estimated to take 44 seconds. It is estimated that 10^5=100000 random starts would take 7 minutes and 11 seconds, while 10^6=1 million random starts would take approximately 1 hour, 12 minutes. In this case, we selected to create designs based on 100000 random starts, since this was a suitable balance between timeliness and giving the algorithm a chance to find the best possible designs. Hence, select 10^5 for the **Number of Random Starts**, and then click **Run SDOE**. +4. Once the choices for the design have been specified, click on the **Estimate Runtime** button to estimate the time taken for creating the designs. For the computer on which this example was developed, if we ran the minimum number of random starts (10^3=1000), it is estimated that the code would take 2 seconds to create the three designs (of size 8, 9 and 10). If we chose 10^4=10000 runs, then the code is estimated to take 24 seconds. It is estimated that 10^5=100000 random starts would take 4 minutes and 1 second, while 10^6=1 million random starts would take approximately 41 minutes and 29 seconds. In this case, we selected to create designs based on 100000 random starts, since this was a suitable balance between timeliness and giving the algorithm a chance to find the best possible designs. Hence, select 10^5 for the **Number of Random Starts**, and then click **Run SDOE**. -5. Since we are also interested in examining maximin designs for the same scenario, we click on the **Reload Design Specifications** button in the **Created Design** window to repopulate the right window with the same choices that we made for all of the design options. +5. Since we are also interested in examining maximin designs for the same scenario, we click on the **Go Back to Generate Design** button in the **Created Designs** window to repopulate the right window with the same choices that we made for all of the design options. -.. figure:: figs/Ex1_4_mM_created_designs.png +.. figure:: figs/6-SS4.png :alt: Home Screen - :name: fig.Ex1_4_mM_created_designs + :name: fig.6-SS4 Ex 1 Minimax created designs -6. After changing the **Optimality Method Selection** to **maximin**, click on **Test SDOE**, select 10^5 for the **Number of Random Starts**, and then click **Run SDOE**. After waiting for the prescribed time, the **Created Designs** window will have 6 created designs - three that are minimax designs and three that are maximin designs. +6. After changing the **Optimality Method Selection** to **maximin**, click on **Estimate Runtime**, select 10^5 for the **Number of Random Starts**, and then click **Run SDOE**. After waiting for the prescribed time, the **Created Designs** window will have 6 created designs - three that are minimax designs and three that are maximin designs. -.. figure:: figs/Ex1_5_all_created_designs.png +.. figure:: figs/6-SS5.png :alt: Home Screen - :name: fig.Ex1_5_all_created_designs + :name: fig.6-SS5 Ex 1 Created designs @@ -60,96 +60,96 @@ Example USF-2: Augmenting the Example USF-1 design in a 2-D input space with a U In this example, we consider the sequential aspect of design, by building on the first example results. Consider the scenario where based on the results of Example 1, the experimenter selected to actually implement and run the 8 run minimax design. -1. In the **Ensemble Selection** box, click on **Load from File** to select the candidate set that you would like to use for the construction of the design. This may be the same candidate set that was used in Example 1, or it might have been updated based on what was learned from the first data collection. For example, if it was learned that one corner of the design space might not be desirable, then the candidate set can be updated to remove candidate points that are now considered undesirable. For the **File Type** leave the designation as **Candidate**. +1. In the **Design Setup** box, click on **Load Existing Set** to select the candidate set that you would like to use for the construction of the design. This may be the same candidate set that was used in Example 1, or it might have been updated based on what was learned from the first data collection. For example, if it was learned that one corner of the design space might not be desirable, then the candidate set can be updated to remove candidate points that are now considered undesirable. For the **File Type** leave the designation as **Candidate**. -To load in the experimental runs that were already collected, click on **Load from File** again, and select the design file that was created in the **SDOE_files** folder. This time, change the **File Type** to **History**. If you wish to view either of the candidate or history files, click on **View** to see either a table or plot. +To load in the experimental runs that were already collected, click on **Load Existing Set** again, and select the design file that was created in the **SDOE_files** folder. This time, change the **File Type** to **Previous Data**. If you wish to view either of the candidate or previous data files, click on **View** to see either a table or plot. -2. Click on the **Confirm** button at the bottom right of the **Ensemble Selection** box. This will activate the **Ensemble Aggregation** box. +2. Click on the **Continue** button at the bottom right of the **Design Setup** box. This will activate the **Design Construction** box. -3. After examining that the desired files have been selected, click on the **Uniform Space Filling** button at the bottom right corner of the **Ensemble Aggregation** window. This will open the second SDOE window that shows the **Sequential Design of Experiments Set-Up** window on the right hand side. +3. After examining that the desired files have been selected, click on the **Uniform Space Filling** button at the bottom right corner of the **Design Construction** window. This will open the second SDOE window that shows the **Sequential Design of Experiments Set-Up** window on the right hand side. 4. Select **Minimax** or **Maximin** for the type of design to create. 5. Select the **Min Design Size** and **Max Design Size** to match what is desired. If you wish to just generate a single design of the desired size, make **Min Design Size** = **Max Design Size**. Recall that this will be the number of additional points that will be added to the existing design, not the total design size. -6. Next, select the options desired in the box: a) Should any of the columns be excluded from the design creation? If yes, then unclick the **Include?** box. b) For input factors to be used in the construction of the uniform space filling design, make sure that the **Type** is designated as **Input**. If there is a label column for the candidates, then designate this as **Index**. c) Finally, you can optionally change the **Min** and **Max** ranges for the inputs to adjust the relative emphasis that distances in each input range are designated. +6. Next, select the options desired in the box: a) Should any of the columns be excluded from the design creation? If yes, then unclick the **Include?** box. b) For input factors to be used in the construction of the uniform space filling design, make sure that the **Type** is designated as **Input**. The automatically generated index column **__id** will be already listed as **Index**. If there is a label column for the candidates, then uncheck its **Include?** box to make sure only one index column is used. c) Finally, you can optionally change the **Min** and **Max** ranges for the inputs to adjust the relative emphasis that distances in each input range are designated. -7. Once the set-up choices have been made, click **Test SDOE** to find out what the anticipated time is for generating designs based on different numbers of random starts. +7. Once the set-up choices have been made, click **Estimate Runtime** to find out what the anticipated time is for generating designs based on different numbers of random starts. 8. Select the number of random starts to use, based on available time. Recall that using more random starts is likely to produce a design that is closer to the overall best optimum. -9. After the SDOE module has created the design(s), the left window **Created Designs** is populated with the new design(s). These can be viewed with the **View** option, where the plot now shows the **History Data** with one symbol, and the newly added possible design with another symbol. This allows better assessment of the appropriateness of the new design subject to the data that have already been collected. +9. After the SDOE module has created the design(s), the left window **Created Designs** is populated with the new design(s). These can be viewed with the **View** option, where the plot now shows the **Previous Data** in pink, and the newly added possible design in blue. This allows better assessment of the appropriateness of the new design subject to the data that have already been collected. 10. To access the file that contains the created designs, go to the **SDOE_files** folder. As before, a separate folder will have been created for each design. -11. If there is a desire to do another set in the sequential design, then the procedure outlined above for Example 2 can be followed again. The only change will be that this time there will be 3 files that need to be imported: A **Candidate** file from which new runs can be selected, and two **History** files. The first of these files will be the selected design from Example USF-1, and the second the newly created design that was run as a result of Example USF-2. When the user clicks on **Confirm** in the **Ensemble Selection** window, the two **History** files will be aggregated into a single **Aggregated History** file. +11. If there is a desire to do another set in the sequential design, then the procedure outlined above for Example 2 can be followed again. The only change will be that this time there will be 3 files that need to be imported: A **Candidate** file from which new runs can be selected, and two **Previous Data** files. The first of these files will be the selected design from Example USF-1, and the second the newly created design that was run as a result of Example USF-2. When the user clicks on **Continue** in the **Design Setup** window, the two **Previous Data** files will be aggregated into a single **Aggregated Previous Data** file. Example USF-3: A Uniform Space Filling Design for a Carbon Capture example in a 5-D input space ----------------------------------------------------------------------------------------------- In this example, we consider a more realistic scenario of a sequential design of experiment. Here we explore a 5-dimensional input space with G, lldg, CapturePerc, L and SteamFlow denoting the space that we wish to explore with a space-filling design. The candidate set, **Candidate Points 8perc**, contains 93 combinations of inputs that have been validated using an ASPEN model as possible combinations for this scenario. The goal is to collect 18 runs in two stages that fill the input space. There are some constraints on the inputs, that make the viable region irregular, and hence the candidate set is useful to avoid regions where it would be problematic to collect data. -1. After selecting the **SDOE** tab in FOQUS, click on **Load from File** and select the candidate file, **Candidate Points 8perc**. +1. After selecting the **SDOE** tab in FOQUS, click on **Load Existing Set** and select the candidate file, **Candidate Points 8perc**. -.. figure:: figs/Ex3_view1.png +.. figure:: figs/8-SS1.png :alt: Home Screen - :name: fig.Ex3_view1 + :name: fig.8-SS1 - Ex 3 Ensemble Selection window + Ex 3 Design Setup window 2. To see the range of each input and how the viable region of interest is captured with the candidate set, select **View** and then plot. In this case we have chosen to just show the 5 input factors in the pairwise scatterplot. -.. figure:: figs/Ex3_candidate_plot.png +.. figure:: figs/8-SS2.png :alt: Home Screen - :name: fig.Ex3_candidate_plot + :name: fig.8-SS2 Ex 3 plot of viable input space as defined by candidate set -3. After clicking **Confirm** in the **Ensemble Selection** box, and then **Uniform Space Filling** from the **Ensemble Aggregation** box, the **SDOE Set-up** box will appear on the right side of the second window. Here, select the options desired for the experiment to be run. For the illustrated figure, we selected a **Minimax** design with 3 potential sizes: 10, 11, 12. We specified that the column **Test No.** will be used as the Index, **G, lldg, CapturePerc, L, SteamFlow** will define the 5 factors to be used as inputs. We unclicked the **Include?** box for **CO2 captured** since we do not want to use it in the design construction. +3. After clicking **Continue** in the **Design Setup** box, and then **Uniform Space Filling** from the **Design Construction** box, the **Generate Design** box will appear on the right side of the second window. Here, select the options desired for the experiment to be run. For the illustrated figure, we selected a **Minimax** design with 3 potential sizes: 10, 11, 12. We specified that the column **__id** will be used as the Index, **G, lldg, CapturePerc, L, SteamFlow** will define the 5 factors to be used as inputs. We unclicked the **Include?** box for **CO2 captured** since we do not want to use it in the design construction, and also unclicked the **Include?** box for **Test No.** as we already have an index column with **__id**. -.. figure:: figs/Ex3_setup.png +.. figure:: figs/8-SS3.png :alt: Home Screen - :name: fig.Ex3_setup + :name: fig.8-SS3 - Ex 3 set-up window for first stage + Ex 3 generate design window for first stage -4. After running **Test SDOE** and selecting the number of random starts to be used, click **Run SDOE**. After the module has created the requested designs, they can be viewed and compared. +4. After clicking **Estimate Runtime** and selecting the number of random starts to be used, click **Run SDOE**. After the module has created the requested designs, they can be viewed and compared. -.. figure:: figs/Ex3_created_designs.png +.. figure:: figs/8-SS4.png :alt: Home Screen - :name: fig.Ex3_created_designs + :name: fig.8-SS4 Ex 3 10,11,12 run designs created for first stage 5. By clicking **View** and then **Plot**, the designs can be viewed. Suppose that the experimenter decides to use the 12 run design in the initial phase, then this would be the design that would be implemented and data collected for these 12 input combinations. -.. figure:: figs/Ex3_12run_design.png +.. figure:: figs/8-SS5.png :alt: Home Screen - :name: fig.Ex3_12run_design + :name: fig.8-SS5 Ex 3 chosen experiment for first stage -6. After these runs have been collected, the experimenter wants to collect additional runs. In this case, return to the first SDOE module window, and load in the candidate set (which can be changed to reflect any knowledge gained during the first phase, such as undesirable regions or new combinations to include). The completed experiment should also be included as a **History** file, by going to the **SDOE_files** folder and selecting the file containing the appropriate design. +6. After these runs have been collected, the experimenter wants to collect additional runs. In this case, return to the first SDOE module window, and load in the candidate set (which can be changed to reflect any knowledge gained during the first phase, such as undesirable regions or new combinations to include). The completed experiment should also be included as a **Previous Data** file, by going to the **SDOE_files** folder and selecting the file containing the appropriate design. Note that all candidate file(s) and previous data file(s) used together must contain all the same column names, with the exception of the **__id** column since it is automatically created later on. -.. figure:: figs/Ex3_ensemble_w_history.png +.. figure:: figs/8-SS6.png :alt: Home Screen - :name: fig.Ex3_ensemble_w_history + :name: fig.8-SS6 - Ex 3 ensemble selection box for second stage + Ex 3 design setup box for second stage -7. After clicking **Confirm** in the **Ensemble Selection** box, and then **Uniform Space Filling** from the **Ensemble Aggregation** box, the **SDOE Set-up** box will appear on the right side of the second window. Here, select the options desired for the experiment to be run. For the illustrated figure, we selected a **Minimax** design with a design size of 6 (to use the remaining available budget). We again specified that the column **Test No.** will be used as the Index, **G, lldg, CapturePerc, L, SteamFlow** will define the same 5 factors to be used as inputs. +7. After clicking **Continue** in the **Design Setup** box, and then **Uniform Space Filling** from the **Design Construction** box, the **Generate Design** box will appear on the right side of the second window. Here, select the options desired for the experiment to be run. For the illustrated figure, we selected a **Minimax** design with a design size of 6 (to use the remaining available budget). We again specified that the column **__id** will be used as the Index, **G, lldg, CapturePerc, L, SteamFlow** will define the same 5 factors to be used as inputs, and we uncheck the unneeded columns **Test No.** and **CO2 captured**. -.. figure:: figs/Ex3_setup_round2.png +.. figure:: figs/8-SS7.png :alt: Home Screen - :name: fig.Ex3_setup_round2 + :name: fig.8-SS7 - Ex 3 setup box for second stage + Ex 3 generate design box for second stage -8. After running **Test SDOE** and selecting the number of random starts to be used, click **Run SDOE**. After the module has created the requested design, they can be viewed. After selecting **View** and then **Plot**, the experimenter can see the new design with the historical runs included. This provides a good plot to allow the complete sequence of two experiments to be examined as a combined set of runs. Note that the first and second stages are shown in different colors and with different symbols. +8. After clicking **Estimate Runtime** and selecting the number of random starts to be used, click **Run SDOE**. After the module has created the requested design, it can be viewed. After selecting **View** and then **Plot**, the experimenter can see the new design with the previous data runs included. This provides a good plot to allow the complete sequence of two experiments to be examined as a combined set of runs. Note that the first and second stages are shown in different colors. The first stage is shown in pink while the second is shown in blue. Candidate points not part of either stage are in gray. -.. figure:: figs/Ex3_6run_round2.png +.. figure:: figs/8-SS8.png :alt: Home Screen - :name: fig.Ex3_6run_round2 + :name: fig.8-SS8 - Ex 3 setup box for second stage + Ex 3 chosen experiment for second stage diff --git a/docs/source/chapt_sdoe/figs/11-SS10.png b/docs/source/chapt_sdoe/figs/11-SS10.png new file mode 100644 index 000000000..c867f9b5f Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS10.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS11.png b/docs/source/chapt_sdoe/figs/11-SS11.png new file mode 100644 index 000000000..6ff54a5a1 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS11.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS12.png b/docs/source/chapt_sdoe/figs/11-SS12.png new file mode 100644 index 000000000..56cb2d354 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS12.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS13.png b/docs/source/chapt_sdoe/figs/11-SS13.png new file mode 100644 index 000000000..0771efef8 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS13.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS3.png b/docs/source/chapt_sdoe/figs/11-SS3.png new file mode 100644 index 000000000..23a711f33 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS3.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS4.png b/docs/source/chapt_sdoe/figs/11-SS4.png new file mode 100644 index 000000000..332133dda Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS4.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS5.png b/docs/source/chapt_sdoe/figs/11-SS5.png new file mode 100644 index 000000000..b49286b44 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS5.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS6.png b/docs/source/chapt_sdoe/figs/11-SS6.png new file mode 100644 index 000000000..f0bf9833d Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS6.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS7.png b/docs/source/chapt_sdoe/figs/11-SS7.png new file mode 100644 index 000000000..cb3ed8391 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS7.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS8.png b/docs/source/chapt_sdoe/figs/11-SS8.png new file mode 100644 index 000000000..d45b9f3a5 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS8.png differ diff --git a/docs/source/chapt_sdoe/figs/11-SS9.png b/docs/source/chapt_sdoe/figs/11-SS9.png new file mode 100644 index 000000000..d6d0f0f83 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/11-SS9.png differ diff --git a/docs/source/chapt_sdoe/figs/6-SS1.png b/docs/source/chapt_sdoe/figs/6-SS1.png new file mode 100644 index 000000000..0ae479c35 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/6-SS1.png differ diff --git a/docs/source/chapt_sdoe/figs/6-SS2.png b/docs/source/chapt_sdoe/figs/6-SS2.png new file mode 100644 index 000000000..b0a79893c Binary files /dev/null and b/docs/source/chapt_sdoe/figs/6-SS2.png differ diff --git a/docs/source/chapt_sdoe/figs/6-SS3.png b/docs/source/chapt_sdoe/figs/6-SS3.png new file mode 100644 index 000000000..4639031ed Binary files /dev/null and b/docs/source/chapt_sdoe/figs/6-SS3.png differ diff --git a/docs/source/chapt_sdoe/figs/6-SS4.png b/docs/source/chapt_sdoe/figs/6-SS4.png new file mode 100644 index 000000000..74c6c905a Binary files /dev/null and b/docs/source/chapt_sdoe/figs/6-SS4.png differ diff --git a/docs/source/chapt_sdoe/figs/6-SS5.png b/docs/source/chapt_sdoe/figs/6-SS5.png new file mode 100644 index 000000000..829aff02b Binary files /dev/null and b/docs/source/chapt_sdoe/figs/6-SS5.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS1.png b/docs/source/chapt_sdoe/figs/8-SS1.png new file mode 100644 index 000000000..6f433e47b Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS1.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS2.png b/docs/source/chapt_sdoe/figs/8-SS2.png new file mode 100644 index 000000000..2deb95739 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS2.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS3.png b/docs/source/chapt_sdoe/figs/8-SS3.png new file mode 100644 index 000000000..e04b85770 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS3.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS4.png b/docs/source/chapt_sdoe/figs/8-SS4.png new file mode 100644 index 000000000..937d2cdca Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS4.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS5.png b/docs/source/chapt_sdoe/figs/8-SS5.png new file mode 100644 index 000000000..caceb0bba Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS5.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS6.png b/docs/source/chapt_sdoe/figs/8-SS6.png new file mode 100644 index 000000000..c70d96a21 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS6.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS7.png b/docs/source/chapt_sdoe/figs/8-SS7.png new file mode 100644 index 000000000..67a4db1b8 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS7.png differ diff --git a/docs/source/chapt_sdoe/figs/8-SS8.png b/docs/source/chapt_sdoe/figs/8-SS8.png new file mode 100644 index 000000000..bb4ec21c2 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/8-SS8.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS1.png b/docs/source/chapt_sdoe/figs/9-SS1.png new file mode 100644 index 000000000..dbb06ae05 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS1.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS2.png b/docs/source/chapt_sdoe/figs/9-SS2.png new file mode 100644 index 000000000..0271beef6 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS2.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS3.png b/docs/source/chapt_sdoe/figs/9-SS3.png new file mode 100644 index 000000000..4a276d754 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS3.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS4.png b/docs/source/chapt_sdoe/figs/9-SS4.png new file mode 100644 index 000000000..daa173e77 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS4.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS5.png b/docs/source/chapt_sdoe/figs/9-SS5.png new file mode 100644 index 000000000..2397d5134 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS5.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS6.png b/docs/source/chapt_sdoe/figs/9-SS6.png new file mode 100644 index 000000000..fb50a4d64 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS6.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS7.png b/docs/source/chapt_sdoe/figs/9-SS7.png new file mode 100644 index 000000000..bb136ac8f Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS7.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS8.png b/docs/source/chapt_sdoe/figs/9-SS8.png new file mode 100644 index 000000000..12107e9af Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS8.png differ diff --git a/docs/source/chapt_sdoe/figs/9-SS9.png b/docs/source/chapt_sdoe/figs/9-SS9.png new file mode 100644 index 000000000..820ce1492 Binary files /dev/null and b/docs/source/chapt_sdoe/figs/9-SS9.png differ diff --git a/examples/tutorial_files/SDOE/NUSFex1.csv b/examples/tutorial_files/SDOE/NUSFex1.csv new file mode 100644 index 000000000..1d7ed9158 --- /dev/null +++ b/examples/tutorial_files/SDOE/NUSFex1.csv @@ -0,0 +1,442 @@ +"X1","X2","RawWT" +-1,-1,47.1850961538462 +-0.9,-1,47.5274038461538 +-0.8,-1,47.8427884615385 +-0.7,-1,48.13125 +-0.6,-1,48.3927884615385 +-0.5,-1,48.6274038461538 +-0.4,-1,48.8350961538462 +-0.3,-1,49.0158653846154 +-0.2,-1,49.1697115384615 +-0.1,-1,49.2966346153846 +0,-1,49.3966346153846 +0.1,-1,49.4697115384615 +0.2,-1,49.5158653846154 +0.3,-1,49.5350961538462 +0.4,-1,49.5274038461538 +0.5,-1,49.4927884615385 +0.6,-1,49.43125 +0.7,-1,49.3427884615385 +0.8,-1,49.2274038461538 +0.9,-1,49.0850961538462 +1,-1,48.9158653846154 +-1,-0.9,46.2597115384615 +-0.9,-0.9,46.6366346153846 +-0.8,-0.9,46.9866346153846 +-0.7,-0.9,47.3097115384615 +-0.6,-0.9,47.6058653846154 +-0.5,-0.9,47.8750961538462 +-0.4,-0.9,48.1174038461538 +-0.3,-0.9,48.3327884615385 +-0.2,-0.9,48.52125 +-0.1,-0.9,48.6827884615385 +0,-0.9,48.8174038461539 +0.1,-0.9,48.9250961538462 +0.2,-0.9,49.0058653846154 +0.3,-0.9,49.0597115384615 +0.4,-0.9,49.0866346153846 +0.5,-0.9,49.0866346153846 +0.6,-0.9,49.0597115384615 +0.7,-0.9,49.0058653846154 +0.8,-0.9,48.9250961538462 +0.9,-0.9,48.8174038461538 +1,-0.9,48.6827884615385 +-1,-0.8,45.14125 +-0.9,-0.8,45.5527884615385 +-0.8,-0.8,45.9374038461538 +-0.7,-0.8,46.2950961538462 +-0.6,-0.8,46.6258653846154 +-0.5,-0.8,46.9297115384615 +-0.4,-0.8,47.2066346153846 +-0.3,-0.8,47.4566346153846 +-0.2,-0.8,47.6797115384615 +-0.1,-0.8,47.8758653846154 +0,-0.8,48.0450961538462 +0.1,-0.8,48.1874038461538 +0.2,-0.8,48.3027884615385 +0.3,-0.8,48.39125 +0.4,-0.8,48.4527884615385 +0.5,-0.8,48.4874038461538 +0.6,-0.8,48.4950961538462 +0.7,-0.8,48.4758653846154 +0.8,-0.8,48.4297115384615 +0.9,-0.8,48.3566346153846 +1,-0.8,48.2566346153846 +-1,-0.7,43.8297115384615 +-0.9,-0.7,44.2758653846154 +-0.8,-0.7,44.6950961538462 +-0.7,-0.7,45.0874038461538 +-0.6,-0.7,45.4527884615385 +-0.5,-0.7,45.79125 +-0.4,-0.7,46.1027884615385 +-0.3,-0.7,46.3874038461538 +-0.2,-0.7,46.6450961538462 +-0.1,-0.7,46.8758653846154 +0,-0.7,47.0797115384615 +0.1,-0.7,47.2566346153846 +0.2,-0.7,47.4066346153846 +0.3,-0.7,47.5297115384615 +0.4,-0.7,47.6258653846154 +0.5,-0.7,47.6950961538462 +0.6,-0.7,47.7374038461538 +0.7,-0.7,47.7527884615385 +0.8,-0.7,47.74125 +0.9,-0.7,47.7027884615385 +1,-0.7,47.6374038461538 +-1,-0.6,42.3250961538462 +-0.9,-0.6,42.8058653846154 +-0.8,-0.6,43.2597115384615 +-0.7,-0.6,43.6866346153846 +-0.6,-0.6,44.0866346153846 +-0.5,-0.6,44.4597115384615 +-0.4,-0.6,44.8058653846154 +-0.3,-0.6,45.1250961538462 +-0.2,-0.6,45.4174038461538 +-0.1,-0.6,45.6827884615385 +0,-0.6,45.92125 +0.1,-0.6,46.1327884615385 +0.2,-0.6,46.3174038461538 +0.3,-0.6,46.4750961538462 +0.4,-0.6,46.6058653846154 +0.5,-0.6,46.7097115384615 +0.6,-0.6,46.7866346153846 +0.7,-0.6,46.8366346153846 +0.8,-0.6,46.8597115384615 +0.9,-0.6,46.8558653846154 +1,-0.6,46.8250961538462 +-1,-0.5,40.6274038461538 +-0.9,-0.5,41.1427884615385 +-0.8,-0.5,41.63125 +-0.7,-0.5,42.0927884615385 +-0.6,-0.5,42.5274038461538 +-0.5,-0.5,42.9350961538462 +-0.4,-0.5,43.3158653846154 +-0.3,-0.5,43.6697115384615 +-0.2,-0.5,43.9966346153846 +-0.1,-0.5,44.2966346153846 +0,-0.5,44.5697115384615 +0.1,-0.5,44.8158653846154 +0.2,-0.5,45.0350961538462 +0.3,-0.5,45.2274038461538 +0.4,-0.5,45.3927884615385 +0.5,-0.5,45.53125 +0.6,-0.5,45.6427884615385 +0.7,-0.5,45.7274038461538 +0.8,-0.5,45.7850961538462 +0.9,-0.5,45.8158653846154 +1,-0.5,45.8197115384615 +-1,-0.4,38.7366346153846 +-0.9,-0.4,39.2866346153846 +-0.8,-0.4,39.8097115384615 +-0.7,-0.4,40.3058653846154 +-0.6,-0.4,40.7750961538461 +-0.5,-0.4,41.2174038461538 +-0.4,-0.4,41.6327884615385 +-0.3,-0.4,42.02125 +-0.2,-0.4,42.3827884615385 +-0.1,-0.4,42.7174038461538 +0,-0.4,43.0250961538461 +0.1,-0.4,43.3058653846154 +0.2,-0.4,43.5597115384615 +0.3,-0.4,43.7866346153846 +0.4,-0.4,43.9866346153846 +0.5,-0.4,44.1597115384615 +0.6,-0.4,44.3058653846154 +0.7,-0.4,44.4250961538462 +0.8,-0.4,44.5174038461538 +0.9,-0.4,44.5827884615385 +1,-0.4,44.62125 +-1,-0.3,36.6527884615385 +-0.9,-0.3,37.2374038461538 +-0.8,-0.3,37.7950961538462 +-0.7,-0.3,38.3258653846154 +-0.6,-0.3,38.8297115384615 +-0.5,-0.3,39.3066346153846 +-0.4,-0.3,39.7566346153846 +-0.3,-0.3,40.1797115384615 +-0.2,-0.3,40.5758653846154 +-0.1,-0.3,40.9450961538462 +0,-0.3,41.2874038461539 +0.1,-0.3,41.6027884615385 +0.2,-0.3,41.89125 +0.3,-0.3,42.1527884615385 +0.4,-0.3,42.3874038461538 +0.5,-0.3,42.5950961538461 +0.6,-0.3,42.7758653846154 +0.7,-0.3,42.9297115384615 +0.8,-0.3,43.0566346153846 +0.9,-0.3,43.1566346153846 +1,-0.3,43.2297115384615 +-1,-0.2,34.3758653846154 +-0.9,-0.2,34.9950961538461 +-0.8,-0.2,35.5874038461538 +-0.7,-0.2,36.1527884615385 +-0.6,-0.2,36.69125 +-0.5,-0.2,37.2027884615385 +-0.4,-0.2,37.6874038461538 +-0.3,-0.2,38.1450961538462 +-0.2,-0.2,38.5758653846154 +-0.1,-0.2,38.9797115384615 +0,-0.2,39.3566346153846 +0.1,-0.2,39.7066346153846 +0.2,-0.2,40.0297115384615 +0.3,-0.2,40.3258653846154 +0.4,-0.2,40.5950961538461 +0.5,-0.2,40.8374038461538 +0.6,-0.2,41.0527884615385 +0.7,-0.2,41.24125 +0.8,-0.2,41.4027884615385 +0.9,-0.2,41.5374038461538 +1,-0.2,41.6450961538462 +-1,-0.1,31.9058653846154 +-0.9,-0.1,32.5597115384615 +-0.8,-0.1,33.1866346153846 +-0.7,-0.1,33.7866346153846 +-0.6,-0.1,34.3597115384615 +-0.5,-0.1,34.9058653846154 +-0.4,-0.1,35.4250961538462 +-0.3,-0.1,35.9174038461538 +-0.2,-0.1,36.3827884615385 +-0.1,-0.1,36.82125 +0,-0.1,37.2327884615385 +0.1,-0.1,37.6174038461538 +0.2,-0.1,37.9750961538462 +0.3,-0.1,38.3058653846154 +0.4,-0.1,38.6097115384615 +0.5,-0.1,38.8866346153846 +0.6,-0.1,39.1366346153846 +0.7,-0.1,39.3597115384615 +0.8,-0.1,39.5558653846154 +0.9,-0.1,39.7250961538462 +1,-0.1,39.8674038461538 +-1,0,29.2427884615385 +-0.9,0,29.93125 +-0.8,0,30.5927884615385 +-0.7,0,31.2274038461538 +-0.6,0,31.8350961538462 +-0.5,0,32.4158653846154 +-0.4,0,32.9697115384615 +-0.3,0,33.4966346153846 +-0.2,0,33.9966346153846 +-0.1,0,34.4697115384615 +0,0,34.9158653846154 +0.1,0,35.3350961538462 +0.2,0,35.7274038461538 +0.3,0,36.0927884615385 +0.4,0,36.43125 +0.5,0,36.7427884615385 +0.6,0,37.0274038461538 +0.7,0,37.2850961538462 +0.8,0,37.5158653846154 +0.9,0,37.7197115384615 +1,0,37.8966346153846 +-1,0.1,26.3866346153846 +-0.9,0.1,27.1097115384615 +-0.8,0.1,27.8058653846154 +-0.7,0.1,28.4750961538462 +-0.6,0.1,29.1174038461538 +-0.5,0.1,29.7327884615385 +-0.4,0.1,30.32125 +-0.3,0.1,30.8827884615385 +-0.2,0.1,31.4174038461538 +-0.1,0.1,31.9250961538461 +0,0.1,32.4058653846154 +0.1,0.1,32.8597115384615 +0.2,0.1,33.2866346153846 +0.3,0.1,33.6866346153846 +0.4,0.1,34.0597115384615 +0.5,0.1,34.4058653846154 +0.6,0.1,34.7250961538461 +0.7,0.1,35.0174038461538 +0.8,0.1,35.2827884615385 +0.9,0.1,35.52125 +1,0.1,35.7327884615385 +-1,0.2,23.3374038461538 +-0.9,0.2,24.0950961538461 +-0.8,0.2,24.8258653846154 +-0.7,0.2,25.5297115384615 +-0.6,0.2,26.2066346153846 +-0.5,0.2,26.8566346153846 +-0.4,0.2,27.4797115384615 +-0.3,0.2,28.0758653846154 +-0.2,0.2,28.6450961538462 +-0.1,0.2,29.1874038461538 +0,0.2,29.7027884615385 +0.1,0.2,30.19125 +0.2,0.2,30.6527884615385 +0.3,0.2,31.0874038461538 +0.4,0.2,31.4950961538462 +0.5,0.2,31.8758653846154 +0.6,0.2,32.2297115384615 +0.7,0.2,32.5566346153846 +0.8,0.2,32.8566346153846 +0.9,0.2,33.1297115384615 +1,0.2,33.3758653846154 +-1,0.3,20.0950961538462 +-0.9,0.3,20.8874038461538 +-0.8,0.3,21.6527884615385 +-0.7,0.3,22.39125 +-0.6,0.3,23.1027884615385 +-0.5,0.3,23.7874038461538 +-0.4,0.3,24.4450961538462 +-0.3,0.3,25.0758653846154 +-0.2,0.3,25.6797115384615 +-0.1,0.3,26.2566346153846 +0,0.3,26.8066346153846 +0.1,0.3,27.3297115384615 +0.2,0.3,27.8258653846154 +0.3,0.3,28.2950961538462 +0.4,0.3,28.7374038461538 +0.5,0.3,29.1527884615385 +0.6,0.3,29.54125 +0.7,0.3,29.9027884615385 +0.8,0.3,30.2374038461538 +0.9,0.3,30.5450961538462 +1,0.3,30.8258653846154 +-1,0.4,16.6597115384615 +-0.9,0.4,17.4866346153846 +-0.8,0.4,18.2866346153846 +-0.7,0.4,19.0597115384615 +-0.6,0.4,19.8058653846154 +-0.5,0.4,20.5250961538462 +-0.4,0.4,21.2174038461538 +-0.3,0.4,21.8827884615385 +-0.2,0.4,22.52125 +-0.1,0.4,23.1327884615385 +0,0.4,23.7174038461539 +0.1,0.4,24.2750961538462 +0.2,0.4,24.8058653846154 +0.3,0.4,25.3097115384615 +0.4,0.4,25.7866346153846 +0.5,0.4,26.2366346153846 +0.6,0.4,26.6597115384615 +0.7,0.4,27.0558653846154 +0.8,0.4,27.4250961538462 +0.9,0.4,27.7674038461539 +1,0.4,28.0827884615385 +-1,0.5,13.03125 +-0.9,0.5,13.8927884615385 +-0.8,0.5,14.7274038461538 +-0.7,0.5,15.5350961538461 +-0.6,0.5,16.3158653846154 +-0.5,0.5,17.0697115384615 +-0.4,0.5,17.7966346153846 +-0.3,0.5,18.4966346153846 +-0.2,0.5,19.1697115384615 +-0.1,0.5,19.8158653846154 +0,0.5,20.4350961538461 +0.1,0.5,21.0274038461538 +0.2,0.5,21.5927884615385 +0.3,0.5,22.13125 +0.4,0.5,22.6427884615385 +0.5,0.5,23.1274038461538 +0.6,0.5,23.5850961538462 +0.7,0.5,24.0158653846154 +0.8,0.5,24.4197115384615 +0.9,0.5,24.7966346153846 +1,0.5,25.1466346153846 +-1,0.6,9.20971153846153 +-0.9,0.6,10.1058653846154 +-0.8,0.6,10.9750961538461 +-0.7,0.6,11.8174038461538 +-0.6,0.6,12.6327884615384 +-0.5,0.6,13.42125 +-0.4,0.6,14.1827884615385 +-0.3,0.6,14.9174038461538 +-0.2,0.6,15.6250961538461 +-0.1,0.6,16.3058653846154 +0,0.6,16.9597115384615 +0.1,0.6,17.5866346153846 +0.2,0.6,18.1866346153846 +0.3,0.6,18.7597115384615 +0.4,0.6,19.3058653846154 +0.5,0.6,19.8250961538461 +0.6,0.6,20.3174038461538 +0.7,0.6,20.7827884615385 +0.8,0.6,21.22125 +0.9,0.6,21.6327884615385 +1,0.6,22.0174038461538 +-1,0.7,5.19509615384614 +-0.9,0.7,6.12586538461538 +-0.8,0.7,7.02971153846153 +-0.7,0.7,7.90663461538461 +-0.6,0.7,8.75663461538461 +-0.5,0.7,9.57971153846153 +-0.4,0.7,10.3758653846154 +-0.3,0.7,11.1450961538462 +-0.2,0.7,11.8874038461538 +-0.1,0.7,12.6027884615385 +0,0.7,13.29125 +0.1,0.7,13.9527884615385 +0.2,0.7,14.5874038461538 +0.3,0.7,15.1950961538461 +0.4,0.7,15.7758653846154 +0.5,0.7,16.3297115384615 +0.6,0.7,16.8566346153846 +0.7,0.7,17.3566346153846 +0.8,0.7,17.8297115384615 +0.9,0.7,18.2758653846154 +1,0.7,18.6950961538462 +-1,0.8,0.987403846153834 +-0.9,0.8,1.95278846153846 +-0.8,0.8,2.89124999999999 +-0.7,0.8,3.80278846153845 +-0.6,0.8,4.68740384615384 +-0.5,0.8,5.54509615384614 +-0.4,0.8,6.37586538461537 +-0.3,0.8,7.17971153846153 +-0.2,0.8,7.95663461538461 +-0.1,0.8,8.70663461538461 +0,0.8,9.42971153846153 +0.1,0.8,10.1258653846154 +0.2,0.8,10.7950961538462 +0.3,0.8,11.4374038461538 +0.4,0.8,12.0527884615385 +0.5,0.8,12.64125 +0.6,0.8,13.2027884615385 +0.7,0.8,13.7374038461538 +0.8,0.8,14.2450961538461 +0.9,0.8,14.7258653846154 +1,0.8,15.1797115384615 +-1,0.9,-3.41336538461539 +-0.9,0.9,-2.41336538461539 +-0.8,0.9,-1.44028846153848 +-0.7,0.9,-0.494134615384627 +-0.6,0.9,0.42509615384615 +-0.5,0.9,1.31740384615383 +-0.4,0.9,2.18278846153846 +-0.3,0.9,3.02124999999999 +-0.2,0.9,3.83278846153845 +-0.1,0.9,4.61740384615384 +0,0.9,5.37509615384614 +0.1,0.9,6.10586538461537 +0.2,0.9,6.80971153846153 +0.3,0.9,7.48663461538461 +0.4,0.9,8.1366346153846 +0.5,0.9,8.75971153846153 +0.6,0.9,9.35586538461537 +0.7,0.9,9.92509615384615 +0.8,0.9,10.4674038461538 +0.9,0.9,10.9827884615385 +1,0.9,11.47125 +-1,1,-8.00721153846156 +-0.9,1,-6.97259615384616 +-0.8,1,-5.96490384615386 +-0.7,1,-4.98413461538464 +-0.6,1,-4.03028846153847 +-0.5,1,-3.10336538461539 +-0.4,1,-2.20336538461541 +-0.3,1,-1.33028846153847 +-0.2,1,-0.484134615384627 +-0.1,1,0.33509615384615 +0,1,1.12740384615383 +0.1,1,1.89278846153844 +0.2,1,2.63124999999999 +0.3,1,3.34278846153845 +0.4,1,4.02740384615384 +0.5,1,4.68509615384614 +0.6,1,5.31586538461537 +0.7,1,5.91971153846153 +0.8,1,6.49663461538461 +0.9,1,7.0466346153846 +1,1,7.56971153846153