Professional Documents
Culture Documents
Kalman PDF
Kalman PDF
ĐỀ TÀI:
HÀ NỘI 8-2012
Ngày nay, nền công nghệ thế giới đang phát triển nhanh chóng và hàng loạt các
giải pháp công nghệ ra đời mỗi năm. Theo đó, các sinh viên ngành công nghệ ngoài việc
tiếp thu các kiến thức ở giảng đường còn phải tìm hiểu nghiên cứu thêm các công nghệ
tiên tiến trên thế giới để có thể đáp ứng được yêu cầu cao của thị trường lao động. Trong
những năm gần đây các loại cảm biến, thiết bị đo lường được sử dụng rộng rãi trong dân
dụng cũng như trong công nghiệp. Thế nhưng nhiều loại thiết bị lại rất nhạy với nhiễu,
vấn đề làm sao để loại nhiễu ra khỏi tín hiệu là một vấn đề thực sự không đơn giản.
Với những ưu điểm vượt trội, tiềm năng ứng dụng của thuật toán Kalman vào
thực tế trong việc áp dụng để lọc nhiễu trong tín hiệu là rất khả quan, vì vậy việc nghiên
cứu để năm rõ và tiến tới làm chủ phương pháp này là rất cần thiết và bổ ích. Ngoài ra
với mong muốn áp dụng và lập trình thuật toán Kalman vào thực tế nên nhóm chúng em
chọn đề tài: “TÌM HIỂU LÝ THUYẾT VÀ CÁC ỨNG DỤNG CỦA BỘ LỌC
KALMAN”.
Vào năm 1960, R.E Kalman đã công bố bài báo nổi tiếng về một giải pháp truy
hồi để giải quyết một bài toán lọc thông tin rời rạc truyến tính (discrete data linear
filtering). Tên đầy đủ của bài báo là “A New Approach to Linear Filtering and Prediction
Problems”. Từ đó đến nay cùng với sự phát triển của tính toán kỹ thuật số, bộ lọc Kalman
đã trở thành chủ đề nghiên cứu sôi nổi và được ứng dụng trong nhiều ngành kỹ thuật
công nghệ khác nhau: trong tự động hóa, trong định vị cũng như trong viễn thông và
trong nhiều lĩnh vực khác.
Một cách khái quát, bộ lọc Kalman là một tập hợp các phương trình toán học mô
tả một phương pháp tính toán truy hồi hiệu qủa cho phép ước đoán trạng thái của một quá
trình sao cho trung bình phương sai của độ là nhỏ nhất. Bộ lọc Kalman rất hiệu quả trong
việc ước đoán các trạng thái trong quá khứ, hiện tại và tương lai thậm chí ngay cả khi
tính chính xác của hệ thống mô phỏng không được khẳng định.
1. Lý thuyết về ước lượng
1.1. Khái niệm
Trong thống kê, một ước lượng là một giá trị được tính toán từ một mẫu thử và
người ta hy vọng đó là giá trị tiêu biểu cho giá trị cần xác định trong tập hợp. Người ta
luôn tìm một ước lượng sao cho đó là ước lượng “không chệch”, hội tụ, hiệu quả và
vững(robust)..
1.2. Đánh giá chất lượng
Một ước lượng là một giá trị x được tính toán trên một mẫu được lấy một cách
ngẫu nhiên, do đó giá trị của x là một biến ngẫu nhiên với kì vọng E(x) và phương sai
V(x). Nghĩa là giá trị x có thể dao động tùy theo mẫu thử, nó có ít cơ hội để có thể bằng
đúng chính xác giá trị X mà nó đang ước lượng. Mục đích ở đây là ta muốn có thể kiểm
soát sự sai lệch giá trị x và giá trị X.
Một biến ngẫu nhiên luôn dao động xung quanh giá trị kì vọng của nó. Ta muốn là
kì vọng của x phải bằng X. Khi đó ta nói ước lượng là không chệch. Trung bình tích lũy
trong ví dụ về chiều cao trung bình của trẻ 10 tuổi một ước lượng đúng, trong khi ước
giá trị thực cần ước lượng lớn hơn tiến về 0 khi kích cỡ của mẫu thử càng lớn).
Biến ngẫu nhiên dao động quanh giá trị kì vọng của nó. Nếu phương sai V(x) càng
bé, thì sự dao động càng yếu. Vì vậy ta muốn phương sai của ước lượng là nhỏ nhất có
thể. Khi đó ta nói ước lượng là hiệu quả.
Cuối cùng, trong quá trình điều tra, có thể xuất hiện một giá trị “bất thường” (ví dụ
có trẻ 10 tuổi nhưng cao 1,80 m). Ta muốn giá trị bất thường này không ảnh hưởng quá
nhiều đến giá trị ước lượng. Khi đó ta nói ước lượng là vững. Có thể thấy trung bình tích
lũy trong ví dụ về chiều cao trung bình trẻ 10 tuổi không phải là một ước lượng vững.
1.3. Kỳ vọng (Expectation)
Định nghĩa: Giả sử 𝑋 là đại lượng ngẫu nhiên rời rạc có thể nhận các giá trị
𝑥1 , 𝑥2 , … , 𝑥𝑛 với các xác suất tương ứng 𝑃1 , 𝑃2 , … , 𝑃𝑛 .
Khi đó kỳ vọng của X, ký hiệu là 𝐸 (𝑋 ) hay 𝜇 được xác định bởi công thức
𝑛
𝐸 (𝑋 ) = ∑ 𝑥𝑖 𝑃𝑖 (1.1)
𝑖=1
Nếu 𝑋 là đại lượng ngẫu nhiên liên tục có hàm mật độ xác suất là 𝑓 (𝑥) thì kỳ vọng
của 𝑋 là:
+∞
𝐸 (𝑋 ) = ∫ 𝑥𝑓 (𝑥)𝑑𝑥 (1.2)
−∞
- Tính chất
i. 𝐸 (𝐶 ) = 𝐶
Nếu X là đại lượng ngẫu nhiên liên tục có hàm mật độ xác suất là 𝑓(𝑥) thì:
+∞
Ý nghĩa: 𝑋 − 𝜇 là độ lệch khỏi giá trị trung bình. Do đó phương sai 𝑉𝑎𝑟(𝑋 ) gọi là
trung bình bình phương độ lệch. Nên phương sai phản ánh mức độ phân tán của các giá
Quan sát đồ thị ta thấy phân phối chuẩn có dạng chuông. Giá trị kỳ vọng của X là
𝑋 = 𝜇 là trục đối xứng. Độ lệch chuẩn 𝜎 (hay phương sai 𝜎 2 ) càng lớn thì đồ thị càng
bẹt, nghĩa là các giá trị càng phân tán ra xa kỳ vọng.
Trong thực tế, các loại nhiễu trong các hệ thống đo lường có thể được mô phỏng
một cách chính xác bằng nhiễu trắng cộng. Hay nói cách khác tạp âm trắng Gaussian là
loại nhiễu phổ biến nhất trong hệ thống đo lường. Loại nhiễu này có mật độ phổ công
suất đồng đều trên miền tần số và biên độ tuân theo phân bố Gaussian. Theo phương thức
tác động thì nhiễu Gaussian là nhiễu cộng. Vậy các hệ thống đo lường phổ biến chịu tác
động của nhiễu Gaussian trắng cộng (AWGN).
Lưu ý là các giá trị 𝑦̅ và σ2 thay đổi tùy theo mẫu thử, do đó chúng là các biến ngẫu nhiên
với trung bình và phương sai riêng khác nhau.
còn được gọi là trung bình tích lũy (hay trung bình cộng). Ta chứng minh được đây là
ước lượng không chệch (unbiased), nghĩa là 𝐸 (𝑦̅) = 𝑌
Ước lượng phương sai của Y:
σ2 là một ước lượng của V(Y), nhưng là ước lượng không đúng, ta chứng minh
được kì vọng của σ2 luôn nhỏ hơn V(Y), tức ước lượng là thiếu.
Các ước lượng đúng của V(Y) là:
Trong trường hợp mẫu lớn, phép tính có hoàn lại và phép tính không hoàn lại là
𝑁
như nhau, vì xấp xỉ bằng 1. Vì vậy trong trường hợp tổng quát ước lượng đúng của
𝑁−1
1
V(Y) là: 𝑠 2 = ∑𝑛𝑖=1(𝑦𝑖 − 𝑦̅)2 được gọi là phương sai tích lũy của Y.
𝑛−1
Nội dung này giải thích tại sao tên của phương pháp là bình phương tối thiểu.
Đôi khi thay vì tìm giá trị nhỏ nhất của tổng bình phương, người ta có thể tìm giá
trị nhỏ nhất của bình phương trung bình:
𝑛
1
χ2 = ∑(𝑦𝑖 − 𝑓(𝑥𝑖 ))2 (1.16)
𝑛
𝑖=1
Điều này dẫn đến tên gọi bình phương trung bình tối thiểu.
Trong hồi quy tuyến tính, người ta thay biểu thức
𝑓 (𝑥𝑖 ) ≈ 𝑦𝑖
bằng
𝑓(𝑥𝑖 ) = 𝑦𝑖 + 𝜀𝑖 (1.17)
với hệ số nhiễu ε là biến ngẫu nhiên có giá trị kỳ vọng bằng 0.
Trong biểu thức của hồi quy tuyến tính x được đo chính xác, chỉ có y chịu nhiễu loạn ε.
Thêm nữa, hàm f tuyến tính với các tham số pj. Nếu f không tuyến tính với các tham số,
ta có hồi quy phi tuyến, một bài toán phức tạp hơn nhiều hồi quy tuyến tính.
2. Bộ lọc Kalman
2.1. Giới thiệu chung về bộ lọc Kalman
Được đề xuất từ năm 1960 bởi giáo sư Kalman để thu thập và kết hợp linh động
các thông tin từ cảm biến thành phần. Một khi phương trình định hướng và mẫu thống kê
nhiễu trên mỗi cảm biến được biết và xác định, bộ lọc Kalman sẽ cho ước lượng giá trị
tối ưu (chính xác do đã được loại sai số, nhiễu) như là đang sử dụng một tín hiệu “tinh
khiết” và có độ phân bổ không đổi. Trong hệ thống này, tín hiệu cảm biến vào bộ lọc
gồm hai tín hiệu: từ cảm biến góc (inclinometer) và cảm biến vận tốc góc (gyro). Tín hiệu
đầu ra của bộ lọc là tín hiệu của inclinometer và gyro đã được loại nhiễu nhờ hai nguồn
tín hiệu hỗ trợ và xử lý lẫn nhau trong bộ lọc, thông qua quan hệ (vận tốc góc = đạo
hàm/vi phân của giá trị góc.
Hình 1.3 trên mô hình hóa hoạt động của mạch lọc Kalman. Chúng ta có tín hiệu
đo được, chúng ta có mô hình của tín hiệu đo được (đòi hỏi tuyến tính) và sau đó là áp
dụng vào trong hệ thống phương trình của mạch lọc để ước lượng trạng thái quan tâm.
Thực ra tín hiệu đo là không khó, phương trình đã có sẵn, cái chung ta cần chính là mô
hình hoá hệ thống. Để có thể ứng dụng một cách hiểu quả mạch lọc Kalman thì chúng ta
phải mô hình hóa được một cách tuyến tính sự thay đổi của trạng thái cần ước lượng hoặc
dự đoán.
Chúng ta giả sử rằng có thể mô hình hóa bởi phương trình chuyển trạng thái
𝑥𝑘+1 = 𝑭𝑘 𝑥𝑘 + 𝑮𝑘 𝒖𝑘 + 𝑤𝑘 (2.1)
Trong đó 𝑥𝑘 là trạng thái tại thời điểm k, 𝒖𝑘 là vector điều khiển đầu vào, 𝑤𝑘 là hệ
thống cộng hay nhiễu quá trình – thường là nhiễu Gaussian trắng cộng (AWGN) , 𝑮𝑘 là
ma trận chuyển đổi đầu vào và 𝑭𝑘 là ma trận chuyển trạng thái.
Ngoài ra chúng ta giả sử rằng, khả năng quan sát trạng thái được thực hiện thông
qua một hệ thống đo lường có thể được biểu diễn bởi một phương trình tuyến tính như
sau
𝑧𝑘 = 𝑯𝑘 𝑥𝑘 + 𝒗𝑘 (2.2)
Trong đó 𝑧𝑘 là thông tin quan sát hay đo lường thực hiện tại thời điểm 𝑘, 𝑥𝑘 là
trạng thái tại thời điểm 𝑘, 𝑯𝑘 là ma trận quan sát và 𝒗𝑘 là nhiễu cộng trong quá trình đo
lường.
Ký hiệu ước lượng dự đoán của trạng thái 𝑥𝑘+1 dựa trên quan sát ở thời điểm 𝑘,
𝑧1 , … , 𝑧𝑘 là 𝑥̂𝑘+1|𝑘 . Đó được gọi là một bước trước dự đoán hay đơn giản là dự đoán. Bây
giờ, giải pháp để tối thiểu hóa phương trình (2.7) là kỳ vọng của trạng thái ở thời điểm
𝑘 + 1 được ước định dựa trên quan sát ở thời điểm 𝑘. Như vậy,
𝑥̂𝑘+1|𝑘 = 𝐸 [𝑥𝑘+1 |𝚭 𝑘 ]
= 𝐸 [𝑭𝑘 𝑥𝑘 + 𝑮𝑘 𝑢𝑘 + 𝑤𝑘 |𝚭 𝑘 ]
= 𝑭𝑘 𝐸 [𝑥𝑘 |𝚭 𝑘 ] + 𝑮𝑘 𝑢𝑘 + 𝐸 [𝑤𝑘 |𝚭 𝑘 ]
= 𝑭𝑘 𝑥̂𝑘|𝑘 + 𝑮𝑘 𝑢𝑘 (2.9)
Khi sử dụng trong thực tế, nhiễu quá trình có giá trị trung bình là 0 và 𝑢𝑘 đã được
biết chính xác.
Vì vậy, bằng việc sử dụng các sự kiện mà 𝑤𝑘 và 𝑥̂𝑘|𝑘 là không tương quan:
Đang có một ước lượng dự đoán 𝑥̂𝑘+1|𝑘 , giả sử rằng chúng ta đang có một giá trị
quan sát 𝑧𝑘+1 . Làm sao để sử dụng thông tin này để cập nhật trạng thái dự đoán, tức là
tìm 𝑥̂𝑘+1|𝑘+1 . Chúng ta giả sử rằng ước lượng là tổng trọng số tuyến tính của dự đoán và
quan sát mới và có thể được mô tả bởi phương trình,
Trong đó 𝑲′𝑘+1 và 𝑲𝑘+1 là những ma trận hiệu chỉnh bù hay ma trận độ lời (của
các kích thước khác nhau). Vấn đề của chúng ta bây giờ là tìm 𝑲′𝑘+1 và 𝑲𝑘+1 để tối thiểu
hóa điều kiện ước lượng trung bình bình phương sai số. Sai số dự đoán được cho bởi
Để bộ lọc không chệch yêu cầu 𝐸[𝑥̂ 𝑘+1|𝑘+1 ] = 𝐸[𝑥𝑘+1 ]. Giả sử rằng 𝑥̂𝑘|𝑘 là một ước
lượng không chệch. Kết hợp phương trình (2.11) và (2.12) và tính kỳ vọng
= 𝑭𝑘 𝐸[𝑥̂𝑘|𝑘 ] + 𝑮𝑘 𝑢𝑘
= 𝐸 [𝑥𝑘+1 ] (2.14)
𝑯𝑘+1 𝑥̂𝑘+1|𝑘 có thể được hiểu như một quan sát hay đo lường dự đoán 𝑧̂𝑘+1|𝑘
𝑧̂𝑘+1|𝑘 = 𝐸 [𝑧𝑘+1 |𝚭 𝑘 ]
Đặt 𝒓𝑘+1 là độ lệch đo lường thể hiện sự sai khác giữa giá trị đo lường 𝑧𝑘+1 và
ước lượng của nó 𝑧̂𝑘+1|𝑘 , được biểu diễn bởi
= 𝐸 [𝑧𝑘+1 |𝚭 𝑘 ] − 𝑧̂𝑘+1|𝑘
=0 (2.19)
Chúng ta xác định hiệp phương sai sai số dự đoán của phương trình (2.10). Bây
giờ chúng ta tính toán hiệp phương sai sai số điều chỉnh.
𝑇
𝑷𝑘+1|𝑘+1 = 𝐸 [(𝑥̃𝑘+1|𝑘+1 )(𝑥̃𝑘+1|𝑘+1 ) |𝚭 𝑘 ]
𝑇
= 𝐸 [(𝑥𝑘+1 − 𝑥̂𝑘+1|𝑘+1 )(𝑥𝑘+1 − 𝑥̂𝑘+1|𝑘+1 ) ]
= 𝑐𝑜𝑣(𝑥𝑘+1 − 𝑥̂𝑘+1|𝑘+1 )
= 𝑐𝑜𝑣 (𝑥𝑘+1 − ( 𝑥̂𝑘+1|𝑘 + 𝑲𝑘+1 (𝑯𝑘+1 𝑥𝑘+1 + 𝒗𝑘+1 − 𝑯𝑘+1 𝑥̂𝑘+1|𝑘 )))
= (𝑰 − 𝑲𝑘+1 𝑯𝑘+1 )𝑐𝑜𝑣(𝑥𝑘+1 − 𝑥̂𝑘+1|𝑘 )(𝑰 − 𝑲𝑘+1 𝑯𝑘+1 )𝑇 + 𝑲𝑘+1 𝑐𝑜𝑣(𝒗𝑘+1 )𝑲𝑇𝑘+1
𝑷𝑘+1|𝑘+1 = (𝑰 − 𝑲𝑘+1 𝑯𝑘+1 )𝑷𝑘+1|𝑘 (𝑰 − 𝑲𝑘+1 𝑯𝑘+1 )𝑇 + 𝑲𝑘+1 𝑹𝑘+1 𝑲𝑇𝑘+1 (2.22)
Vì vậy hiệp phương sai của ước lượng điều chỉnh đã được biểu diễn qua hiệp
phương sai dự đoán 𝑷𝑘+1|𝑘 , nhiễu đo lường 𝑹𝑘+1 và ma trận độ lời Kalman 𝑲𝑘+1
Mục tiêu của chúng ta là làm sao để tối thiểu hóa trung bình bình phương sai số
ước lượng có điều kiện với độ lời Kalman 𝑲.
𝑇
𝐿 = min 𝐸 [(𝑥̃𝑘+1|𝑘+1 ) (𝑥̃𝑘+1|𝑘+1 )|𝚭 𝑘 ]
𝑲𝑘+1
𝑇
= min 𝑡𝑟𝑎𝑐𝑒 (𝐸 [(𝑥̃𝑘+1|𝑘+1 ) (𝑥̃𝑘+1|𝑘+1 )|𝚭 𝑘 ])
𝑲𝑘+1
𝜕
(𝑡𝑟𝑎𝑐𝑒(𝐴𝐵𝐴𝑇 )) = 2𝐴𝐵
𝜕𝐴
Kết hợp (2.23) và (2.24) và lấy vi phân ma trận độ lời và đặt kết quả bằng 0 ta
được
𝜕𝐿
= −2(𝑰 − 𝑲𝑘+1 𝑯𝑘+1 )𝑷𝑘+1|𝑘 𝑯𝑇𝑘+1 + 2𝑲𝑘+1 𝑹𝑘+1 = 0
𝜕𝑲𝑘+1
Cùng với phương trình 2.16, định nghĩa một ước lượng tối ưu tuyến tính trung
bình bình phương sai số.
Trong phần này chúng ta sẽ tóm tắt các phương trình tổng quát của giải thuật lọc
Kalman. Giải thuật bao gồm 2 quá trình: quá trình ước lượng và quá trình điều chỉnh.
Bộ lọc Kalman dựa vào trạng thái ước lượng điều chỉnh 𝑥̂𝑘|𝑘 - là ước lượng của 𝑥𝑘
để ước lượng trạng thái 𝑥̂𝑘+1|𝑘 – là ước lượng dự đoán của 𝑥𝑘+1 cho phép đo 𝑧𝑘+1
Đo lường dự đoán:
Độ lời Kalman:
Dự đoán
Prediction
đầu
Initial
Ban
(1) 𝑥̂𝑘+1|𝑘 = 𝑭𝑘 𝑥̂𝑘|𝑘 + 𝑮𝑘 𝑢𝑘
(2) 𝑷𝑘+1|𝑘 = 𝑭𝑘 𝑷𝑘|𝑘 𝑭𝑇
𝑘 + 𝑸𝑘 𝑥̂𝑘|𝑘 and
và 𝑷𝑘|𝑘
Update
Hiệu chỉnh
(3) 𝑺𝑘+1 = 𝑯𝑘+1 𝑷𝑘+1|𝑘 𝑯𝑇
𝑘+1 + 𝑹𝑘+1
(4) 𝑲𝑘+1 = 𝑷𝑘+1|𝑘 𝑯𝑇 −1
𝑘+1 𝑺𝑘+1
(5) 𝑥̂𝑘+1|𝑘+1 = 𝑥̂𝑘+1|𝑘 + 𝑲𝑘+1 (𝑧𝑘+1 − 𝑯𝑘+1 𝑥̂𝑘+1|𝑘 )
(6) 𝑷𝑘+1|𝑘+1 = (𝑰 − 𝑲𝑘+1 𝑯𝑘+1 )𝑷𝑘+1|𝑘
Hình 2.2: Tóm tắt quá trình khởi tạo của Kalman
Bởi vì bộ lọc Kalman giải quyết một số vấn đề cơ bản là lọc nhiễu và tối ưu cho
các ước lượng nên nó được ứng dụng rất rộng rãi. Ngày nay Kalman được ứng dụng
nhiều trong các ô tô tự lái có khả năng thay thế con người vận hành xe, một chương trình
máy tính được cài sẵn bộ lọc Kalman sẽ có nhiệm vụ điều khiển xe. Những chiếc xe này
thậm chí còn được giới thiệu là an toàn hơn xe lái bởi con người trong một số trường hợp.
Một ứng dụng khác, có thể chúng ta không thích thú lắm, đó là các tên lửa không
đối không (air-to-air missile: AAM). Đó là các tên lửa dẫn hướng việc bắn từ một máy
bay để tiêu diệt máy bay khác. Tên lửa dẫn hướng hoạt động theo nguyên lý phát hiện
mục tiêu (thông thường bằng rada hoặc hồng ngoại, đôi khi cũng sử dụng Lazer hoặc
quang học) sau đó tự động dẫn đến mục tiêu nhờ quá trình ước lượng của Kalman [3].
Ngoài ra bộ lọc Kalman còn được áp dụng nhiều vào hệ thống theo dõi mục tiêu di
động trong mạng cảm biến không dây. Do nhiễu đo lường trên các cảm biến nên kết quả
thu được thường không chính xác, có sai số lớn so với thực tế. Bộ lọc Kalman được áp
dụng để lọc nhiễu, dự đoán, ước lượng trạng thái của mục tiêu như vị trí, tốc độ và quỹ
đạo. Nhờ có quá trình dự đoán và điều chỉnh của bộ lọc Kalman đã góp phần quan trọng
vào việc quản lý trạng thái các cảm biến làm giảm thiểu năng lượng tiêu thụ cũng như
tăng chất lượng theo dõi và kéo dài thời gian sống của mạng [4].
Một số ứng dụng được liệt kê từ bài viết Kalman Filter trên Wikipedia [5]:
Ứng dụng lọc Kalman trong phân tích biến dạng nhà cao tầng do bức xạ nhiệt mặt
trời.
Cải thiện chất lượng truyền động không đồng bộ bằng cấu trúc tách kênh trực tiếp
sử dụng kalman filter để quan sát từ thông. [6]
Ứng dụng Kalman Filter cho dự báo nhiệt độ 2m từ sản phẩm mô hình HRM.
Hệ thống dẫn đường quán tính INS/GPS. [7]
Sử dụng bộ lọc Kalman kết hợp với thuật toán bám ảnh Camshift nhằm nâng cao
chất lượng bám trong các hệ thống robot tự động tìm kiếm và bám bắt mục tiêu.[8]
Sử dụng chuyển đổi Box Muller để chuyển từ phân phối chuẩn trong khoảng [0; 1]
sang phân phối Gaussian 𝒩(𝜇, 𝜎 2 )
Hay
trong đó 𝑠, 𝑡 ∈ [0; 1]
Ví dụ tạo sinh 1000 điểm tuân theo phân phối Gaussian 𝒩(0, 1)
Trong hình vẽ trên, đồ thị bên trái là hàm mật độ xác suất và phân bố của 1000
điểm Gaussian. Đồ thị bên phải thể hiện sự thay đổi giữa phương sai và kỳ vọng. Từ hình
vẽ ta thấy phương sai càng lớn thì giá trị càng phân tán.
Ở đây chúng ta sẽ mô hình hóa một mục tiêu chuyển động có vector trạng thái tại
thời điểm k:
𝑥𝑘 = [𝑥 (𝑘 ) 𝑥̇ (𝑘 ) 𝑦 (𝑘 ) 𝑦̇ (𝑘)]𝑇
∆𝑇𝑘 = 𝑇𝑘+1 − 𝑇𝑘 = 1𝑠
𝑸𝑘 = 𝐸 [𝑤𝑘 𝑤𝑘 𝑇 ]
1 0
𝑥0|0 = [0 0] ∗ 𝑧 ; 𝑷 = 𝐼𝑛𝑑𝑒𝑛𝑡𝑖𝑡𝑦(4, 4)
0 0|0
0 1
0 0
𝑧𝑘 = 𝑯𝑘 𝑥𝑘 + 𝒗𝑘
Trong đó:
1 0 0 0
𝑯𝑘 = [ ]
0 0 1 0
𝒗𝑘 ~𝓝(0, 1)
1 0
𝑹𝑘 = 𝑬[𝒗𝑘 𝒗𝑘 𝑇 ] = 𝜎 2 ∗ [ ]
0 1
𝜎 = 5: là đại lượng biểu diễn cường độ của nhiễu đo lường.
- Dùng con trỏ chuột vẽ một quỹ đạo chuyển động bất kỳ của mục tiêu và được
biểu diễn bởi đường màu đen.
- Khi nhấn Draw chương trình sẽ tạo dữ liệu đo lường thể hiện quá trình đo
lường vị trí của mục tiêu được thể hiện bởi đường màu đỏ.
- Bộ lọc Kalman sẽ cho kết quả là đường màu xanh chính là dữ liệu đã được ước
lượng tối ưu.
- Chúng ta có thể thay đổi các thông số để đạt kết quả tối ưu.
Kết quả
Về lý thuyết
Về ứng dụng
Bằng những kiến thức về bộ lọc Kalman đã mô phỏng được quá trình ước lượng
chuyển động của mục tiêu.
Ứng dụng bộ lọc Kalman vào hệ thống bắt mục tiêu trong mạng cảm biến không
dây, giúp quản lý trạng thái của các cảm biến, tăng chất lượng theo dõi và kéo
dài thời gian sống của mạng.
[1] Giáo trình xác suất thống kê, Tống Đình Quỳ, NXB Giáo dục, Hà Nội, 1999.
[4] Vinh Tran-Quang, Phat Nguyen Huu, Takumi Miyoshi, “A Collaborative Target
Tracking Algorithm Considering Energy Constraint in WSNs” 15-17 Sept. 2011.
[6] Ths. Đinh Anh Tuấn, Nguyễn Phùng Quang, “Cải thiện chất lượng truyền động không
đồng bộ bằng cấu trúc tách kênh trực tiếp sử dụng kalman filter để quan sát từ thông” -
20-11-2009
[7] http://www.nchmf.gov.vn/web/vi-VN/71/155/5760/Default.aspx
[8] Ngô Mạnh Tiến, Phan Xuân Minh, Hà Thị Kim Duyên, “A Method using Kalman
Filter combining with Image Tracking Camshift Algorithm to bring higher tracking
Quality in automatically searching and tracking target Robot System” –VCCA-2011.