柳 鑫,李晨安,張 成,陳 熙,馬小津
(合肥通用機(jī)械研究院有限公司,合肥 230031)
工作區(qū)形成比較均勻而穩(wěn)定的溫度、濕度和氣流速度等,是空調(diào)滿足生產(chǎn)工藝和人體舒適的基本要求。因此,在房間空調(diào)器的性能測(cè)試中,掌握房間內(nèi)實(shí)際溫度的分布情況非常重要。僅僅從數(shù)據(jù)集或者二維熱力圖進(jìn)行觀察,無法觀測(cè)到三維空間的整體效果,而通過原始數(shù)據(jù)生成的三維散點(diǎn)圖,由于數(shù)據(jù)量較小的原因,往往分布比較稀疏,缺乏溫度漸變過程,難以全面直觀地反映出三維空間中的實(shí)際溫度分布情況[1]。
空間插值是一種通過離散的空間數(shù)據(jù)計(jì)算未知空間數(shù)據(jù)的方法[2],它基于“地理學(xué)第一定律”的基本假設(shè):空間位置上越靠近的點(diǎn),具有相似特征值的可能性越大,而距離越遠(yuǎn)的點(diǎn),其具有相似特征值的可能性越小。該技術(shù)通常用于將離散點(diǎn)的測(cè)量數(shù)據(jù)轉(zhuǎn)換為連續(xù)數(shù)據(jù)表面,以便于比較其他空間現(xiàn)象的分布情況,目前空間插值在空間信息等方面具有廣泛的應(yīng)用場(chǎng)景[3]。
基于對(duì)上述現(xiàn)實(shí)問題的分析,本文將改進(jìn)的反距離加權(quán)插值算法與空間溫度場(chǎng)可視化技術(shù)相結(jié)合,并利用開源可視化庫(kù)ECharts對(duì)實(shí)際空調(diào)器性能測(cè)試數(shù)據(jù)進(jìn)行可視化圖表的繪制,結(jié)果表明本文方案所繪制的空間溫度場(chǎng)分布相較于原始圖表,數(shù)據(jù)分布更加稠密,幾乎沒有鋸齒,顏色過渡也更為平滑,在整體展示效果上有明顯提高,具有較高的實(shí)際應(yīng)用價(jià)值。
三維空間溫度場(chǎng)數(shù)據(jù)插值就是根據(jù)已知點(diǎn)的溫度數(shù)據(jù)ti(xi,yi,zi)內(nèi)插計(jì)算未知點(diǎn)tj(xj,yj,zj)的數(shù)據(jù)處理過程。反距離加權(quán)插值顯式假設(shè):每個(gè)測(cè)量點(diǎn)都會(huì)存在局部影響,彼此距離較近的事物要比彼此距離較遠(yuǎn)的事物更相似,因此在預(yù)測(cè)未測(cè)量點(diǎn)的值時(shí),距離其越近的測(cè)量點(diǎn)影響越大。由于這種方法為距離預(yù)測(cè)位置最近的點(diǎn)分配的權(quán)重較大,而權(quán)重卻作為距離的函數(shù),隨著距離增大而減小,因此稱為反距離加權(quán)法[4],其一般形式如下:
式中:tj為第j個(gè)待插數(shù)據(jù)點(diǎn)的溫度估值;ti為第i個(gè)位置在(xi,yi,zi)的已知數(shù)據(jù)點(diǎn)的溫度值;n 為已知數(shù)據(jù)點(diǎn)個(gè)數(shù);λi即為ti對(duì)應(yīng)的權(quán)重。顯然,一般應(yīng)該滿足下式:
由于反距離加權(quán)插值算法將已知數(shù)據(jù)點(diǎn)與預(yù)測(cè)點(diǎn)之間距離倒數(shù)的ρ次冪作為權(quán)重,故算法可具體表示如下:
式(3)中待預(yù)測(cè)數(shù)據(jù)點(diǎn)(xj,yj,zj)和已知數(shù)據(jù)點(diǎn)(xi,yi,zi)之間的歐氏距離dij由下式計(jì)算:
式(3)中ρ為距離的冪值,決定了權(quán)重的下降速度。如果ρ=0,則權(quán)重與距離無關(guān),預(yù)測(cè)溫度即為搜索鄰域內(nèi)所有數(shù)據(jù)點(diǎn)溫度值的均值。較遠(yuǎn)數(shù)據(jù)點(diǎn)的權(quán)重隨著ρ值的增大將會(huì)迅速減小,若ρ →+∞,顯然只有最鄰近的已知數(shù)據(jù)點(diǎn)會(huì)對(duì)預(yù)測(cè)產(chǎn)生影響。通常取ρ=2,此時(shí)該方法稱為反距離平方加權(quán)插值算法。
如圖1 所示,在二維平面中基于歐氏距離對(duì)分配給數(shù)據(jù)點(diǎn)的權(quán)重進(jìn)行了說明。數(shù)據(jù)點(diǎn)權(quán)重隨距離下降的示意圖如圖2所示。
圖1 數(shù)據(jù)點(diǎn)權(quán)重分配原理
圖2 權(quán)重與距離間的關(guān)系
反距離加權(quán)插值算法綜合了基于泰森多邊形的自然鄰域法和多元回歸漸變方法的優(yōu)點(diǎn),但是該方法是一種全局插值算法,每一個(gè)待插數(shù)據(jù)點(diǎn)的預(yù)測(cè)都需要所有已知數(shù)據(jù)點(diǎn)參與。除此以外,每當(dāng)新增、刪除或者對(duì)已知數(shù)據(jù)點(diǎn)進(jìn)行其他操作時(shí),權(quán)重都需要重新計(jì)算。顯然,該算法在數(shù)據(jù)量較大的情況下,性能將會(huì)急劇下降。
事實(shí)上,隨著位置之間的距離增加,測(cè)量點(diǎn)溫度與預(yù)測(cè)位置溫度之間的關(guān)系將會(huì)變得越來越不密切,為了縮短計(jì)算時(shí)間,可以將對(duì)預(yù)測(cè)位置溫度影響較小的數(shù)據(jù)點(diǎn)排除在計(jì)算過程之外[5]。因此,如何選定合適的鄰域半徑并在鄰域空間內(nèi)進(jìn)行搜索,是目前反距離加權(quán)插值算法進(jìn)行優(yōu)化的重要方向之一。
根據(jù)鄰域半徑確定球形搜索空間的示意圖如圖3 所示。
圖3 鄰域半徑確定的球形搜索空間
空間溫度場(chǎng)中的數(shù)據(jù)點(diǎn)分布位置比較均勻,常規(guī)確定鄰域半徑后再搜索球形鄰域空間的方式,對(duì)每個(gè)待測(cè)量數(shù)據(jù)點(diǎn)來說,反而可能會(huì)造成鄰域空間搜索的已知數(shù)據(jù)點(diǎn)數(shù)量差距過大的情況,某些待測(cè)數(shù)據(jù)點(diǎn)鄰域空間內(nèi)可能僅存在唯一已知數(shù)據(jù)點(diǎn),此時(shí)待測(cè)數(shù)據(jù)點(diǎn)溫度值估值顯然是不準(zhǔn)確的。
針對(duì)上述問題,結(jié)合空間溫度場(chǎng)的實(shí)際采樣數(shù)據(jù)[6-7],對(duì)所有待插值數(shù)據(jù)點(diǎn)的預(yù)測(cè)采用立方體估值法,即將整個(gè)空間溫度場(chǎng)劃分為多個(gè)以空間中兩個(gè)已知數(shù)據(jù)點(diǎn)的最短距離為邊長(zhǎng)的立方體,圍成待插值數(shù)據(jù)點(diǎn)所在立方體的8 個(gè)已知數(shù)據(jù)點(diǎn)作為參與計(jì)算的樣本,對(duì)選取的8 個(gè)已知數(shù)據(jù)點(diǎn)與待插值點(diǎn)進(jìn)行反距離加權(quán)插值計(jì)算。立方體鄰域估值法具體原理如圖4所示。
圖4 立方體鄰域估值法
采用立方體估值法,參與待預(yù)測(cè)數(shù)據(jù)點(diǎn)溫度計(jì)算的已知數(shù)據(jù)點(diǎn)可以迅速獲取,無需再進(jìn)行繁瑣的鄰域搜索,同時(shí)在同一個(gè)空間塊內(nèi)的所有待預(yù)測(cè)數(shù)據(jù)點(diǎn)均只考慮所在空間塊的8 個(gè)頂點(diǎn),即使新增、刪除或者對(duì)已知數(shù)據(jù)點(diǎn)進(jìn)行其他操作,也只對(duì)局部待測(cè)數(shù)據(jù)點(diǎn)產(chǎn)生影響,大大提高了計(jì)算效率。
Apache Echarts組件是一個(gè)基于JavaScript 的開源可視化圖表庫(kù)[8],兼容目前絕大多數(shù)瀏覽器,在各種計(jì)算機(jī)和移動(dòng)設(shè)備中均可流暢地運(yùn)行,其底層依賴矢量圖形庫(kù)ZRender,提供直觀、交互豐富并且可以進(jìn)行高度個(gè)性化定制的數(shù)據(jù)可視化圖表。
本文開發(fā)的Web應(yīng)用軟件以Apache Echarts 可視化庫(kù)中的3D散點(diǎn)圖為核心結(jié)構(gòu),采用Vue2.x前端框架,以JavaScript語言進(jìn)行開發(fā),通過對(duì)空調(diào)器性能測(cè)試實(shí)驗(yàn)室中采集的溫度分布數(shù)據(jù)集進(jìn)行處理和優(yōu)化,最終提供具有良好可視化效果的Web網(wǎng)頁(yè)。軟件具體設(shè)計(jì)開發(fā)流程如下:
(1)對(duì)txt格式的溫度分布數(shù)據(jù)集進(jìn)行預(yù)處理,以坐標(biāo)升序重新排列數(shù)據(jù)集,將其中溫度取值失敗或有誤的異常數(shù)據(jù)進(jìn)行清洗操作,輸出形如[[x,y,z,t]]的二維數(shù)組數(shù)據(jù)格式,并最終生成json格式文件;
(2)搭建基于Vue2.x的Web前端框架,引入Echarts圖表庫(kù)組件,根據(jù)實(shí)際需要編寫對(duì)應(yīng)前端展示樣式,并配置3D 散點(diǎn)圖指定參數(shù);
(3)針對(duì)定時(shí)更新的實(shí)驗(yàn)室數(shù)據(jù)以異步形式讀取json 格式數(shù)據(jù)集,根據(jù)指定間隔以坐標(biāo)升序依次遍歷待插入數(shù)據(jù)散點(diǎn);
(4)確定當(dāng)前遍歷的插值數(shù)據(jù)點(diǎn)所對(duì)應(yīng)的立方體鄰域,利用圍成該搜索鄰域的已知數(shù)據(jù)點(diǎn),通過反距離加權(quán)插值算法估算待插值數(shù)據(jù)點(diǎn)的溫度值;
(5)匯總所有已知及插值數(shù)據(jù)點(diǎn),通過Echarts組件繪制三維空間溫度分布圖。
圖5 所示為與上述設(shè)計(jì)的開發(fā)流程對(duì)應(yīng)的流程。
圖5 Web應(yīng)用軟件流程
本文介紹的Web應(yīng)用軟件,其開發(fā)及展示過程采用VSCode開發(fā)工具,硬件運(yùn)行環(huán)境為i5-1135G7 CPU;16GB RAM;Nvidia MX450 2G。
反距離加權(quán)插值算法在觀察點(diǎn)數(shù)據(jù)集均勻分布且相對(duì)密集以反映局部差異的應(yīng)用場(chǎng)景中有更好的效果,其要求與空間溫度場(chǎng)實(shí)際數(shù)據(jù)集較為契合[9-10]。本文以兩份空調(diào)性能測(cè)試過程中的隨機(jī)實(shí)際空間溫度場(chǎng)分布數(shù)據(jù)進(jìn)行應(yīng)用效果展示,具體效果如圖6 所示。
圖6 空間溫度場(chǎng)插值效果
觀察圖6 可以發(fā)現(xiàn),相同房間內(nèi)的a 和b 利用散點(diǎn)數(shù)據(jù)基本確定了三維空間的溫度分布情況,數(shù)據(jù)點(diǎn)整體分布比較均勻,以線或面的角度看來也較為密集,然而同一線或面以外數(shù)據(jù)散點(diǎn)之間間隔較大,鋸齒明顯,溫度的平滑漸變基本不存在,無法看到空間內(nèi)溫度的整體變化效果。利用這樣的散點(diǎn)圖顯然無法正確且精確地評(píng)測(cè)空調(diào)的性能狀況。
圖6 中,a和b 經(jīng)過反距離加權(quán)插值算法的優(yōu)化,最終形成A和B所示效果,可以發(fā)現(xiàn)已知溫度點(diǎn)之間的間隙已經(jīng)被插值數(shù)據(jù)點(diǎn)填補(bǔ),基本無鋸齒,溫度漸變情況可以非常直觀地進(jìn)行觀察,空間內(nèi)溫度的整體情況一目了然,其插值效率如表1所示。由表可知,本文采用的反距離加權(quán)插值算法及其鄰域搜索方案,耗時(shí)較少,相對(duì)于繪圖渲染的耗時(shí)并不明顯,因此在空間溫度場(chǎng)可視化實(shí)際應(yīng)用中也有較高的效率,具有一定的應(yīng)用價(jià)值。
表1 空間溫度場(chǎng)插值效率
空間溫度場(chǎng)的可視化是空調(diào)器性能測(cè)試的重要研究?jī)?nèi)容,但是受采樣數(shù)據(jù)集本身的限制,直接進(jìn)行繪圖渲染往往效果較差,難以直觀反映空間溫度場(chǎng)的實(shí)際分布情況,因此對(duì)于測(cè)評(píng)空調(diào)器性能的幫助比較有限。針對(duì)上述問題,本文提出了一種將反距離加權(quán)插值算法應(yīng)用于空間溫度場(chǎng)可視化應(yīng)用的方案,大大優(yōu)化了溫度數(shù)據(jù)的可視化效果,同時(shí)在采用本文提出的鄰域搜索方法后,插值耗時(shí)所造成的性能影響也并不明顯。綜上所述,本文提出的反距離加權(quán)插值算法在空間溫度場(chǎng)可視化中的應(yīng)用,對(duì)空調(diào)器性能測(cè)試具有一定的實(shí)際應(yīng)用價(jià)值,目前基于本方案的應(yīng)用軟件已逐步投入使用當(dāng)中。