張意松等


摘要:利用SAS軟件中的Factex過程進行析因試驗方案的設計,通過Optex過程對方案進行了優化,并通過實例說明其具體應用方法。結果表明,通過Optex過程可減少70%的試驗量,平均預期標準誤也相對較小。
關鍵詞:最優化方法;SAS軟件;試驗設計;析因試驗
中圖分類號:S-3 文獻標識碼:A 文章編號:0439-8114(2015)17-4309-03
DOI:10.14088/j.cnki.issn0439-8114.2015.17.053
析因試驗是一種常用的重要試驗設計方法,其理論基礎是方差分析理論[1],將兩個因素或多個因素進行交叉分組,若分別以每個水平組合進行試驗,稱為析因設計,也叫因子設計。通過析因設計試驗得到的結果可以用來檢驗各因素內部不同水平間有無差異,還可檢驗兩個因素或多個因素間是否存在交互作用。由于農業研究試驗中涉及的影響因素往往較多,從而造成試驗量較大[2,3],因此需要對試驗方案做進一步優化,優選出部分試驗設計點。本研究介紹了SAS軟件QC模塊中的Factex和Optex過程,并通過示例程序說明了如何使用該過程設計析因試驗和對試驗處理組做優化,以減少試驗處理組的方法。
1 Factex過程的基本語法
SAS軟件中的QC模塊為全面質量管理提供了一系列工具,引導用戶進行標準的統計過程以及試驗設計,其中Plan和Factex過程用來完成各種試驗方案的設計,Optex過程則用來優選試驗設計點[4]。Factex過程的語法結構如下:
PROC Factex < options> ;
Factors factor-names < / option> ;
Size size-specification ;
Model model-specification
Blocks block-specification ;
Examine
Output Out=SAS-data-set
1)PROC Factex語句,有可選項,選項包括了變量名長度、搜索時間設定以及自動選擇,一般使用nocheck選項,防止某些特殊情況搜索時間過長;
2)Factors語句,用于指定試驗的因素名,多個用空格隔開,默認的水平是2,選項可指定水平數,通過nlev=n來指定;
3)Size語句,用于指定試驗單元數,指定方式為design=ab×cd×L×n,其中b、d為因素個數,a、c為水平個數,n為重復次數。也可使用DESIGN=Mininum,自動確定最少處理數;
4)Model語句,用于指定搜尋設計方案的模式,可選項有:ESTIMATE=(effects)
5)Blocks語句,用于指定區組數及區組大小,當Factex過程用于析因設計時,一般不包括區組,則程序中無該語句;
6)Examine語句,用于指定輸出特征,有ALIASING、CONFOUNDING、DESIG選項,分別輸出設計的混淆結構、混淆規則以及標準編碼設計試驗點;
7)Output語句,用data=數據集.文件名,指定輸出文件名和數據集,此語句也可用factor-name NVALS=(level1 level2...levelq)或factor-name CVALS=(′level1′′level2′...′levelq′)格式指定在輸出設計方案中使用因素的實際水平值,使試驗方案更加直觀。
2 Optex過程的基本語法
Optex過程的語法結構如下所示:
PROC Optex < options > ;
Class class-variables ;
Model effects < / options> ;
Blocks block-specification
Examine
Generate
ID variables ;
Output Out= SAS-data-set
1)PROC Optex語句,有可選項,其中data=數據集.文件名,指定輸出文件名和數據集,seed=s指定產生隨機數的種子數s,可以是小于230的任意正整數,其他選項用于指定設計矩陣為奇異矩陣時,一般使用缺省設置;
2)Class語句,用于指定分類變量,即試驗設計的因素;
3)Model語句,用于指定優化的模型,通過命令@sign指定可忽略的交互作用,通過條算符號“|”指定展開效應使用的因素;
4)Blocks語句,用于存在協變量或者協方差時尋找符合D最優準則的設計方案;
5)Examine語句,用于指定輸出特征,同Factex過程的EXAMINE;
6)Generate語句,用于指定查找最優設計的方式,可選項主要有優化準則、搜索次數、搜索方法等。準則包括D、A、U、S等幾種最優化準則。系統默認的是method=exchange,如果想找到更可靠的設計可以用method=m_fedorov;
7)ID語句,用于指定不參與建模的變量;
8)Output語句,用data=數據集.文件名,指定輸出文件名和數據集。
3 實例應用
某縣農委農業生態環保檢驗監測站建立榨菜測土配方施肥示范,在肥料田間試驗中,需要建立3因素4水平試驗方案,3因素是指氮(x1)、磷(x2)、鉀(x3)3個研究因素;4水平是指氮、磷、鉀肥料用量的4個水平,分別用1、2、3、4水平代替,1水平為不施用任何肥料,3水平為當地供試作物肥料最佳用量,2水平為3水平的1/2用量,4水平為3水平用量的1.5倍,析因設計方案見表1。全析因設計方案程序如下:
PROC Factex;
Factors x1 x2 x3/ nlev=4;
Size design=64;
Output out=aa x1 nvals=(1 2 3 4)
x2 nvals=(1 2 3 4)
x3 nvals=(1 2 3 4);
Run;
Factors x4 / nlev=3;
Size design=3;
Output out=bb pointrep=aa x4 nvals=(1 2 3);
Run;
PROC Print; Run; Quit;
由表1可以看到,按照析因設計的原則,有192個處理組,設計方案雖然能夠實現,但是由于試驗具體實施需要一定的人力、物力和財力,因此需要在保證數據有效分析的基礎上對試驗方案做優化,選取設計空間中更少的點滿足分析。下面是Optex過程的應用舉例,將Optex過程置于Factex過程之后,對Factex過程的設計結果做優化:
PROC Factex;
PROC Optex data=bb seed=1234567;
Class x1 x2 x3 x4;
Model x1|x2|x3|x4 @2;
Generate n=57 keep=10 iter=50 method=m_fedorov ;
Output Out=optdesign;
Run;
PROC Print; Run; Quit;
由表2最優設計評價表可知,按照D準則評價1號方案是最佳方案,且平均預期標準誤也相對較小。析因設計方案經過優化以后處理數為57個,較之原來的192個處理組減少了70%的處理組(表3)。
4 小結與討論
對SAS軟件的Factex過程和Optex過程進行了詳細地介紹,可以根據試驗需求設置不同的參數,實現所需的析因設計方案。特別是使用Optex過程對析因設計點進行優化,在保證分析效果的情況下可得到試驗量相對較小的設計方案,解決了農業試驗中試驗處理組過多不容易實施所致的數據缺失、經費不足等問題。
參考文獻:
[1] 周振泉,劉順玉.田間試驗原理及其特點[J].黑龍江水利科技,2011,39(3):121-122.
[2] 張建方.關于試驗設計的效率及有關問題[J].數理統計與管理,2007,26(5):792-801.
[3] 王懷勝.田間試驗操作不當的原因與技術要點[J].現代農業科技,2007(23):161-165.
[4] 汪海波,羅 莉,吳 為,等.SAS統計分析從入門到精通[M].北京:人民郵電出版社,2013.endprint