Chapter Contents 
Previous 
Next 
Details of the OPTEX Procedure 
See OPTEX8 in the SAS/QC Sample Library 
This example uses the BLOCKS statement to construct an incomplete block design. An incomplete block design is a design for v qualitative treatments in b blocks of k runs each, where k < v so that not all treatments can occur in each block. An incomplete block design is said to be balanced when all pairs of treatments occur equally often in the same block. A balanced design is always optimal for any criterion based on the information matrix, although there are many values of (v,b,k) for which no balanced design exists.
One way to construct an incomplete block design with the OPTEX procedure is to include the blocking factor in the candidate set and in the model. For example, the following statements search for a BIBD for seven treatments in seven blocks of size three that is, (v,b,k)=(7,7,3) using the full set of 49 treatmentbyblock combinations for candidates:
data can; do tmt = 1 to 7; do blk = 1 to 7; output; end; end;
proc optex data=can seed=8327 coding=orth; class tmt blk; model tmt blk; generate n=21; run;
By default, the OPTEX procedure performs the search 10 times from different random starting designs. The various efficiencies for each design are listed in Output 24.7.1.
Output 24.7.1: Efficiency Factors for v=b=7, k=3 DesignsSearching for an optimal design for both treatments and blocks simultaneously has its limitations. Note that the balanced design was found on only two of the ten tries. A more serious limitation is that this approach sometimes fails to find a design with equalsized blocks. A more efficient and flexible way to construct a block design with the OPTEX procedure is to use the BLOCKS statement.
The following statements use the BLOCKS statement to solve the incomplete block design problem described previously. In this case, the candidate set simply consists of the seven treatment levels.
data can; do tmt = 1 to 7; output; end; proc optex data=can seed=73462 coding=orth; class tmt; model tmt; blocks structure=(7)3; run;
The output again consists of efficiency factors for 10 different tries, but this time the factors are computed from the information matrix for only the treatment effects. In this special case (a single classification effect in the treatment model together with the BLOCKS STRUCTURE= specification), the efficiency of each design as an incomplete block design is also listed (Output 24.7.2).
Output 24.7.2: Efficiency Factors for v=b=7, k=3 Optimal Blocking Designs

Since the OPTEX procedure is interactive, you can save the final design in a data set by submitting the OUTPUT statement immediately after the preceding statements. The following statements use the BLOCKNAME= option to rename the block variable:
output out=bibd blockname=blk; proc print data=bibd; run;
The final design is shown in Output 24.7.3.
Although there is no guarantee that the OPTEX procedure will find the globally optimal block design by this method, it usually does find small to mediumsized balanced designs, and it always finds a very efficient design. For example, for the designs given in Table 9.5 of Cochran and Cox (1957), the OPTEX procedure consistently finds the theoretically optimal BIBD in all cases with 10 or fewer treatments. Furthermore, in no case is the Defficiency relative to the balanced design less than 99%.
Output 24.7.3: Balanced Incomplete Block Design for v=b=7, k=3

Chapter Contents 
Previous 
Next 
Top 
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.