Work-around: Using Disallowed Combinations with Profilers
Oct 22, 2017 7:19 AM(1644 views)
Disallowed combinations work well to design experiments that obey non-linear constraints. You may have seen examples which constrain design points within the borders of say North Carolina. However, once the data are collected and a model is created, optimization routines do not currently obey your specified disallowed combinations. If, for example, I wanted to minimize temperature by geographic location within North Carolina, and my model predicted weather by longitude and latitude, the solution may very well send me to the North Pole (i.e. not in North Carolina!).
I developed a work-around that seems to work well, and wanted to share this with the user community. Apologies if someone else already posted something similar, but I could find nothing on the topic when I searched.
Essentially what I do is create a column for the disallowed combination formula, and set the Response Limits property of that column to ensure a desirability of 1 if the constraint is satisfied and 0 if it is violated. I set the Importance for my preferences in Response Limits to 20 typically (VERY important). Then I include that column along with my actual response in a profiler for optimization.
I have included an example to describe the technique. In this example I have only two predictors, X and Y, which have a disallowed combination described by a cubic equation (red dotted line). I show the unconstrained solution (red asterisk) and the constrained solution (solid green dot), and I added contours so you can see why the optimizations picked these solutions.
If you have other means of solving this problem, I'd be very interested to see them. I hope this is useful for others who do optimization work.
Wanted to point out that this work-around also works when you have multiple non-linear constraints. Just combine the allowed combinations in a single column (using "&"), and proceed as I described above with setting the response limits for that column. As with all optimization problems, your initial values matter for optimization.