時(shí)英智 高 梅 賈文紅 陰廣志 高興宇 杜永華 鄭麗芳
1(中國(guó)科學(xué)院上海應(yīng)用物理研究所 上海 201800)
2(中國(guó)科學(xué)院大學(xué) 北京 100049)
3(中國(guó)科學(xué)院上海高等研究院 上海 201210)
4(Institute of Chemical&Engineering Sciences,A*STAR,Singapore 627833)
5(National Synchrotron Light Source II,Brookhaven National Lab,USA11973)
作為一種尖端的材料表征手段,同步輻射技術(shù)已經(jīng)得到了各領(lǐng)域科研人員的廣泛認(rèn)可。然而同步輻射光束線機(jī)構(gòu)龐大,結(jié)構(gòu)復(fù)雜,為了給用戶提供高品質(zhì)的實(shí)驗(yàn)光斑,往往需要耗費(fèi)大量的時(shí)間和人力對(duì)光束線進(jìn)行調(diào)束優(yōu)化。面對(duì)變化的光源點(diǎn),工作人員需要憑借豐富的調(diào)束經(jīng)驗(yàn),對(duì)壓彎?rùn)C(jī)構(gòu)、單色器等設(shè)備內(nèi)的電機(jī)在其行程范圍內(nèi)一一進(jìn)行調(diào)節(jié),直到實(shí)驗(yàn)站樣品處獲得滿足要求的光通量、光斑形狀和光斑大小等[1]。整個(gè)調(diào)束過程通常需要若干小時(shí),甚至更長(zhǎng),以致耽誤用戶寶貴的實(shí)驗(yàn)機(jī)時(shí)。目前上海光源(Shanghai Synchrotron Radiation Facility,SSRF)已有16條光束線站對(duì)用戶開放[2],加上正在建設(shè)的二期工程,至2022年將有超過30條光束線站投入運(yùn)行,其中插入件線站近22條。每年寒暑假shutdown后的重新開機(jī)、每?jī)芍芤淮蔚臋C(jī)器研究、線站插入件Gap調(diào)節(jié)等都會(huì)改變儲(chǔ)存環(huán)內(nèi)電子軌道,導(dǎo)致線站光源點(diǎn)出現(xiàn)變化,從而影響實(shí)驗(yàn)光斑品質(zhì)。很多情況下這種變化無規(guī)律可循,從而難以快速地將光束線恢復(fù)到最優(yōu)狀態(tài)。如何能夠快速地優(yōu)化光束線,這是束線科學(xué)家們面對(duì)的一個(gè)嚴(yán)峻挑戰(zhàn)。
光束線設(shè)備種類多,影響實(shí)驗(yàn)光斑品質(zhì)的因素復(fù)雜,難以用數(shù)學(xué)公式進(jìn)行建模,因此對(duì)光束線進(jìn)行快速優(yōu)化也是國(guó)際上各大實(shí)驗(yàn)室面臨的一個(gè)難題。Roberto Pugliese等[3]基于模糊邏輯對(duì)光束線進(jìn)行自動(dòng)優(yōu)化,但其對(duì)運(yùn)行經(jīng)驗(yàn)依賴性強(qiáng),不能確保得到全局最優(yōu)解;Hignette等[4]使用波前分析法作為優(yōu)化策略,但該方法必須逐一調(diào)整光學(xué)元件,效率較低,且難以實(shí)現(xiàn)全局最優(yōu)。直到2015年新加坡科技研究局的杜永華博士[5]提出使用遺傳算法結(jié)合OMEA方法,實(shí)現(xiàn)了同步輻射光束線自動(dòng)全局最優(yōu)化。2017年他又提出了使用差分進(jìn)化算法取代遺傳算法,并成功應(yīng)用到新加坡光源XAFCA線站的調(diào)束系統(tǒng)中[6]。
然而新加坡光源的成功經(jīng)驗(yàn)無法直接移植和應(yīng)用到上海光源中。上海光源和新加坡光源之間的一個(gè)重要差異是控制系統(tǒng),上海光源是基于EPICS平臺(tái)開發(fā)的,而新加坡光源是基于LabVIEW的。后者相對(duì)于前者比較高效,但是局限于單一束線,通用性差,如果移植到其它光束線,工作量比較大。而EPICS是上海光源通用的控制平臺(tái),開發(fā)基于EPICS的光束線調(diào)束優(yōu)化軟件,可以方便地移植到其它光束線,乃至其它基于EPICS的同步輻射光源。
本文在上海光源衍射線站(BL14B1)現(xiàn)有設(shè)備和軟硬件基礎(chǔ)上,開展了基于EPICS控制平臺(tái)的同步輻射光束線智能調(diào)束系統(tǒng)的初步探索?;谒阉鳈C(jī)制的差分進(jìn)化算法非常適合應(yīng)用在隨機(jī)變化的光源點(diǎn)、難以用數(shù)學(xué)公式建模的光束線調(diào)束優(yōu)化過程中。系統(tǒng)在BL14B1測(cè)試成功,并達(dá)到預(yù)期目標(biāo)。
Storn和Price[7]于1995 年提出的差分進(jìn)化算法(Differential Evolution,DE)是一種基于群體差異的啟發(fā)式并行搜索方法,算法中種群的每一個(gè)個(gè)體對(duì)應(yīng)一個(gè)多元函數(shù)的解向量,其進(jìn)化流程與遺傳等算法類似,包括變異、交叉、選擇等操作。與其它進(jìn)化算法相比,DE具有執(zhí)行簡(jiǎn)單、收斂速度快、搜索性能好等優(yōu)點(diǎn),因此被認(rèn)為是一種最高效的進(jìn)化算法,經(jīng)常用來解決約束優(yōu)化問題[8],并廣泛應(yīng)用于數(shù)據(jù)挖掘、模式識(shí)別、數(shù)字濾波器設(shè)計(jì)、人工神經(jīng)網(wǎng)絡(luò)、電磁學(xué)等各個(gè)領(lǐng)域。
DE算法中每代種群均包含n個(gè)個(gè)體,每個(gè)個(gè)體可以用d維解向量表示,如式(1):
式中:n表示種群規(guī)模即每代種群的個(gè)體數(shù)量;g表示從初代種群(g=0)進(jìn)化到當(dāng)前種群的代數(shù)。
1.2.1 初代種群
初代種群的n個(gè)個(gè)體從給定的約束條件范圍內(nèi)隨機(jī)選取。假設(shè)個(gè)體中第j個(gè)維度的上限值和下限值分別為和,初代種群第i個(gè)個(gè)體中的第j個(gè)維度初始值由式(2)產(chǎn)生:
其中:i={1,2,…,n},j={1,2,…,d},rand[0,1]表示在[0,1]的范圍內(nèi)取一個(gè)隨機(jī)數(shù)。
DE中衡量個(gè)體好壞的標(biāo)準(zhǔn)稱為適應(yīng)度(Fitness)。若這一代中有符合要求的個(gè)體,則算法結(jié)束,輸出結(jié)果;若沒有符合要求的個(gè)體,則對(duì)種群進(jìn)行差分變異、交叉、選擇操作,再對(duì)它們的適應(yīng)度進(jìn)行評(píng)估,生成下一代種群。
1.2.2 差分變異算法
對(duì)第g代的個(gè)體Pi(g),應(yīng)用式(3)生成變異個(gè)體Vi(g):
其中:Pn1(g),Pn2(g),Pn3(g)為從種群中隨機(jī)選擇的3個(gè)個(gè)體,n1≠n2≠n3≠i;F是縮放因子,個(gè)體的加減運(yùn)算為個(gè)體中對(duì)應(yīng)維度分別進(jìn)行加減運(yùn)算。
1.2.3 交叉算法
將變異個(gè)體Vi(g)與初始個(gè)體Pi(g)根據(jù)一定概率進(jìn)行維度混合,生成試驗(yàn)個(gè)體Ui(g)。交叉過程可以表示為式(4):
其中:cr表示交叉概率;Vi,j(g)、Pi,j(g)、Ui,j(g)分別表示個(gè)體Vi(g)、Pi(g)、Ui(g)的第j個(gè)維度值。
1.2.4 選擇策略
DE采用“貪婪”的選擇策略,經(jīng)過變異和交叉后生成的試驗(yàn)個(gè)體Ui(g)和初始個(gè)體Pi(g)進(jìn)行適應(yīng)度比較。只用當(dāng)試驗(yàn)個(gè)體Ui(g)的適應(yīng)度更優(yōu)時(shí)才被選作子代,否則Pi(g)將直接作為子代。選擇操作的過程如式(5)所示:
系統(tǒng)硬件結(jié)構(gòu)如圖1所示,包括控制和數(shù)據(jù)采集兩部分??刂撇糠植捎蒙虾9庠垂馐€站上標(biāo)準(zhǔn)的基于VME總線的MAXv-8000控制器和自行研制的步進(jìn)電機(jī)驅(qū)動(dòng)器[7],數(shù)據(jù)采集部分通過ORTEC974計(jì)數(shù)器讀取電離室探測(cè)到的同步光通量[8]。
圖1 系統(tǒng)硬件結(jié)構(gòu)圖Fig.1 Hardware architecture of the system
光束線調(diào)束的目標(biāo)是通過優(yōu)化電機(jī)運(yùn)動(dòng)位置,以在樣品位置獲得最大光通量。對(duì)應(yīng)于差分進(jìn)化算法的原理,可以將該目標(biāo)抽象歸納為:在特定的約束空間內(nèi),根據(jù)適應(yīng)度的值搜索多元函數(shù)的最優(yōu)解。為此,建立的光束線智能優(yōu)化模型如下:
1)個(gè)體:即同一時(shí)刻所有電機(jī)在各自某一位置的組合,表示為式(6):
其中:Mi,j為個(gè)體Mi第 j個(gè)步進(jìn)電機(jī)的位置值;d為被優(yōu)化電機(jī)的數(shù)量;1≤i≤n,n為設(shè)定的種群規(guī)模。
2)搜索空間:設(shè)定的電機(jī)運(yùn)動(dòng)范圍。
3)適應(yīng)度:電離室信號(hào)IC。
評(píng)估個(gè)體適應(yīng)度即命令所有電機(jī)運(yùn)動(dòng)到某一位置,然后讀取電離室信號(hào),通過差分變異、交叉、選擇后,將每一代適應(yīng)度高(即電離室讀數(shù)高)的個(gè)體傳遞下去。
上海光源光束線站運(yùn)動(dòng)控制采用EPICS軟件包中的Motor模塊[10],主要包括Motor記錄及相關(guān)程序。一個(gè)Motor記錄對(duì)應(yīng)一個(gè)電機(jī)實(shí)體,記錄中的每個(gè)域和電機(jī)屬性一一對(duì)應(yīng),其中域VAL為命令電機(jī)運(yùn)動(dòng)的位置值,域RBV返回電機(jī)當(dāng)前位置[11]。
應(yīng)用LabVIEW實(shí)現(xiàn)差分進(jìn)化算法、人機(jī)操作界面,通過CaLab接口與EPICS連接,控制EPICS下電機(jī)的運(yùn)動(dòng)和讀取電機(jī)當(dāng)前位置。程序采用RS232串口通信協(xié)議通過ORTEC974獲取電離室的實(shí)時(shí)讀數(shù),程序結(jié)構(gòu)如圖2所示。
程序開始后,根據(jù)輸入的電機(jī)參數(shù)隨機(jī)生成初始種群,控制所有電機(jī)運(yùn)動(dòng)至種群中第一個(gè)個(gè)體所設(shè)定的位置,讀取電離室信號(hào),進(jìn)行評(píng)估,再對(duì)下一個(gè)個(gè)體執(zhí)行相同操作,直到初始種群中的全部個(gè)體都評(píng)估完成。若達(dá)到終止條件,則停止優(yōu)化,反之,則進(jìn)行差分變異、交叉、選擇等操作后,得到下一代種群。圖3為優(yōu)化程序的流程圖。
圖2 智能優(yōu)化系統(tǒng)結(jié)構(gòu)圖Fig.2 Structure diagram of intelligent optimization system
圖3 光束線智能優(yōu)化程序流程圖Fig.3 Flowchart of beamline intelligent optimization program
表1 被優(yōu)化光學(xué)設(shè)備、電機(jī)及相應(yīng)的功能Table 1 Optical devices to be optimized,their motors and functions
本系統(tǒng)在上海光源X射線衍射線站進(jìn)行了在線測(cè)試,該線站主要用于材料科學(xué)、凝聚態(tài)物理等學(xué)科的研究,以多晶粉末、薄膜/超薄膜的表面和界面、納米材料的微結(jié)構(gòu)等為主要研究對(duì)象[12],實(shí)驗(yàn)樣品以及衍射儀探測(cè)器的特殊性要求樣品處同步光必須具有通量高、光斑位置穩(wěn)定以及光斑形狀好。
衍射線站包含三個(gè)關(guān)鍵設(shè)備:在垂直方向?qū)Π坠膺M(jìn)行準(zhǔn)直、水平方向進(jìn)行聚焦的前置準(zhǔn)直鏡M1;白光單色化的雙平晶水冷單色器DCM;垂直方向?qū)紊膺M(jìn)行聚焦的后置聚焦鏡M2。布局如圖4所示。
圖4 上海光源X射線衍射線站布局示意圖Fig.4 Layout of optical devices in SSRF-XRD beamline
在線測(cè)試選擇雙晶單色器DCM、后置聚焦鏡M2為被優(yōu)化設(shè)備,設(shè)備上的電機(jī)和對(duì)應(yīng)的功能如表1所示。通過調(diào)節(jié)單色器電機(jī)的運(yùn)動(dòng),確保其內(nèi)部?jī)蓧K晶體保持平行、高差固定以及第一晶體的衍射光全部入射到第二晶體,這樣從單色器出射的單色光具有最大通量[13]。
光束線調(diào)束優(yōu)化時(shí)間與運(yùn)動(dòng)控制器響應(yīng)速度、電離室響應(yīng)速度、系統(tǒng)反饋過程、電機(jī)精確定位速度等密切相關(guān)。在相同的控制和數(shù)據(jù)采集系統(tǒng)下,根據(jù)電離室讀數(shù)進(jìn)行判斷,采取下一步操作的反饋過程占據(jù)了人工調(diào)束的大部分時(shí)間。本系統(tǒng)的反饋過程由程序自動(dòng)實(shí)現(xiàn),所需時(shí)間相對(duì)較少,其主要時(shí)間與電機(jī)是否能快速運(yùn)動(dòng)到位有很大關(guān)系,這涉及到光束線設(shè)備性能的一個(gè)重要指標(biāo)——電機(jī)運(yùn)動(dòng)的重復(fù)性。
運(yùn)動(dòng)機(jī)構(gòu)的機(jī)械設(shè)計(jì)、加工和安裝工藝、負(fù)載大小等都會(huì)影響電機(jī)運(yùn)動(dòng)的重復(fù)性。圖5和圖6分別是M2的三個(gè)電機(jī)和單色器的四個(gè)電機(jī)重復(fù)性測(cè)試得到的結(jié)果??梢钥闯?,M2的三個(gè)電機(jī)以及單色器的Roll1電機(jī)幾乎沒有回程差,重復(fù)性好。單色器的T2、Y2、Yaw2電機(jī)有一定回程差,重復(fù)性相對(duì)稍差。
進(jìn)行了三次在線測(cè)試,每次都在前一次測(cè)試成功的基礎(chǔ)上逐漸加入更多電機(jī)。
測(cè)試結(jié)果列于表2和圖7中,圖7對(duì)電離室信號(hào)進(jìn)行了歸一化處理。測(cè)試結(jié)果表明:1)系統(tǒng)都趨于收斂,找到最優(yōu)解,表明將差分進(jìn)化算法應(yīng)用于光束線調(diào)束系統(tǒng)是切實(shí)可行的;2)優(yōu)化電機(jī)越多,收斂速度變慢,所需的遺傳代數(shù)增加,花費(fèi)時(shí)間增大,但可以接受;3)加入單色器電機(jī)后,優(yōu)化程序在10代以后才能找到較為優(yōu)秀的個(gè)體。這是因?yàn)槿肷涞诫婋x室的光斑較小,且穩(wěn)定性受單色器狀態(tài)影響較大,單色器的微小抖動(dòng)即可導(dǎo)致光斑消失,因此加入單色器電機(jī)后,由于單色器電機(jī)重復(fù)性相較于M2來說稍差,一些優(yōu)秀個(gè)體傳遞到下一代時(shí)失效,另外,優(yōu)化參數(shù)增加導(dǎo)致搜索空間指數(shù)增加,這些因素勢(shì)必導(dǎo)致優(yōu)化速度變慢,但是經(jīng)測(cè)試,耗時(shí)仍在可接受范圍,約30 min。
圖5 M2電機(jī)的重復(fù)性Fig.5 Motion repeatability of M2 motors
圖6DCM電機(jī)的重復(fù)性Fig.6 Motion repeatability of DCM motors
表2 測(cè)試條件及結(jié)果Table 2 Test conditions and results of the experiment
圖7 優(yōu)化3、5、7個(gè)電機(jī)的適應(yīng)度-代數(shù)關(guān)系Fig.7 Normalized fitness versus generationfor optimizing 3,5,7 motors
本文應(yīng)用差分進(jìn)化算法在上海光源衍射線站實(shí)現(xiàn)了智能優(yōu)化調(diào)束系統(tǒng),利用LabVIEW設(shè)計(jì)人機(jī)交互界面、獲取電離室信號(hào)、執(zhí)行差分進(jìn)化算法、發(fā)送控制命令等系列功能。測(cè)試結(jié)果表明:系統(tǒng)可以在設(shè)定范圍內(nèi)自動(dòng)搜索,準(zhǔn)確找到并收斂于最優(yōu)解,調(diào)束優(yōu)化過程約在30 min內(nèi)完成。
光束線智能調(diào)束系統(tǒng)執(zhí)行效率與很多環(huán)節(jié)有關(guān),如算法實(shí)現(xiàn)的軟硬件性能、運(yùn)動(dòng)控制器的響應(yīng)速度、電機(jī)的響應(yīng)速度和精確定位以及電離室的響應(yīng)速度等。提高每個(gè)環(huán)節(jié)的性能是提高整個(gè)系統(tǒng)執(zhí)行效率的基礎(chǔ),因此上海光源光束線的調(diào)束優(yōu)化效率還有較大的提升空間。本文工作為上海光源實(shí)現(xiàn)光束線快速優(yōu)化調(diào)束系統(tǒng)提供了可行方案,對(duì)其他同步輻射光源具有參考和借鑒價(jià)值。