cột nhƣ Bảng 3.4.
Tập dữ liệu để x lý theo tham số Pj 1 ≤ j ≤ m) gồm các phần t ở cột j
và tập dữ liệu để x lý các tham số Pj theo nút cảm biến Si 1 ≤ i ≤ n ) là các phần t ở hàng thứ i. Tổng quát, sau khung truyền Fk (với 1 ≤ k ≤ q), CH sẽ nhận đƣợc bảng dữ liệu n hàng, m cột chứa dữ liệu đo m tham số của n nút cảm biến, mỗi khung truyền sẽ có một bảng. Mỗi phần t trong bảng là giá trị
Bảng 3.4. Dữ liệu CH nhận của khung truyền F1 khung truyền F1 Bảng 3.5. Dữ liệu CH nhận của khung truyền Fk F1-S1-P1 F1-S1-P2 ... F1-S1-Pm Fk-S1-P1 Fk-S1-P2 ... Fk-S1-Pm F1-S2-P1 F1-S2-P2 ... F1-S2-Pm Fk-S2-P1 Fk-S2-P2 ... Fk-S2-Pm ... ... ... ... ... ... ... ... F1-Sn-P1 F1-Sn-P2 ... F1-Sn-Pm Fk-Sn-P1 Fk-Sn-P2 ... Fk-Sn-Pm
đo tham số Pj của nút cảm biến Si, đƣợc truyền đến CH ở khung truyền Fk
trong chu kỳ truyền T, bảng dữ liệu tổng quát nhƣ ảng 3.5.
Với phƣơng pháp x lý này, sau khi nhận hết dữ liệu truyền của 1 frame, CH sẽ x lý với dữ liệu của nút và tham số tƣơng ứng trƣớc đó, t ch lũy ết quả này để s dụng khi nhận hết 1 frame liền sau đó. Gọi Fk' là kết quả đóng gói sau khi CH nhận hết frame Fk hi đó Fk' = Combine (Fk, Fk-1) (CT 3.19)
Fk' có thể đƣợc xem là một ma trận cỡ (n x m) là sự kết hợp t ch lũy của 2 ma trận cùng cỡ của Fk và Fk-1. Các phần t của Fk' có giá trị là: Fk'-Si-Pj
(Với 1 ≤ k ≤ q, 1 ≤ i ≤ n, 1 ≤ j ≤ m) (CT 3.20)
Nhƣ vậy, nếu đóng gói th o hung tin thì Fk' sẽ là tập dữ liệu đầu vào để CH đóng gói và áp ụng giải pháp tiền x lý. Kết thúc vòng (T) khi k = q, lúc này CH nhận hết dữ liệu của q khung tin của vòng.
Trường hợp đ t chu kỳ/vòng (T):
Tƣơng tự cách diễn giải ở trên, với hình thức này, CH sẽ nhận và lƣu đủ dữ liệu của q khung tin mới tiến hành đóng gói. Gọi Fblock là dữ kiện đầu vào để áp dụng giải pháp tiền x lý, Fblock bao gồm q ma trận cỡ (n x m).
Sau khi kết thúc quá trình đóng gói ữ liệu của n nút cảm biến trong cụm g i về CH, xây dựng thuộc tính ngữ nghĩa, hệ thống hóa dữ liệu cảm biến, các giá trị ngữ nghĩa đƣợc định lƣợng bằng các giá trị đo và đƣa vào ảng dữ liệu, bảng này đƣợc xem là một hệ thống thông tin [64] của cụm (có n nút cảm biến) ký hiệu IS là một bảng dữ liệu gồm n hàng, m cột - mỗi cột là một thuộc tính, IS đƣợc biểu diễn bởi 4 yếu tố [64]: IS = <U, Q, V, f> (CT 3.20) Trong đó, U là tập hữu hạn n nút cảm biến; Q là tập hữu hạn các thuộc tính; V là tập giá trị của tập thuộc tính; f là giá trị một thuộc tính của một nút cảm biến tƣơng ứng. Hệ thống thông tin IS tổng quát tại thời điểm bắt đầu tiền x lý ở Bảng 3.6. Gọi f (Si, Aj) là các giá trị f của nút cảm biến Si tại thuộc tính Aj 1 ≤ i ≤ n, 1 ≤ j ≤ m), f (Si, Aj) = VSiAj. Số mức giá trị l của mỗi thuộc
tính Aj có thể khác nhau (xem Bảng 3.7) tùy vào phƣơng pháp định lƣợng hóa sao cho đảm bảo độ mịn và tiệm cận với các mức đo của nhà sản xuất sensor.
3.2.1. G ả p áp DP-DF
3.2.1.1. Quy trình xử lý dữ liệu
Sau hi CH đóng gói ữ liệu cảm biến theo khung tin hoặc theo chu kỳ, CH sẽ s dụng dữ kiện này làm đầu vào để áp dụng giải pháp tiền x lý. Tƣơng tự kỹ thuật tiền x lý trong khai phá dữ liệu (data mining) [66], giai đoạn tiền x lý tại nút CH gồm các công đoạn và thứ tự x l nhƣ ở Hình 3.4.
Hình 3.4. Quá trình tiền x lý dữ liệu cảm biến tại nút CH của DP-DF - Xây dựng thuộc tính (attribute/feature construction): Là các thuộc tính ngữ nghĩa của nút cảm biến và ngữ nghĩa của dữ liệu cảm nhận. Thuộc tính là
ảng 3.6. IS tại thời điểm ắt đầu tiền x l
ảng 3.7. Giá trị của các thuộc t nh Aj
U Q (tập thu c tính) V Q (tập thu c tính)
A1 A2 ... Am A1 A2 ... Am
S1 VA1.S1 VA2.S1 ... VAm.S1 X1 X1.A1 X1.A2 ... X1.Am
S2 VA1.S2 VA2.S2 ... VAm.S2 X2 X2.A1 X2.A2 ... X2.Am
S2 VA1.S2 VA2.S2 ... VAm.S2 .... ... ... ... ...
.... ... ... ... ...
Xl
Xl.A1 ... ... ... ... ... Xl.Am
Sn VA1.Sn VA2.Sn ... VAm.Sn Xl.A2 ...
Đóng gói dữ liệu cảm biến X lý dữ liệu bị thiếu, yếu (nhiễu) X lý dữ liệu ƣ thừa Theo khung Xây dựng thuộc tính, hệ thống hóa dữ liệu Theo chu kỳ Xác suất Lý thuyết tập thô Tiếp nhận dữ liệu S1 S2 Sn Dữ liệu đã chu n hóa
- Hệ thống hóa dữ liệu: là quá trình nhận diện đặc điểm chung của dữ liệu cảm biến và sự hiện diện của dữ liệu nhiễu, dữ liệu thiếu hoặc các phần t kì dị (outliers) khi nút cảm biến đo lƣờng; định lƣợng hóa thành giá trị để đƣa vào bảng dữ liệu gồm n hàng, m cột tƣơng ứng với n nút cảm biến của cụm và
m thuộc tính của mỗi nút cảm biến.
- Các công đoạn xử lý dữ liệu bị thiếu (missing data), xử lý dữ liệu bị nhiễu (noisy data), xử lý dữ liệu dư thừa (redundancy) nhằm tạo lập bộ dữ liệu đầu vào tốt nhất để CH tổng hợp dữ liệu sẽ đƣợc trình bày cụ thể ở các phần tiếp theo.
3.2.1.2. Xử lý dữ liệu bị mất (thiếu)
Dữ liệu thu thập đƣợc từ các nút cảm biến khi truyền đến CH có thể hông đầy đủ, nghĩa là CH hông nhận đủ dữ liệu đo về một hoặc nhiều tham số đo từ một hoặc nhiều nút trong nhóm g i về để làm dữ kiện cho quá trình DF. Tình huống để mất dữ liệu có thể là: Lúc cần cảm nhận hoặc truyền dữ liệu đến đ ch thì nút cảm biến đang trạng thái ngủ, lúc đang truyền dữ liệu đến CH thì nút cảm biến hết năng lƣợng…
Ví dụ, mạng cảm biến nêu ở Mục 3.1.3.1 với tập Q gồm các thuộc tính điều kiện, Q ={A1, A2, A3, A4}, mỗi thuộc tính là một tập con có 8 phần t (là số nút mạng), mỗi phần t là một giá trị trong miền giá trị có thể của thuộc t nh đó. Có thể thiếu (mất) một hoặc nhiều giá trị, giá trị này có thể là giá trị để định lƣợng độ đo của thuộc t nh điều kiện (nhƣ năng lƣợng, khoảng cách, số gói tin, nhiễu...), có thể là giá trị đo của nút cảm biến về mục tiêu (nhƣ độ m, nhiệt độ, tốc độ gió...).
Dữ liệu bị thiếu có thể là toàn bộ kết quả đo mà nút cảm biến ghi nhận từ mục tiêu trong cả chu kỳ T hoặc trong 1 khung tin Fk hoặc 1 phần của khung tin (là 1 hoặc nhiều tham số Pj nào đó trong Fk nào đó) hoặc tất cả các yếu tố trên. Không mất tính tổng quát, có thể xem tại thời điểm CH đóng gói xong
để tiền x lý, dữ liệu đo của nút cảm biến Si 1 ≤ i ≤ n) với tham số đo Aj 1 ≤ j ≤ m) bị thiếu, ký hiệu f (Si, Aj) = (CT 3.21) Mạng cảm biến không dây s dụng giao thức IEEE 802.15.4 sẽ điều khiển việc lấy dữ liệu theo chu kỳ thức-ngủ (active-sleep) nên dữ liệu CH thu đƣợc từ nút cảm biến có tính rời rạc, f (Si, Aj) có thể đƣợc tính thông qua xác suất, các giá trị có tính ngẫu nhiên trong miền giá trị đo Xl của thuộc tính Aj. Áp dụng Entropy Shannon [24 để tính xác suất xuất hiện của l khả năng (giá trị) của thuộc tính Aj tƣơng ứng. Gọi Pr (Xt) là xác suất xuất hiện giá trị Xt (1 ≤ t ≤ l) của thuộc tính Aj, Entropy Shannon (ES) của tập U nút cảm iến đối với Aj đƣợc t nh nhƣ sau:
( ) ∑ ( ) ( ) (CT 3.22) Gán f (Si, Aj). = Xt nếu Pr(Xt) = Max Pr(Xt) (CT 3.23) Trong đó f (Si, Aj). là dữ liệu đo ị thiếu của nút Si về thuộc tính Aj,
Max Pr(Xt) là giá trị Xt mà khả năng f (Si, Aj) nhận đƣợc nhất. Biến ngẫu nhiên
Xt có thể nhận 1 trong l mức giá trị đo với xác suất trong khoảng 1/l ≤ Xt ≤ 1.
Giả thiết các xác suất Pr(Xt) đã iết, đ y là một hƣớng sẽ đƣợc nghiên cứu trong tƣơng lai. Thuộc tính Aj có thể xem là biến ngẫu nhiên với xác suất luôn bằng 1vì việc tính xác suất này biến Aj là biến cố đã xác định trƣớc.
3.2.1.3. Xử lý dữ liệu nhiễu (yếu)
Do các nút cảm biến truyền dữ liệu bằng sóng vô tuyến đến CH nên tín hiệu bị yếu (về cƣờng độ) bởi các yếu tố gây nhiễu ở trong môi trƣờng. Trong nghiên cứu này, giả s đã phát hiện đƣợc nhiễu, tức là đã xác định đƣợc kết quả đo thuộc tính Aj của nút cảm biến Si đã ị nhiễu, cần phải x lý.
Gọi là ngƣỡng ƣới giá trị đo của thuộc tính Aj 1 ≤ j ≤ m). Dữ liệu đo của Si gọi là nhiễu (yếu) nếu f(Si, Aj) ≤ . Gọi f noisy (Si, Aj) là giá trị nhiễu của
( )
( ) (CT 3.24)
Nếu f noisy (Si, Aj) có Pf noisy (Si, Aj) ≥ 0.5 thì khả năng f noisy (Si, Aj) là tín hiệu bị nhiễu (lúc này có thể xem là nhiễu thật vì xác suất xảy ra khá cao), ngƣợc lại có thể xem f noisy (Si, Aj) là không bị nhiễu. Giả s giá trị nhiễu f noisy (Si, Aj) sau hi đã x lý là f fix (Si, Aj) với X1.Aj ≤ f fix (Si, Aj) ≤ Xl.Aj trong đó
[X1.Aj , Xl.Aj] là khoảng giá trị mà thuộc tính Aj có thể nhận đƣợc. Để đảm bảo tính toàn vẹn (completeness) của dữ liệu cảm nhận và giảm nguy cơ sai số t ch lũy hi s dụng dữ liệu này làm đầu vào quá trình tổng hợp, giải pháp này đề xuất mối quan hệ: f fix (Si, Aj) = f noisy (Si, Aj)/2 < (CT 3.25)
Với là giá trị ngƣỡng, tùy theo từng thuộc t nh để lựa chọn giá trị phù hợp và sai số δ tƣơng ứng. Thí dụ có thể t nh ngƣỡng này bằng cách lấy trung bình cộng của l mức giá trị đo thành phần của thuộc t nh tƣơng ứng trong điều kiện tiêu chu n thiết kế, ví dụ ngƣỡng giá trị của thuộc tính Aj là
l X l t Aj t / 1
3.2.1.4. Thu t toán xử lý dữ liệu bị mất và dữ liệu bị nhiễu
Thuật toán gồm 02 nhiệm vụ là x lý dữ liệu bị mất và dữ liệu bị nhiễu. tƣởng chủ đạo thuật toán x lý dữ liệu bị mất là gán 1 trong l giá trị đo đƣợc (và tối thiểu bằng ngƣỡng ƣới) về tham số đo lƣờng đó, nếu ƣới ngƣỡng thì xem giá trị đó bị nhiễu để tiếp tục x lý ở ƣớc sau. Nếu xác định dữ liệu đó có hả năng là nhiễu thật (khả năng xảy ra trên mức trung bình) thì giảm giá trị nhiễu đó xuống 1/2 để giảm sai số t ch lũy (sai số ở ƣớc này có thể kéo theo sai số ƣớc sau nhƣ x l ƣ thừa, tổng hợp dữ liệu), ngƣợc lại khả năng ữ liệu đó hông nhiễu (là tín hiệu) thì giữ nguyên. Giả mã nhƣ sau:
Input: Bảng dữ liệu gồm n hàng, m cột 1 For i = 1 to n do 2 For j = 1 to m do # X lý dữ liệu bị mất 3 if VSi.Aj = then 4 Xác định giá trị PVSi.Aj (Xl , Aj)
5 Chọn [Max (PVSi.Aj (Xl , Aj)) and (Max (PVSi.Aj (Xl , Aj)) ≥ )] 6 Gán VSi.Aj = Giá trị thỏa mãn Max (PVSi.Aj (Xl , Aj))
7 Else
8 if chọn [Max (PVSi.Aj (Xl , Aj)) and (Max (PVSi.Aj (Xl , Aj)) < )] then
9 Gán VSi.Aj = Giá trị thỏa mãn Max (PVSi.Aj (Xl , Aj)) 10 Đặt VSi.Aj = Vnoisy Si.Aj
# X lý dữ liệu nhiễu
11 if [(VSi.Aj = Vnoisy Si.Aj ) and (Pf noisy(Si, Aj) ≥ 0.5) then 12 VSi.Aj = Vnoisy Si.Aj / 2
13 Else đặt VSi.Aj = Vnoisy Si.Aj 14 Output: VSi.Aj
15 End.
Giải thích thuật toán
Đầu vào thuật toán là bảng giá trị gồm n hàng là số nút trong cụm, m cột là số thuộc tính/tham số đo.
Dòng 1, 2 để duyệt hết giá trị đo của nút cảm biến Si về tham số Aj trong bảng. Dòng 3, nếu gặp giá trị đo của Si về Aj bị thiếu (mất) thì (Dòng 4) tính xác suất có điều kiện của l khả năng giá trị Xt 1 ≤ t ≤ l) đối với tham số Aj và
(Dòng 5) lựa chọn giá trị Xt có xác suất đúng với VSi.Aj nhất đồng thời tối thiểu bằng mức ngƣỡng ƣới thì (Dòng 6) gán giá trị VSi.Aj vào vị trí bị mất.
Dòng 7, 8 là trƣờng hợp ngƣợc lại khi gặp giá trị Xt < với xác suất nhận đƣợc cao nhất thì (Dòng 9) gán giá trị đó vào VSi.Aj đồng thời (Dòng 10)
đánh ấu là tín hiệu nhiễu để đƣợc x lý ở ƣớc sau.
Dòng 11, nếu VSi.Aj là nhiễu với xác suất nhiễu cao (đúng là đúng nhiễu thật) Pf noisy(Si, Aj) ≥ 0.5 thì (Dòng 12) giảm giá trị nhiễu này xuống 50% để
giảm nguy cơ sai số t ch lũy ở giai đoạn tổng hợp sau đó đồng thời đảm bảo tính toàn vẹn của dữ liệu. Các giá trị nhiễu khác có xác suất đúng ƣới 0.5 thì đƣợc giữ nguyên (ở dòng 13).
Dòng 14, sau 2 lƣợt x lý dữ liệu bị thiếu/mất (từ Dòng 3 ến 10) và x lý dữ liệu nhiễu (từ Dòng 11 ến 13), các giá trị đo lƣờng của Si về Aj là VSi.Aj
của bảng đƣợc bổ sung, điều chỉnh thành bảng dữ liệu đầy đủ làm đầu vào để x lý dữ liệu ƣ thừa ở ƣớc sau.
3.2.1.5. Xử lý dữ liệu dư thừa
Lý thuyết tập thô đƣợc đề xuất và chứng minh là có thể áp dụng để tổng hợp dữ liệu nhiều nút cảm biến nhƣ đã chứng minh ở Mục 3.1. Theo Hình 3.4, đầu ra của quy trình x lý tín hiệu thiếu và nhiễu là bảng dữ kiện đầy đủ gồm
n hàng, m cột hay là ma trận cỡ (n x m). Bảng này sẽ là đầu vào của khối x lý dữ liệu ƣ thừa. Mục đ ch của x lý dữ liệu ƣ thừa là rút gọn bảng, cụ thể là phải tìm đƣợc thuộc tính lõi, tập thuộc tính rút gọn.
Thuộc tính lõi là hợp tất cả các tập một phần t trong ma trận phân biệt
(hay ma trận khả phân) [64].
Core(A) = {a A: cur = {a}, (u, r = 1, 2, ..., n)} (CT 3. 27)
Ma tr n phân biệt (discernibility matrix) là một ma trận đối xứng cỡ (n x n), ký hiệu M(IS), giá trị của các phần t cur của ma trận M(IS) đƣợc định nghĩa nhƣ sau [64]:
(cur) = {a A: a(Si) ≠ a Sj)} ối với i, j = 1, 2, ..., n (CT 3.28)
T p thuộc tính rút gọn [64]:
Tập A’ đƣợc gọi là tập thuộc tính rút gọn của A nếu A’ A và A’ là tập con cực tiểu của A sao cho A’ c ≠ với c M(IS).
S dụng phƣơng pháp ma trận phân biệt để rút gọn thuộc tính. Từ định nghĩa về ma trận phân biệt ở công thức CT 3.28, xây dựng hàm phân biệt.
hàm Boolean có m biến Boolean (ứng với m thuộc tính A1, A2,…, Am) đƣợc xây dựng ƣới dạng chu n tắc hội (hội của các tuyển sơ cấp) nhƣ sau [64]:
Fis (A*1, A*2,…, A*
m) = ˄ { ˅ cur | 1 u r n, cur ≠ }, trong đó c*ur = {A* | A cur } (CT 3.29)
Sau khi rút gọn hàm Boolean ở công thức CT 3.29, tập các đơn thức của
Fsi xác định tập rút gọn của bảng dữ liệu.
3.2.2. M ọ v p tíc t quả
Giả s một mạng cảm biến có 5 nút cảm biến S1 S5, có 4 thuộc tính
A1 A4 với kết quả đo đƣợc ở B ng 3.8:
Tập các dữ liệu bị thiếu, tính theo công thức CT 3.21 gồm: {(S1, A1), (S2, A3), (S4, A2), (S5, A1), (S5, A4)}
Tập các dữ liệu bị nhiễu gồm: {(S1, A3), (S5, A2)}
Tập giá trị đo các thuộc t nh, đƣợc xác định theo CT 3.20 và Bảng 3.7:
VA1 = {1, 2, 3, 4, 5, 6} = {rất nhỏ, nhỏ, trung bình, mạnh, rất mạnh, năng lƣợng gốc}, l = 6.
VA2 = {1, 2, 3, 4, 5} = {rất xa, xa, trung bình, gần, rất gần}, l = 5.
VA3 = {1, 2, 3, 4, 5} = {còn rất nhiều, còn nhiều, còn gần 1/2, còn ít, còn rất ít}, l = 5.
VA4 = {1, 2, 3, 4, 5} = {rất lớn, lớn, trung bình, ít, rất ít}, l = 5.
Ngƣỡng các giá trị thuộc t nh đƣợc tính theo công thức CT 3.26: .A1
ảng 3.8. ữ liệu đo của mạng cảm iến
Nút cảm bi n Thu c tính A1 A2 A3 A4 S1 5 ~ 2 4 S2 3 4 4 S3 3 3 3 4 S4 4 4 4 S5 ~ 2 4
Xác suất nhận đƣợc giá trị đo th o thuộc t nh tƣơng ứng của các nút cảm biến đƣợc tính theo công thức CT 3.22, giả s kết quả xác suất (làm tròn số) đối với dữ liệu đo ị thiếu ở Bảng 3.9 và dữ liệu đo ị nhiễu ở Bảng 3.10:
ảng 3.9. Xác suất hi ữ liệu đo ị thiếu ảng 3.10. Xác suất hi ữ liệu đo ị nhiễu
Giá tr đ Xác suất nhận giá tr đ t t u c tí Giá tr đ Xác suất nhận giá tr đ t t u c tí (S1,A1) (S2,A3) (S4,A2) (S5,A1) (S5,A4) (S1,A3) (S5,A2)
1 0,1 0,1 0,2 0,1 0,1 1 0,1 0,1 2 0,1 0,1 0,1 0,2 0,1 2 0,6 0,5