一種農(nóng)產(chǎn)品信息采集系統(tǒng)中節(jié)點缺失數(shù)據(jù)的估算方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及農(nóng)業(yè)信息工程領(lǐng)域,尤其涉及一種農(nóng)產(chǎn)品信息采集系統(tǒng)中節(jié)點缺失數(shù) 據(jù)的估算方法。
【背景技術(shù)】
[0002] 在農(nóng)業(yè)信息工程領(lǐng)域,數(shù)據(jù)的自動采集是后續(xù)數(shù)據(jù)瀏覽分析、環(huán)境智能化控制的 基礎(chǔ),在農(nóng)產(chǎn)品的生產(chǎn)、貯藏、質(zhì)量安全追溯系統(tǒng)中均有廣泛應(yīng)用。目前農(nóng)業(yè)數(shù)據(jù)自動采集 系統(tǒng)的通用方案多基于無線傳感器網(wǎng)絡(luò)技術(shù),整個系統(tǒng)由一個設(shè)置于遠端的控制中心和設(shè) 置于監(jiān)控現(xiàn)場的大量傳感器節(jié)點組成。系統(tǒng)中控制中心對所有節(jié)點進行統(tǒng)一管理和控制; 傳感器節(jié)點完成數(shù)據(jù)采集的任務(wù),所有采集到的數(shù)據(jù)均發(fā)送到控制中心。
[0003] 無線傳感器網(wǎng)絡(luò)的基本構(gòu)成部件是大量傳感器節(jié)點,節(jié)點通過分層的網(wǎng)絡(luò)通信協(xié) 議和分布式算法形成一個自組織網(wǎng)絡(luò)系統(tǒng),每個節(jié)點不斷收集監(jiān)控區(qū)域內(nèi)各種客觀物理量 的變化,如溫度、濕度、二氧化碳和乙烯的氣體濃度等。雖然這一技術(shù)的優(yōu)越性能使其在農(nóng) 業(yè)生產(chǎn)等很多領(lǐng)域具有應(yīng)用價值,如作物生長監(jiān)控、牧場管理、土壤監(jiān)測分析等諸多方面, 但在使用過程中要求數(shù)量眾多的所有節(jié)點都能長期穩(wěn)定地工作并不現(xiàn)實,任何一個節(jié)點都 可能發(fā)生故障而無法采集數(shù)據(jù)并傳送給控制中心,因而控制中心的數(shù)據(jù)庫中數(shù)據(jù)缺失是不 可避免的??刂浦行膶τ谌笔?shù)據(jù)的處理目前一般使用下述兩種方法之一:其一,用故障發(fā) 生前最近的數(shù)據(jù)進行補充,但是隨著時間的推移被檢測物理量會發(fā)生變化,用這種方法補 充的數(shù)據(jù)將產(chǎn)生較大偏差;其二,控制中心不補充數(shù)據(jù)而只標明該數(shù)據(jù)缺失,但數(shù)據(jù)缺失會 對后續(xù)分析與處理造成非常大的困難。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明要解決的技術(shù)問題在于針對現(xiàn)有技術(shù)中的缺陷,提供一種農(nóng)產(chǎn)品信息采集 系統(tǒng)中節(jié)點缺失數(shù)據(jù)的估算方法,該方法通過建立數(shù)學(xué)模型就可以根據(jù)鄰近節(jié)點的采集 值計算出缺失數(shù)據(jù)。
[0005] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:一種農(nóng)產(chǎn)品信息采集系統(tǒng)中節(jié)點缺 失數(shù)據(jù)的估算方法,包括以下步驟:
[0006]1)數(shù)據(jù)采集:接收到所有節(jié)點采集的數(shù)據(jù),設(shè)在一時間段內(nèi)得到M組數(shù)據(jù),X1代表 第i個節(jié)點在某時刻采集到的數(shù)據(jù);
[0007] 2)確定N個建模節(jié)點:為某一節(jié)點p建立模型,選取該節(jié)點p的N個鄰近節(jié)點作 為建模節(jié)點;其中節(jié)點P為被建模節(jié)點;
[0008] 3)建立模型,該模型通過N個建模節(jié)點的采樣值估算出被建模節(jié)點的采樣值:設(shè) 時刻t某節(jié)點的N個建模節(jié)點采樣值分別為xtl,xt2,…,xtN,各采樣值的線性組合系數(shù)分別 為c。,C1,C2,…,cN,則時刻t被建模節(jié)點的估算值e可用下述線性組合表示:
[0009] e= Co+CiXu+qx^+CAu+…+cNxtN;
[0010] 則建立模型如下:E=XC;
[0012]
[0013] 4)獲得模型的系數(shù)矩陣C,C= (XtX) 1XtE;
[0014] 5)重復(fù)步驟2)至步驟4),依次對信息采集系統(tǒng)中每一個節(jié)點建模,并計算得到的 每一個節(jié)點模型的系數(shù)矩陣;
[0015] 6)若某個節(jié)點數(shù)據(jù)缺失,代入該節(jié)點的模型估算出缺失數(shù)據(jù)。
[0016] 按上述方案,所述步驟2)中確定N個建模節(jié)點的方法具體如下:選取該節(jié)點的2N 個鄰近節(jié)點,計算2N個鄰近節(jié)點與被建模節(jié)點的局部Moran指數(shù)并按照該指數(shù)大小排序, 之后選取前N個相關(guān)性大的作為建模節(jié)點。
[0017] 按上述方案,所述步驟6)中節(jié)點數(shù)據(jù)缺失的判定方法如下:若節(jié)點為智能節(jié)點, 則節(jié)點能判斷是否處于故障狀態(tài);若節(jié)點為非智能節(jié)點,則若節(jié)點采集的數(shù)據(jù)超出量程范 圍、超出合理的極限值或數(shù)據(jù)突然產(chǎn)生大幅度變化,則判定為節(jié)點數(shù)據(jù)缺失。
[0018] 按上述方案,所述步驟2)中建模節(jié)點數(shù)量N的取值為4至6。
[0019] 按上述方案,所述步驟1)中M的取值為10至16。
[0020] 本發(fā)明產(chǎn)生的有益效果是:本方法克服了現(xiàn)有方法主觀性強、缺乏理論依據(jù)的不 足,利用數(shù)據(jù)的空間相關(guān)性對缺失數(shù)據(jù)的進行估算,進而用估算值補充缺失數(shù)據(jù),解決了現(xiàn) 有技術(shù)補充缺失數(shù)據(jù)時不能隨被測物理量變化而變化的問題。經(jīng)過原型實現(xiàn)和仿真測試, 證明本發(fā)明設(shè)計的方法實際可行且發(fā)揮了估算數(shù)據(jù)的功能。
[0021] 本方法算法設(shè)計原理相對簡單,易于實現(xiàn),運算量主要集中在模型建立階段,實際 運行階段計算量很小。
【附圖說明】
[0022] 下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中:
[0023] 圖1是本發(fā)明實施例的方法流程圖。
【具體實施方式】
[0024] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合實施例,對本發(fā)明 進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不用于限 定本發(fā)明。
[0025] 如圖1所示,整個過程包括模型建立和數(shù)據(jù)估算兩個階段:在模型建立階段系統(tǒng) 開始工作,每個節(jié)點采集數(shù)據(jù)并發(fā)送至控制中心,控制中心為每個節(jié)點建立一個模型;在 數(shù)據(jù)估算階段若某節(jié)點因故障無法采集數(shù)據(jù)則利用上一階段建立的模型,估算該節(jié)點的數(shù) 據(jù)。
[0026] (1)數(shù)據(jù)準備。部署所有傳感器節(jié)點并將每個節(jié)點的編號和位置坐標記錄在數(shù) 據(jù)庫中,然后啟動控制中心和所有節(jié)點開始工作,每一個傳感器節(jié)點都采集數(shù)據(jù)并將其發(fā) 送至控制中心。每經(jīng)過一個采樣時間間隔就可以得到一組數(shù)據(jù),在數(shù)據(jù)準備階段需要得到 M組數(shù)據(jù),M取值過小影響建模精度,而取值過大會使建模計算量急劇增加,其典型值可取 10-16,將這些數(shù)據(jù)存儲在控制中心的數(shù)據(jù)庫用于后續(xù)步驟為節(jié)點建模,由于這些數(shù)據(jù)在建 模完成后就可以舍棄,因而具體實現(xiàn)時也可以將數(shù)據(jù)暫存于二維數(shù)組中,使用完畢后即可 刪除以釋放內(nèi)存;
[0027] (2)確定N個建模節(jié)點。根據(jù)空間相關(guān)性理論,與某一節(jié)點關(guān)系密切的是和它鄰近 的若干節(jié)點,而其它節(jié)點相關(guān)性較弱。為了減少運算量與存儲量保證方法的實用性,本發(fā)明 采用鄰近的N個傳感器節(jié)點為被估算的節(jié)點建模,并分別稱這兩類節(jié)點為建模節(jié)點和被建 模節(jié)點,實際應(yīng)用中建模節(jié)點數(shù)量宜取4 <N< 6,若繼