A Constrained Mixture Experiment

 /****************************************************************/
 /*              S A S   S A M P L E   L I B R A R Y             */
 /*                                                              */
 /*    NAME: ADXEG6                                              */
 /*   TITLE: A Constrained Mixture Experiment                    */
 /* PRODUCT: QC                                                  */
 /*  SYSTEM: ALL                                                 */
 /*    KEYS: Design of Experiments,                              */
 /*   PROCS:                                                     */
 /*    DATA:                                                     */
 /*     REF: Cornell, J.A. (1981). Experiments with Mixtures.    */
 /*             New York: John Wiley & Sons.                     */
 /*          Snee, R.D. (1975). "Experimental Designs for        */
 /*             Quadratic Models in Constrained Mixture Spaces." */
 /*             Technometrics, 17:2, pp. 149-159.                */
 /*    MISC: ADX Macros are stored in the AUTOCALL library       */
 /*                                                              */
 /*                                                              */
 /* Snee (1975) discusses a lubricant blending study in which    */
 /* there are four factors in the blend. Here are the components */
 /* and the respective ranges of their contribution to the blend:*/
 /*             Additive   :   7%  to  18%                       */
 /*             Component A:   0%  to  30%                       */
 /*             Component B:  37%  to  70%                       */
 /*             Component C:   0%  to  15%                       */
 /*                                                              */
 /****************************************************************/




 /*--------------------------------------------------------------*/
 /*  EXAMPLE 6:  AN XVERT DESIGN FOR STUDYING LUBRICANT BLENDS.  */
 /*                      SOURCE:  SNEE (1975).                   */
 /*--------------------------------------------------------------*/

 /*
 / For this example, we need only the mixture design macros: if we
 / haven't already included them, we do so now.
 /---------------------------------------------------------------*/
 %adxgen;
 %adxmix;
 %adxinit                        /* Initialize ADX environment.  */

 /*
 / Call %adxvert() with the appropriate constraints on the mixture
 / components.  We can leave off the lower bounds of 0 for
 / components A and C, since this will be the default.
 /---------------------------------------------------------------*/
 %adxxvert(lube,Add .07-.18 /CompA -.3 /CompB .37-.7 /CompC -.15)

 /*
 / The actual design which Snee used was composed of a subset of
 / the 33 mixture component combinations found by XVERT: centroids
 / were chosen to be included in the design on the basis of the
 / dimension of the face with which they were associated and the
 / average distance from the vertices of the face.  The following
 / DATA step will choose
 / Snee's design from the set of combinations found by XVERT.
 /---------------------------------------------------------------*/
 data sneelube; set lube;
    if (  (dimen = 0)                 /* All vertices            */
       | ((dimen = 1) & (dist > .2))  /* Make it harder for edge */
       | ((dimen = 2) & (dist > .1))  /*   centroids than faces  */
       |  (dimen = 3)              ); /* The overall centroid    */
 run;