• Nenhum resultado encontrado

Phat Hien Muc Tieu Di Dong Su Dung Bo Loc Kalman Tran Nhat Quang

N/A
N/A
Protected

Academic year: 2021

Share "Phat Hien Muc Tieu Di Dong Su Dung Bo Loc Kalman Tran Nhat Quang"

Copied!
87
0
0

Texto

(1)

Trường Đại Học Sư Ph ạm Kỹ Thuậ t TP H ồ Chí Minh Khoa Công Nghệ Thông Tin

KHÓA LUẬN TỐT NGHIỆP

PHÁT HIỆN MỤC TIÊU DI ĐỘNG

SỬ DỤNG BỘ LỌC KALMAN

Sinh viên thực hiện: TRẦN NHẬT QUANG MSSV: 06102070

(2)

 

NHIỆM VỤ THỰC HIỆN KHÓA LUẬN TỐT NGHIỆP

 Họ tên sinh viên: Trần Nhật Quang  MSSV: 06102070

 Chuyên ngành: Công Nghệ Thông Tin

 Tên đề tài: Phát hiện mục tiêu di động sử dụng bộ lọc Kalman

Nội dung thực hiện:

Lý thuyết:

 Tìm hiểu phương pháp phát hiện vật thể dựa trên màu sắc.

 Tìm hiểu về bộ lọc Kalman ứng dụng trong phát hiện mục tiêu di động.

Thực hành:

 Xây dựng chương trình phát hiện mục tiêu di động dựa trên phân tích màu sắc và sử dụng bộ lọc Kalman để tối ưu ước đoán.

 Kết hợp việc theo dõi đối tượng với các thuật toán đồ họa máy tính để tạo ra chức năng vẽ và điều khiển ảnh từ camera.

Thời gian thực hiện:

từ 2.9.2010 đến 1.1.2011

Chữ ký của sinh viên: _______________________________________________________

TP Hồ Chí Minh, ngày tháng năm 2011

TRƯỞNG KHOA CNTT GIẢNG VIÊN HƯỚNG DẪN

(K{ và ghi rõ họ tên) (K{ và ghi rõ họ tên)

(3)

LỜI CẢM ƠN



Trong suy nghĩ của em, bốn năm đại học của một sinh viên được tổng kết bởi đồ án tốt nghiệp. Từ đầu em đã xác định sự quan trọng của đồ án này như thế.

Nhận được đề tài mình thích là một may mắn. Và em đã được nhận đề tài này.

Đồ án này có thể là không quá phức tạp so với những thành tựu về tin học hiện nay, nhưng với một sinh viên như em thì không thể tránh khỏi những khó khăn trong quá trình thực hiện.

May mắn thay em đã nhận được sự giúp đỡ nhiệt tình của thầy Trần Tiến Đức, ĐH Sư Phạm Kỹ Thuật TP Hồ Chí Minh, giáo viên hướng dẫn và cũng là cố vấn học tập của em trong suốt những năm đại học. Thầy không chỉ dạy em về kiến thức mà còn cho em nhiều hiểu biết quý báu khác. Em rất cảm ơn thầy! Xin được gửi tới thầy lời cảm ơn chân thành! Chúc thầy luôn khỏe mạnh để tiếp tục hướng dẫn thêm nhiều lớp sinh viên nữa.

Bên cạnh đó, cũng như nhiều bạn sinh viên khác, để hoàn thành được không chỉ đồ án này mà còn cả khóa học đại học, em cần phải nhờ vào sự quan tâm, ủng hộ hết sức lớn lao của cha mẹ em và mọi người trong gia đình. Nên nơi đây, từ đáy lòng mình, em xin được gửi lời cảm ơn chân thành nhất tới cha mẹ em và mọi người! Họ luôn là những người mà em yêu quý. Cầu mong những điều tốt đẹp nhất đến với họ!

Ngoài ra, không thể không nhớ tới các thầy cô trong khoa Công Nghệ Thông Tin, khoa Đào Tạo Chất Lượng Cao, ĐH Sư Phạm Kỹ Thuật TP Hồ Chí Minh, và các thầy cô khác đã tận tâm dạy và quan tâm giúp đỡ em cùng các bạn trong thời gian qua. Nhờ họ em mới có được những kiến thức như hôm nay để hoàn thành đồ án này. Em xin được cảm ơn các thầy cô! Một lần nữa, em cảm ơn mọi người!

TP Hồ Chí Minh, tháng 12 năm 2010 Trần Nhật Quang

(4)

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

 _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ TP Hồ Chí Minh, ngày tháng năm 2011 Giáo viên hướng dẫn

(5)

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

 _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ TP Hồ Chí Minh, ngày tháng năm 2011

(6)

MỤC LỤC

NHIỆM VỤ THỰC HIỆN KHÓA LUẬN TỐT NGHIỆP ... i

LỜI CẢM ƠN ... ii

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ... iii

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN ... iv

MỤC LỤC ... v

DANH MỤC HÌNH ... viii

DANH MỤC BIỂU ĐỒ ... ix

Mở Đầu ... 1

Vấn đề thực tế... 1

Mục đích, đối tượng và phạm vi nghiên cứu ... 1

Bố cục của báo cáo ... 5

1 Chương 1 Nền Tảng ... 6

1.1 Các khái niệm cơ bản về xác suất ... 7

1.1.1 Công thức tính xác suất ... 7

1.1.2 Xác suất có điều kiện ... 8

1.2 Biến ngẫu nhiên ... 9

1.3 Hàm xác suất ... 9

1.4 Hàm tích lũy ... 10

1.5 Các đặc trưng số của biến ngẫu nhiên ... 10

1.5.1 Kz vọng ... 10

1.5.2 Phương sai ... 12

1.6 Moment của biến ngẫu nhiên ... 13

1.7 Hiệp phương sai ... 17

1.7.1 Định nghĩa ... 17

1.7.2 Tính chất ... 18

1.8 Ma trận hiệp phương sai ... 19

(7)

1.10 Ước lượng ... 21

1.11 Nguyên tắc trực giao (Orthogonality principle) ... 24

2 Chương 2 Bộ Lọc Kalman ... 26

2.1 Giới thiệu về lọc ... 27

2.2 Giới thiệu bộ lọc Kalman ... 27

2.2.1 Tổng quan ... 27

2.2.2 Đôi nét về Rudolf Emil Kalman ... 28

2.2.3 Ứng dụng của bộ lọc Kalman ... 29

2.2.4 Ví dụ dẫn nhập ... 29

2.2.5 Mô hình tổng quát của ước lượng dùng bộ lọc Kalman ... 31

2.3 Bộ lọc Kalman ... 32

2.3.1 Các ký hiệu sử dụng ... 32

2.3.2 Xây dựng bộ lọc Kalman ... 33

2.3.3 Tóm tắt các phương trình của bộ lọc Kalman ... 38

2.4 Bộ lọc Kalman trong OpenCV ... 39

3 Chương 3 Phát Hiện Vật Thể Dựa Trên Màu Sắc ... 42

3.1 Hệ màu HSV ... 43

3.1.1 Định nghĩa ... 43

3.1.2 Chuyển từ màu RGB sang HSV ... 44

3.2 Moment của ảnh (image moment) ... 46

3.3 Thuật toán phát hiện đối tượng theo màu sắc ... 46

3.4 Cài đặt thuật toán phát hiện vật thể dựa theo màu sắc với OpenCV... 47

4 Chương 4 Thiết Kế Và Cài Đặt Chương Trình Phát Hiện Di Động ... 49

4.1 Thiết kế ... 50 4.1.1 Mô hình hệ thống ... 50 4.1.2 Bộ đo ... 52 4.2 Cài đặt... 53 4.2.1 Hoạt động của chương trình ... 53 4.2.2 Các đoạn mã chính ... 56 Kết Luận ... 70 Về lý thuyết ... 70

(8)

Về ứng dụng ... 70

Hướng phát triển... 70

Phụ Lục... 71

Hướng dẫn cài đặt OpenCV 2.1 cho project Winform CLR, Visual Studio 2008 C++ ... 71

(9)

DANH MỤC HÌNH

Hình 0-1 Phần màu vàng và hồng của cây bút sẽ được theo dõi ... 2

Hình 0-2 Theo dõi đối tượng ... 2

Hình 0-3 Dùng theo dõi chuyển động để vẽ hình từ camera. ... 3

Hình 0-4 Ảnh kết quả của thao tác vẽ qua camera ... 3

Hình 0-5 Zoom ảnh bằng cách điều khiển các vật thể ... 4

Hình 0-6 Kết quả của việc zoom ảnh ... 4

Hình 1.6-1 Các phân phối xác suất và "độ nhọn". Đường ở giữa: phân phối chuẩn. ... 17

Hình 2.3-1 Tóm tắt quá trình làm việc của lọc Kalman ... 39

Hình 3.1-1 Hình nón ngược biễu diễn hệ màu HSV ... 43

Hình 3.1-2 Hình tròn biếu diễn các sắc màu (H: 0-360) và độ bão hòa (S: 0-1). Màu đỏ: H=0, màu xanh lá: H=120, màu xanh dương: H=240 ... 43

Hình 4.2-1 Cửa sổ điều khiển ... 53

Hình 4.2-2 Cửa sổ camera hiện kết quả của chức năng theo dõi ... 53

Hình 4.2-3 Cửa sổ camera hiện kết quả của chức năng vẽ ... 54

Hình 4.2-4 Ảnh kết quả của thao tác vẽ qua camera trên Khung nhìn ... 54

Hình 4.2-5 Zoom ảnh bằng cách điều khiển các vật thể ... 55

Hình 4.2-6 Kết quả của việc zoom ảnh trong Khung nhìn ... 55

Hình PL-0-1 Cấu hình CMake 2.8.3... 71

Hình PL-0-2 Tạo project CLR Windows Forms Application ... 72

Hình PL-0-3 Thêm item ... 73

Hình PL-4 Thêm menu ... 73

Hình PL-5 Kết của việc cài đặt và chạy thành công một chương trình Winform dùng OpenCV ... 76

(10)

DANH MỤC BIỂU ĐỒ

Biểu đồ 1.6-1 Phân phối xác suất của X hộp 1, phương sai lớn hơn: các giá trị phân tán xa kz vọng hơn ... 15 Biểu đồ 1.6-2 Phân phối xác suất của X hộp 2, phương sai nhỏ hơn: các giá trị tập trung hơn quanh kz vọng ... 15 Biểu đồ 1.6-3 Moment trung tâm bậc 3 lớn hơn 0: lệch dương (đuôi bên phải dài hơn) .... 16 Biểu đồ 1.9-1 Đồ thị phân phối xác suất của X ... 20 Biểu đồ 1.9-2 Đồ thị của một số phân phối chuẩn ... 21 Biểu đồ 4.1-1 Một số phân phối Gauss, với phương sai σ2 càng lớn thì các giá trị x có giá trị lớn (xa kz vọng) sẽ có xác suất cao hơn ... 51

(11)

Mở Đầu

Vấn đề thực tế

Ngày nay, mọi người nghe nói ngày càng nhiều về các ô tô tự lái có khả năng thay thế con người trong việc vận hành xe, một chương trình máy tính sẽ đ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.

Trong các ứng dụng bảo vệ như camera an ninh, những thiết bị này hoạt động 24/24. Tuy nhiên, chỉ một vài đoạn phim được quay là có { nghĩa quan trọng, chẳng hạn như đoạn phim ghi lại cảnh có người đột nhập vào hành lang (nơi đặt camera) vào buổi tối. Vậy làm sao chúng ta có thể tìm ra đoạn video đó? Sẽ rất mất thời gian (và kém hiệu quả) nếu ta ngồi xem toàn bộ 24 giờ phim do camera quay. Các chương trình sẽ giúp chúng ta.

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). Đó các là tên lửa dẫn hướng đượ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 ra đa 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 [1].

Và còn nhiều ứng dụng khác nữa.

Vậy làm sao máy tính (các chương trình) làm được những việc trên? Có nhiều thứ liên quan cần phải giải quyết, nhưng một phần quan trọng trong đó là vấn đề phát hiện ra các

vật thể chuyển động.

Vì việc phát hiện ra các đối tượng di động được sử dụng rất rộng rãi như thế nên có thể nói đề tài này rất có { nghĩa trong khoa học lẫn thực tiễn.

Mục đích, đối tƣợng và phạm vi nghiên cứu

Đồ án này sẽ tìm hiểu và cài đặt thuật toán phát hiện mục tiêu di động dựa trên phân tích màu sắc và sử dụng bộ lọc Kalman. Ứng dụng được viết sử dụng thư viện OpenCV 2.1 và ngôn ngữ lập trình C++, IDE Visual Studio 2008.

Có nhiều thuật toán phát hiện chuyển động. Một số thuật toán phổ biến được kể đến sau đây:

 Lucas-Kanade: phân tích cục bộ (một vùng ảnh) để tìm ra vị trí mới của những điểm đặc trưng (thường là các điểm góc (corner)).

(12)

 Horn-Schunck: một thuật toán dựa trên phân tích toàn cục, khá chậm hơn Lucas-Kanade và ngày nay ít dùng [2].

 Mean-Shift: một kỹ thuật phân tích dữ liệu tổng quát. Được dùng trong nhiều lĩnh vực không chỉ riêng trong xử lý ảnh [2]. Một phát triển của Mean-shift dùng cho xử lý ảnh là Cam-shift (continuously adaptive mean-shit).

Những thuật toán này khá phức tạp đối với một sinh viên đại học.

Vì vậy, một phương pháp đơn giản hơn được tìm hiểu và sử dụng ở đây. Đó là phương pháp phát hiện vật thể dựa trên màu sắc (Chương 3) kết hợp với bộ lọc Kalman (Chương 2) để theo dõi chuyển động.

Cụ thể hơn, chúng ta sẽ thực hiện một giải pháp để phát hiện và theo dõi các đối tượng có màu sắc chỉ định trước (Hình 0-2). Ở đây đối tượng là một phần cây bút có màu hồng và vàng (Hình 0-1).

Hình 0-1 Phần màu vàng và hồng của cây bút sẽ được theo dõi

(13)

Hình 0-3 Dùng theo dõi chuyển động để vẽ hình từ camera.

(14)

Sau khi đã theo dõi được chuyển động của vật thể, ta sẽ sử dụng các thuật toán trong đồ họa máy tính để tạo ra một ứng dụng vẽ (Hình 0-3 và 0-4) và điều khiển ảnh từ camera (di chuyển và zoom ảnh) (Hình 0-5 và 0-6).

Hình 0-5 Zoom ảnh bằng cách điều khiển các vật thể

(15)

Ứng dụng được viết ở đây dừng lại với các chức năng vừa trình bày. Tuy nhiên, với kiến thức về phát hiện vật thể và bộ lọc Kalman, nội dung lý thuyết được tìm hiểu hoàn toàn có thể dùng để phát triển nhiều ứng dụng thích hợp khác.

Bố cục của báo cáo

Báo cáo của đồ án này gồm 2 phần chính: Phần lý thuyết và Phần viết ứng dụng. Phần lý thuyết gồm 3 chương:

Chương 1: Nền Tảng. Trình bày về các nội dung toán và xác suất thống kê có liên

quan tới xây dựng bộ lọc Kalman.

Chương 2: Bộ Lọc Kalman. Giới thiệu về lọc, giới thiệu bộ lọc Kalman, xây dựng bộ

lọc Kalman, bộ lọc Kalman trong OpenCV 2.1.

Chương 3: Phát Hiện Vật Thể Dựa Trên Màu Sắc. Trình bày về phương pháp phát

hiện đối tượng bằng phân tích màu sắc và cài đặt với OpenCV 2.1. Phần viết ứng dụng gồm 1 chương:

Chương 4: Thiết Kế Và Cài Đặt Chương Trình. Trình bày về thiết kế của chương trình

cũng như trích dẫn và giải thích một số đoạn code quan trọng.

Báo cáo còn có phần Phụ lục trình bày Cách cài đặt và cấu hình OpenCV 2.1 dùng để phát triển chương trình của đồ án này.

(16)

1

Chương

1

Nền Tảng

Các nội dung chính:

 Biến ngẫu nhiên và các đặc trưng số của nó  Hàm xác suất và hàm tích lũy

 Hiệp phương sai và ma trận hiệp phương sai  Ước lượng điểm

(17)

Các nội dung về xác suất và toán được trình bày ở đây nhằm mục đích phục vụ việc xây dựng bộ lọc Kalman (Chương 2). Nếu bạn quan tâm đến các vấn đề và khía cạnh sâu hơn của lý thuyết xác suất và toán, bạn hãy tìm đọc ở các tài liệu chuyên về xác suất thống kê và toán.

1.1 Các khái niệm cơ bản về xác suất

Trong cuộc sống hằng ngày, khi thực hiện một việc làm mà có nhiều kết quả có thể xảy ra, người ta sẽ nghĩ tới “khả năng” xảy ra của mỗi kết quả. Xác suất ra đời để giúp chúng ta đánh giá “khả năng” đó.

Một ví dụ là việc tung xúc xắc. Kết quả sẽ là 1 trong 6 trường hợp: ta được mặt 1 chấm hay 2, 3, 4, 5 và 6 chấm.

Trong xác suất thống kê, việc tung xúc xắc được gọi là một phép thử. Phép thử đơn giản là một hành động mà ta muốn tính toán khả năng xảy ra giữa các kết quả của nó.

Kết quả của phép thử được gọi là một biến cố (hay sự kiện (event)). Trong ví dụ trên, ta có một số biến cố:

 “Được mặt 1 chấm”

 “Được mặt 3 chấm”

 “Được mặt 6 chấm”

Mỗi một biến cố có khả năng xảy ra khác nhau, và ta có một đại lượng là xác suất dùng để do đạt khả năng này.

Ví dụ: nếu ta dùng một bộ bài gồm có 52 lá, và thực hiện phép thử rút ra một lá từ bộ bài,

như vậy có tất cả 52 khả năng đầu ra. Như vậy, ta có một vài biến cố và xác suất của nó:

 "Rút ra lá bài vừa đỏ vừa đen cùng một lúc" (0 phần tử), xác xuất = 0/52 = 0

 "Lá bài rút ra là con 5 cơ" (1 phần tử), xác xuất = 1/52

 "Lá bài rút ra là con Già" (4 phần tử), xác xuất = 4/52

 "Lá bài rút ra là một lá bài" (52 phần tử), xác xuất = 52/52 = 1 1.1.1 Công thức tính xác suất

Thường thì (nếu không đi sâu vào các vấn đề phức tạp), ta có thể tính được xác suất bằng trực giác, đơn giản xác suất trong các trường hợp trên là lấy tỉ lệ.

Công thức cổ điển

Tổng quát, người ta định nghĩa xác suất như sau: P(A) = mA / n

(18)

với mA là số biến cố sơ cấp thuận lợi cho A, tức là, một cách tương đối1, các biến cố mà nó

xảy ra thì A xảy ra. Còn n là số biến cố sơ cấp đồng khả năng, tức là tất cả các trường hợp có thể xảy ta khi thực hiện phép thử.

Công thức tính xác suất theo thống kê

Định nghĩa xác suất cổ điển có những hạn chế (những trường hợp không tính được xác suất) là:

 Nó chỉ xét trong trường hợp số biến cố sơ cấp (n) là hữu hạn.

 Và chỉ xét trong trường hợp hệ biến cố là đồng khả năng2. Do đó, người ta đưa ra thêm định nghĩa xác suất theo thống kê:

P(A) = lim (m/n), n  ∞

trong đó, n là số lần thực hiện phép thử còn m là số lần biến cố A xuất hiện.

Trong thực tế, n không cần tới vô cùng, tùy theo trường hợp mà người ta chọn một số n lớn là được. Khi đó, ta có

P(A) ≈ m/n 1.1.2 Xác suất có điều kiện

Quan sát lược đồ bên cạnh.

Lấy ngẫu nhiên một điểm M trong hình E. Gọi A là biến cố M ∈ A và B là biến cố M ∈ B.

Giả sử biến cố B đã xảy ra, bằng trực giác ta có thể thấy các biến cố sơ cấp thuận lợi cho biến cố A chính là phần giao giữa A và B: A ⋂ B.

Vì vậy xác suất để A xảy ra khi B đã xảy ra là:

P(A|B) = S(A⋂B) / S(B), với S là diện tích.

P(A|B) được gọi là xác xuất có điều kiện, đọc là “Xác xuất để A xảy ra khi B đã xảy ra”. Có lẽ không phải nói, P(A|B) và P(A) = S(A) / S(E) không bằng nhau.

Tiếp theo, chia tử và mẫu cho S(E) ta được:

P(A|B) = [S(A⋂B) / S(E)] / [S(B) / [S(E)] = P(AB) / P(B), với P(B) > 0 trong đó AB là biến cố xảy ra khi A và B đồng thời xảy ra.

1 Để giải thích đầy đủ thế nào là một biến cố sơ cấp thuận lợi sẽ phải đi sâu vào khái niệm biến cố. Ta sẽ

không làm điều đó ở đây. Nếu quan tâm bạn có thể đọc các tài liệu về xác suất.

2 Hệ biến cố đồng khả năng là hệ biến cố mà các biến cố xảy ra hoàn toàn không có thứ tự ưu tiên nào.

(19)

Trên đây chỉ là một ví dụ, nhưng ta sẽ thấy công thức tính xác suất có điều kiện cũng giống như vậy.

Một cách tổng quát, người ta định nghĩa công thức xác suất có điều kiện như sau: P(A|B) = P(AB) / P(B), với P(B) > 0

Ta nói đến xác suất có điều kiện ở đây vì dưới đây ta sẽ đề cập đến khái niệm kz vọng có

điều kiện.

Như vậy đến đây ta có các khái niệm cơ bản về phép thử, biến cố và xác suất.

Tuy nhiên, các biến cố như vậy vẫn mới chỉ được miêu tả bằng lời, không thể dùng trong tính toán định lượng. Và biến ngẫu nhiên đã ra đời để giải quyết vấn đề này.

1.2 Biến ngẫu nhiên

Biến ngẫu nhiên (random variable) có thể hiểu đơn giản là một ánh xạ. Nó ánh xạ một biến cố với giá trị số.

Ví dụ: Trong phép thử gieo một đồng xu, ta có thể có một ánh xạ như sau:

X(biến cố) = 0 nếu biến cố="được mặt hình" 1 nếu biến cố="được mặt số" Một ví dụ khác là phép thử giao xúc xắc, ta có thể có ánh xạ như sau:

X(số chấm) = số chấm trong đó “số chấm” là số chấm gieo được của xúc xắc. Mỗi X trong các ví dụ trên được gọi là một biến ngẫu nhiên.

Như vậy, biến ngẫu nhiên không có nghĩa là một biến như các biến toán học khác. Thực chất nó là một hàm số (hay ánh xạ).

Các kết quả đầu ra được ánh xạ bởi biến ngẫu nhiên được gọi là giá trị của biến ngẫu

nhiên. Trong ví dụ gieo đồng xu, biến ngẫu nhiên X có 2 giá trị 0 và 1. Trong ví dụ tung xúc

xắc, biến ngẫu nhiên X có 6 giá trị 1, 2, 3, 4, 5 và 6.

1.3 Hàm xác suất

Đối với biến ngẫu nhiên rời rạc, hàm xác suất, còn gọi là hàm khối xác suất (tiếng Anh: Probability mass function), ký hiệu là p(x) được định nghĩa như sau:

p(x) = 𝑝1, 𝑥 = 𝑥1 𝑝2, 𝑥 = 𝑥2 𝑝3, 𝑥 = 𝑥3 … 𝑝𝑛, 𝑥 = 𝑥𝑛 0 , 𝑥 𝑘𝑕á𝑐

(20)

trong đó, x1, x2,… xn là các giá trị của biến ngẫu nhiên, và p1, p2,… pn là xác suất tại các biến

cố có giá trị tương ứng. p(x) = 0 tại các x khác vì đó là các biến cố không thể xảy ra (giống như biến cố bóc được lá bài vừa đỏ vừa đen trong bộ bài).

Hàm này là hàm đặc trưng cho một biến ngẫu nhiên rời rạc.

Nói thêm: Đối với biến ngẫu nhiên liên tục, có một hàm tương đương là hàm mật độ. Về trực giác, hàm mật độ chính là hàm xác suất được làm mịn, tức là các giá trị x gần như

liên tiếp nhau (xk+1 – xk ≈ 0). Hàm mật độ được ký hiệu là f(x) (khác với hàm tích lũy F(x)).

1.4

Hàm tích lũy

Hàm tích lũy còn gọi là hàm phân phối xác suất, được định nghĩa như sau (chung cho cả biến ngẫu nhiên rời rạc và liên tục):

F(x) = P[X<x], ⩝x ∈ R

Lưu {: 2 hàm xác suất (mật độ) và tích lũy đều có thể dùng để đặc trưng cho một biến ngẫu nhiên. Tuy nhiên, trong ứng dụng, người ta thường dùng hàm xác suất (mật độ) hơn. Khi người ta nói đến phân phối xác suất của một biến ngẫu nhiên, chính là đang đề cập đến hàm đặc trưng của nó, và thông thường là hàm xác suất.

1.5 Các đặc trƣng số của biến ngẫu nhiên

1.5.1 Kỳ vọng

Kz vọng (expected value) của một biến ngẫu nhiên X, còn gọi là kz vọng toán hay giá trị kz

vọng, được định nghĩa như sau (đối với biến ngẫu nhiên rời rạc):

E(X) = ∑xipi

Có thể diễn đạt bằng lời: Kz vọng là tổng của tích giá trị (biến ngẫu nhiên) với xác suất tại đó.

Ví dụ: Một hộp có 8 viên bi, 3 viên có trọng lượng 40g, 5 viên có trọng lượng 60g. Gọi X là

biến ngẫu nhiên có giá trị là trọng lượng có các viên bi (hay nói cách khác, X là trọng lượng mỗi viên bi). Ta tính được kz vọng của X:

E(X) = 40 * 3/8 + 60 * 5/8 = 52.5

Trong ví dụ trên, ta thấy E(X) là trọng lượng trung bình của một viên bi.

Một cách tổng quát, về { nghĩa, kz vọng chính là giá trị trung bình (về mặt xác suất) của một biến ngẫu nhiên.

Ví dụ: Trong “trò chơi” số đề, người chơi đặt 1 số từ 00 – 99. Nếu người chơi đặt 1 đồng thì

khi thắng sẽ thu được 70 đồng, nếu không thì mất 1 đồng. Vậy nếu gọi X là biến ngẫu nhiên có giá trị là số tiền thắng được của người chơi thì ta có kz vọng của X là:

(21)

E(X) = 70 * 1/100 + -1 * 99/100 = -0.29

Như vậy có nghĩa là trung bình cứ đặt 1 đồng, người chơi sẽ “thu về” -0.29 đồng (mất đi 0.29 đồng).

Nói thêm: một trò chơi có kz vọng khác 0 được coi là trò chơi không công bằng. Trong trò chơi số đề trên, người chơi lỗ.

1.5.1.1 Các tính chất của kỳ vọng

Kz vọng có tính tuyến tính, nghĩa là nó có tính chất sau:

E(aX + bY) = aE(X) + bE(Y), với X, Y là 2 biến ngẫu nhiên; a, b là 2 hằng số Nói cách khác, nó bao gồm các tính chất sau:

 E(c) = c, với c = hằng số

 E(c.X) = c.E(X)

 E(X + Y) = E(X) + E(Y), với X, Y là 2 biến ngẫu nhiên

Kz vọng không có tính nhân, nghĩa là E(X.Y) không bằng E(X).E(Y). Lượng sai khác giữa E(X.Y) và E(X).E(Y) là hiệp phương sai cov(X,Y) (sẽ nói bên dưới):

cov(X.Y) = E(X.Y) - E(X).E(Y) E(X.Y) chỉ bằng E(X).E(Y) khi 2 biến ngẫu nhiên là độc lập:

E(X.Y) = E(X).E(Y), với X và Y là 2 biến ngẫu nhiên độc lập Ta sẽ nói lại vấn đề này trong phần Hiệp phương sai.

Ngoài ra dễ thấy một tính chất nữa là về mặt đơn vị thì E(X) có cùng đơn vị với X, ví dụ nếu X có đơn vị là gram thì E(X) cũng có đơn vị là gram.

1.5.1.2 Kỳ vọng có điều kiện

Cho 2 biến ngẫu nhiên X và Y, ta có khái niệm kz vọng có điều kiện được định nghĩa như sau:

E[X|Y](y) = E[X|Y = y] = 𝑥𝑥 .P( X=x|Y=y )

trong đó y là một biến cố mà biến ngẫu nhiên Y ánh xạ, ký hiệu Y=y nghĩa là xảy ra biến cố y. P( X=x|Y=y ) là xác suất có điều kiện (xem mục 2.1.2).

Nói thêm: Kz vọng lặp là một khái niệm dựa trên kz vọng có điều kiện: E( E[X|Y] ) = E(X)

E( E[X|Y] ) gọi là kz vọng lặp. Chứng minh:

(22)

1.5.1.3 Kỳ vọng của ma trận

Nếu biến ngẫu nhiên X là một ma trận thì kz vọng của nó là ma trận các kz vọng của các phần tử của X: E(X) = E( 𝑥1,1 𝑥1,2 ⋯ 𝑥1,𝑛 𝑥2,1 𝑥2,2 ⋯ 𝑥2,𝑛 ⋮ ⋮ ⋱ ⋮ 𝑥𝑚 ,1 𝑥𝑚 ,2 ⋯ 𝑥𝑚 ,𝑛 ) = 𝐸(𝑥1,1) 𝐸(𝑥1,2) ⋯ 𝐸(𝑥1,𝑛) 𝐸(𝑥2,1) 𝐸(𝑥2,2) ⋯ 𝐸(𝑥2,𝑛) ⋮ ⋮ ⋱ ⋮ 𝐸(𝑥𝑚 ,1) 𝐸(𝑥𝑚 ,2) ⋯ 𝐸(𝑥𝑚 ,𝑛) Tính chất này được dùng trong ma trận hiệp phương sai (sẽ đề cập bên dưới). 1.5.2 Phương sai

Phương sai (variance) của một biến số ngẫu nhiên rời rạc X được định nghĩa như sau: var(X) = E[(X - µ)2]

trong đó µ là kz vọng của X, µ = E(X).

Một cách trực giác, nếu coi kz vọng là trung bình, thì phương sai chính là “khoảng cách bình phương” trung bình từ các giá trị của X tới kz vọng. Hay nói cách khác, nếu các giá trị (của biến ngẫu nhiên X) càng phân tán (nằm xa) giá trị trung bình (kz vọng) thì var(X) càng lớn và ngược lại.

Một công thức phương sai tương đương là:

var(X) = E(X2) - µ2

Chứng minh: Sử dụng các tính chất của kz vọng ta có thể chứng minh công thức này như sau:

var(X) = E[(X - µ)2] = E[ X2 – 2X µ + µ2 ] = E(X2) – E(2X µ) + E(µ2) = E(X2) – 2 µ E(X) + µ2 = E(X2) – 2 µ2 + µ2

(23)

= E(X2) - µ2

Nói thêm: Theo ý kiến cá nhân của tôi, có thể người ta muốn đo độ phân tán quanh giá trị trung bình của các giá trị của biến ngẫu nhiên nên muốn tính E(|X-µ|). Tuy nhiên việc dùng giá trị tuyệt đối đã dẫn tới khó khăn nào đó trong việc phát triển các công thức nên người ta đã thay trị tuyệt đối bằng bình phương. Dù sao đây chỉ là suy diễn cá nhân về nguồn gốc phương sai.

Về mặt đơn vị, phương sai có đơn vị là bình phương đơn vị của X. Ví dụ X có đơn vị là cm thì var(X) sẽ có đơn vị cm2.

Người ta đưa ra thêm khái niệm độ lệch chuẩn, ký hiệu σ(X), được tính bằng căn bậc 2 của phương sai:

σ(X) = var(x)

Với định nghĩa của phương sai, ta dễ thấy nó luôn ≥ 0, vì vậy không cần điều kiện gì ở đây. Như vậy, độ lệch chuẩn, do kế thừa tính chất của phương sai, cũng có thể dùng để so sánh sự phân tán của các giá trị quanh giá trị kz vọng: σ càng lớn thì các giá trị càng nằm xa (phân tán) giá trị kz vọng.

Một thuận lợi của độ lệch chuẩn là nó có cùng đơn vị với độ lệch chuẩn.

Nói thêm: Có vẻ như độ lệch chuẩn là sự quay trở về mong muốn ban đầu: tính toán “khoảng cách phân tán trung bình” (chứ không phải “khoảng cách bình phương trung bình” – phương sai). “Khoảng cách phân tán trung bình” mà tôi nói là E(|X-µ|). Mặc dù độ lệch chuẩn không bằng “khoảng cách phân tán trung bình” này ( σ≠E(|X-µ|) ) nhưng cũng chẳng có vấn đề gì khi dùng nó để giải quyết vấn đề mà người ta mong muốn “khoảng cách phân tán trung bình” giải quyết: tính toán sự phân tán của các giá trị quanh giá trị kz vọng của một biến ngẫu nhiên.

1.6 Moment của biến ngẫu nhiên

Moment được đề cập ở mục này là moment trong toán và xác suất thống kê, nó khác với khái niệm moment của ảnh (sẽ nói bên dưới) cũng như moment trong vật lý.

Cho F là một biến ngẫu nhiên, ta có đại lượng E(Fk) được gọi là moment bậc k của F, và đại

lượng E[ ( F-E(F) )k ] được gọi là moment trung tâm bậc k của F.

Rõ ràng, kz vọng mà chúng ta đề cập trong các mục trước chính là moment bậc 1 của biến ngẫu nhiên. Còn phương sai chính là moment trung tâm bậc 2.

Nói thêm: Thông thường để tiếp cận một vấn đề mới lạ, chúng ta thường (và có lẽ là nên) bắt đầu từ trực giác rồi đến một sự tổng quát đơn giản (gần trực giác) và sau đó là sự tổng quát hóa và mở rộng. Có thể khái niệm moment ra đời sau các khái niệm phương sai và độ lệch chuẩn, vì bạn có thể thấy nó là sự tổng quát hóa và mở rộng của các khái niệm này.

(24)

Chúng ta có thể đặt câu hỏi các moment khác kz vọng và phương sai có { nghĩa gì không. Hầu như mọi sự tổng quát hóa đều rất có { nghĩa đối với sự phát triển. Các moment của biến ngẫu nhiên cho ta các thông tin về dáng điệu của phân bố xác suất (hình dạng của đồ thị hàm xác suất (hay hàm mật độ đối với biến ngẫu nhiên liên tục)) của biến ngẫu nhiên đó.

Ví dụ, nếu moment trung tâm bậc 2 (phương sai) của biến ngẫu nhiên F nhỏ, thì có nghĩa là các giá trị của F nói chung ít bị sai lệch so với giá trị kz vọng của nó, hay nói cách khác phần lớn xác suất của phân bố xác suất của F tập trung trong một khoảng nhỏ xung quanh điểm giá trị kz vọng. Ngược lại, nếu moment trung tâm bậc 2 lớn, thì phân bố xác suất của F nói trung sẽ phân tán ra xa điểm giá trị kz vọng hơn. Đây là { nghĩa ta đã nói ở trên.

Ví dụ: Có 2 hộp bi, mỗi hộp đựng 12 viên bi. Gọi biến là biến ngẫu nhiên ánh xạ khối lượng (đơn vị gram) các viên bi, nói cách khác X là khối lượng các viên bi. Ta có:

Hộp 1: X (gram) 30 40 50 60 70 Số lượng 3 4 1 1 3 Hộp 2: X (gram) 30 40 50 60 70 Số lượng 2 3 4 2 1

Cả hai hộp đều có E(X) = 47.5 (gram) (kz vọng: khối lượng trung bình) Nhưng phương sai thì khác nhau: (nhắc lại: var(X) = E(X2) – (E(X))2)

 Hộp 1: var(X) = 2491.67 – 47.52 = 235.42

 Hộp 2: var(X) = 2391.67 – 47.52 = 135.42

(25)

Biểu đồ 1.6-1 Phân phối xác suất của X hộp 1, phương sai lớn hơn: các giá trị phân tán xa kỳ vọng hơn

Biểu đồ 1.6-2 Phân phối xác suất của X hộp 2, phương sai nhỏ hơn: các giá trị tập trung hơn quanh kỳ vọng Moment trung tâm bậc 3 của F thể hiện độ lệch (skewness) của phân bố xác suất của F:

Nếu F có phân bố xác suất đối xứng quanh điểm giá trị kỳ vọng (có nghĩa là F và 2E(F) - F có cùng phân bố xác suất), thì moment trung tâm bậc 3 của nó bằng 0. Nếu như moment trung tâm bậc 3 lớn hơn không thì phân bố xác suất của F được gọi là lệch dương hay lệch về bên phải (phần đuôi bên phải dài hơn), còn nếu moment trung tâm bậc 3 nhỏ hơn không thì phân bố xác suất của F được gọi là lệch âm hay lệch về bên trái (phần đuôi bên trái dài hơn). 0.25 0.33 0.08 0.08 0.25 30 40 50 60 70 X ác s u ất P (X ) X (khối lượng) Kỳ vọng 47.5| 0.17 0.25 0.33 0.17 0.08 30 40 50 60 70 c su t P (X) X (khối lượng) Kỳ vọng 47.5 |

(26)

Ví dụ: Giả sử có một biến ngẫu nhiên F với phân bố xác suất rời rạc sau:

F -2 1 3

p(F) 1/2 1/4 1/4

Khi đó giá trị kz vọng của F: E(F) = 0, moment trung tâm bậc 3 của F bằng: E[ (F-E(F))3 ] = -23.1/2 + 13.1/4 + 33.1/4 = 3 > 0

Đồ thị phân bố xác suất của F có phần đuôi lệch về bên phải so nếu lấy điểm giá trị kz vọng (F=0).

Biểu đồ 1.6-3 Moment trung tâm bậc 3 lớn hơn 0: lệch dương (đuôi bên phải dài hơn)

Còn moment trung tâm bậc 4 có liên quan đến công thức tính kurtosis mà ta có thể coi là “độ nhọn” của phân bố xác xuất so với phân bố chuẩn3, nếu “độ nhọn” này lớn hơn 0 thì biến ngẫu nhiên có đồ thị của phân bố xác suất “nhọn” hơn phân bố chuẩn, ngược lại thì nó “bẹt” hơn. Xem thêm tại tài liệu [3].

3 Phân bố chuẩn (normal distribution) là phân bố xác suất thường dùng trong thực tế. Ta sẽ nói đến phân bố

này trong các mục sau. 0.50 0.25 0.25 -2 1 3 X ác s u ất P (F ) F Kỳ vọng | 0 (+) Phân bố lệch dương (đuôi phải dài hơn) (-) Phân bố lệch âm

(27)

Hình 1.6-1 Các phân phối xác suất và "độ nhọn". Đường ở giữa: phân phối chuẩn.

1.7 Hiệp phƣơng sai

1.7.1 Định nghĩa

Cho 2 biến ngẫu nhiên X và Y, ta có định nghĩa hiệp phương sai (covariance) của X và Y , ký hiệu Cov(X,Y):

Cov(X,Y) = E[ (X-µx)(Y- µy) ]

trong đó µx, µy lần lượt là kz vọng của X, Y.

Một công thức tương đương của hiệp phương sai: Cov(X,Y) = E (X Y) - µxµy Chứng minh: Sử dụng các tính chất của kz vọng.

Cov(X,Y) = E[ (X-µx)(Y- µy) ]

= E( XY - µxY - X µy + µxµy )

= E(XY) - E(µxY) - E(X µy) + E(µxµy)

= E(XY) - µxE(Y) - µy E(X) + µxµy

= E(XY) - 2µxµy + µxµy

= E (X Y) - µxµy

Theo công thức thứ nhất, một cách trực giác, ta có thể thấy { nghĩa của hiệp phương sai, đó là sự biến thiên cùng nhau của 2 biến ngẫu nhiên: Nếu 2 biến có xu hướng thay đổi cùng nhau (nghĩa là, khi một biến có giá trị cao hơn giá trị kz vòng thì biến kia có xu hướng cũng cao hơn giá trị kz vọng), thì hiệp phương sai giữa hai biến này có giá trị dương. Mặt khác, nếu một biến nằm trên giá trị kì vọng còn biến kia có xu hướng nằm dưới giá trị kì vọng, thì hiệp phương sai của hai biến này có giá trị âm.

(28)

Nếu 2 biến ngẫu nhiên là độc lập (sự biến thiên của chúng không liên quan nhau) thì hiệp phương sai của chúng bằng 0.

X,Y độc lập  Cov(X,Y) = 0

Tuy nhiên điều ngược lại không đúng: nếu hiệp phương sai của X, Y bằng 0 thì không nhất thiết 2 biến này độc lập. Các biến ngẫu nhiên mà có hiệp phương sai bằng 0 được gọi là

không tương quan (uncorrelated), chúng có thể độc lập nhau hoặc không.

Chúng ta đã từng đề cập trong phần kz vọng: Kz vọng không có tính nhân, và lượng khác biệt giữa kz vọng của tích và tích các kz vọng là hiệp phương sai:

Cov(X,Y) = E(X Y) - µxµy

đây cũng là công thức mà chúng ta vừa trình bày.

Như vậy, nếu X, Y độc lập, ta có Cov(X,Y) = 0  E(X,Y) = µxµy

Cũng từ công thức định nghĩa hiệp phương sai, ta thấy đơn vị của hiệp phương sai là tích đơn vị của X và Y, ví dụ X có đơn vị là m, Y có đơn vị là kg thì cov(X,Y) có đơn vị m.kg. 1.7.2 Tính chất

Với X, Y là 2 biến ngẫu nhiên, a, b là các hằng số (theo nghĩa a, b không là biến ngẫu nhiên) ta có các tính chất sau được suy ra từ định nghĩa hiệp phương sai và tính chất kz vọng:

 Cov(X,X) = Var(X)

 Cov(X,Y) = Cov(Y,X)

 Cov(aX, bY) = abCov(X,Y)

 Cov(X1+X2, Y1+Y2) = Cov(X1, Y1) + Cov(X2, Y1) + Cov(X1, Y2) + Cov(X2, Y2)

Tổng quát, với các biến ngẫu nhiên X1, X2,… Xn và Y1, Y2,… Ym ta có:

Cov(∑x Xi, ∑Y Yj) = ∑X∑Y Cov(Xi, Yj)

 Var(X1 + X2) = Var(X1) + Var(X1) + 2Cov(X1, X2)

Tổng quát, với các biến ngẫu nhiên X1, X2,… Xn ta có:

Var(∑x X) = ∑x Var(X) + 2 i, j:i<jCov(Xi, Xj)

Nói thêm: Ngoài khái niệm hiệp phương sai, người ta còn có khái niệm hệ số tương quan,

ký hiệu ρX, Y, bằng hiệp phương sai chia cho tích độ lệch chuẩn (σ)của 2 biến ngẫu nhiên.

ρX, Y = Cov(X,Y) / σXσY

Hệ số tương quan đặc trưng cho quan hệ tuyến tính của 2 biến ngẫu nhiên, nếu 2 biến ngẫu nhiên có trị tuyệt đối hệ số tương quan càng gần bằng 1 thì chúng càng có quan hệ tuyến tính, và ngược lại. Nếu 2 biến ngẫu nhiên có hệ số tương quan = 0 thì chúng không có quan hệ tuyến tính. Về mặt đơn vị, hệ số tương quan lại không có đơn vị (khác với phương sai có đơn vị là bình phương đơn vị của X và độ lệch chuẩn có đơn vị là đơn vị của X).

(29)

1.8 Ma trận hiệp phƣơng sai

4

Như chúng ta vừa trình bày, hiệp phương sai là đại lượng tính toán sự tương quan giữa 2 biến ngẫu nhiên.

Vậy giả sử chúng ta có một vector biến ngẫu nhiên5 có 3 phần tử X1, X2, X3. Nếu ta muốn

tính sự tương quan giữa tất cả các cặp biến ngẫu nhiên thì ta phải tính tất cả là 3 hiệp phương sai: Cov(X1, X2), Cov(X1, X3), Cov(X2, X3).

Một cách tổng quát, ma trận hiệp phương sai đã ra đời để cho phép ta tính tất cả các Cov giữa 2 biến ngẫu nhiên trong một vector biến ngẫu nhiên.

Cho một vector biến ngẫu nhiên X chứa n biến ngẫu nhiên, ma trận hiệp phương sai của X, ký hiệu là ∑, được định nghĩa là: ∑ = 𝐶𝑜𝑣 𝑋1, 𝑋1 𝐶𝑜𝑣 𝑋1, 𝑋2 ⋯ 𝐶𝑜𝑣 𝑋1, 𝑋𝑛 𝐶𝑜𝑣 𝑋2, 𝑋1 𝐶𝑜𝑣 𝑋2, 𝑋2 ⋯ 𝐶𝑜𝑣 𝑋2, 𝑋𝑛 ⋮ ⋮ ⋱ ⋮ 𝐶𝑜𝑣 𝑋𝑛, 𝑋1 𝐶𝑜𝑣 𝑋𝑛, 𝑋2 ⋯ 𝐶𝑜𝑣 𝑋𝑛, 𝑋𝑛 với X = 𝑋1 ⋮ 𝑋𝑛

Nói dễ hiểu, ma trận hiệp phương sai là “nơi chứa” các hiệp phương sai. Mỗi phần tử của nó là một hiệp phương sai của 2 biến ngẫu nhiên Xi và Xj với i là chỉ số hàng và j là chỉ số

cột (i, j = 1..n).

Quan sát trên đường chéo của ma trận hiệp phương sai (i=j) ta thấy tại đó là các phương sai, vì: Cov(Xi, Xi) = Var(Xi).

1.9 Phân phối chuẩn (phân phối Gauss)

Trong các mục vừa rồi chúng ta đã tìm hiểu khá đủ các khía cạnh cơ bản của một biến ngẫu nhiên.

Chúng ta cũng đã đề cập đến hàm xác suất (hàm mật độ) là hàm đặc trưng cho một phân

phối xác suất. Nói một cách đơn giản phân phối xác suất (hay phân bố xác suất) là một

thuật ngữ dùng để chỉ sự phân bố các xác suất của một biến ngẫu nhiên.

Trong ví dụ về hộp bi ở mục 1.6, chúng ta có một hộp đựng 12 viên bi. Gọi biến là biến ngẫu nhiên ánh xạ khối lượng (đơn vị gram) các viên bi, nói cách khác X là khối lượng các viên bi. Ta có:

4 Tài liệu [4] Lindsay I Smith, A tutorial on Principal Components Analysis, 2002, có nói về ma trận hiệp

phương sai và ứng dụng của nó trong phân tích thành phần chính (mục 2.1.4 The covariance Matrix). Bạn cũng có thể tham khảo cách nói dễ hiểu về các khái niệm xác suất ứng dụng trong tin học trong quyển này.

(30)

X (gram) 30 40 50 60 70

Số lượng 3 4 1 1 3

Bảng trên cũng là một cách để biểu diễn phân phối xác suất của X, bởi vì nếu ta lấy số lượng chia cho 12 (tổng số bi) ta sẽ xác suất của bi có khối lượng tương ứng. Hoặc ta có đồ thị:

Biểu đồ 1.9-1 Đồ thị phân phối xác suất của X Đồ thị trên cũng là một cách biểu diễn một phân phối xác suất.

Nói tóm lại, khi ta nói đến một phân phối xác suất là ta muốn nói về phân phối các xác suất của các giá trị của một biến ngẫu nhiên, tức là phân phối xác suất cho biết mỗi giá trị của biến ngẫu nhiên sẽ nhận xác suất là bao nhiêu.

Có rất nhiều phân phối xác suất, ví dụ của chúng ta vừa nói tới cũng là một phân phối xác suất. Tuy nhiên, trong thực tế, người ta thường sử dụng một phân phối xác suất có tên là phân phối chuẩn (normal distribution), hay phân phối Gauss.

Một biến ngẫu nhiên X được nói là có phân phối Gauss khi nó có hàm mật độ là hàm Gauss, ký hiệu là X∼N(µ, σ), đọc là X có phân phối chuẩn (hay phân phối Gauss) với tham số µ, σ (2 tham số đặc tả một hàm Gauss). Khi đó hàm mật độ của X là:

f(x; µ, σ) =

𝜑

µ,𝜎2(x)= 1 σ 2π

e

-(x-μ)2

2σ2

Với phân phối xác suất như trên, người ta tính được µ, σ lần lượt chính là kz vọng và độ lệch chuẩn của X.

Dưới đây là đồ thị của một số phân phối chuẩn.

0.25 0.33 0.08 0.08 0.25 30 40 50 60 70 c su ất P (X ) X (khối lượng) Kỳ vọng 47.5 |

(31)

Biểu đồ 1.9-2 Đồ thị của một số phân phối chuẩn Với μ = 0 và σ = 1, phân phối được gọi là phân phối chuẩn chuẩn hóa.

Quan sát đồ thị ta thấy phân phối chuẩn có dạng đối xứng. Giá trị kz vọng của X là μ, chính là trục đối xứng. Và độ lệch chuẩn σ (hay phương sai σ2) càng lớn thì đồ thị của nó càng “bẹt”, điều này phù hợp với hiểu biết của chúng ta: khi độ lệch chuẩn lớn thì các giá trị càng phân tán ra xa kz vọng.

1.10 Ƣớc lƣợng

Trong mục này ta sẽ đề cập một số khái niệm liên quan đến vấn đề ước lượng (estimation).

Khái niệm

Ước lượng là phỏng đoán giá trị chưa biết dựa vào các quan sát. Có 2 loại:

 Ước lượng điểm: Giá trị ước lượng là một số. Ví dụ, một chiếc xe đang chạy với vận tốc khoảng 40km/h.

 Ước lượng khoảng: Giá trị ước lượng là một đoạn [a, b]. Ví dụ, một chiếc xe đang chạy với vận tốc khoảng 35 đến 40 km/h.

Trong báo cáo này ta chỉ đề cập đến ước lượng điểm.

(32)

Gọi a là một giá trị chưa biết, khi đó người ta ký hiệu ước lượng điểm của a là â (có thể đọc là “a mũ”), và ta viết a ≈ â.

Thống kê

Trong ước lượng, người ta có khái niệm thống kê: Thống kê là một đại lượng mà giá trị của nó chỉ phụ thuộc vào các quan sát, không phụ thuộc vào các tham số chưa biết.

Ví dụ: Các biểu thức dùng để tính các điều sau là các thống kê:

 Tỉ lệ học sinh giỏi.

 Điểm trung bình của sinh viên.

Như vậy, chúng ta dựa vào các thống kê để tìm ra giá trị ước lượng, vì cậy người ta còn gọi thống kê là hàm ước lượng.

Một cách tổng quát nếu ta có mẫu6 {x1, x2,… xn}, thì hàm θ :

θ = θ (x1, x2,… xn)

dùng để tính ra giá trị ước lượng θ cho tham số θ được gọi là hàm ước lượng.

Ước lượng không chệch (unbiased estimators)

Hàm ước lượng θ gọi là ước lượng không chệch của tham số θ nếu như: E(θ ) = θ.

Người ta chứng minh được các ước lượng sau đây là các ước lượng không chệch của cá tham số tương ứng:

Tham số Ký hiệu Ước lượng không chệch

Trung bình µ X

Phương sai Var (hay σ2) S2

Độ lệch chuẩn σ2 S

6 Mẫu: có thể hiểu là bộ dữ liệu quan sát. Để có một định nghĩa đầy đủ, xin tham khảo các tài liệu về thống

(33)

Tỷ lệ các phần tử có tính chất nào đó

p f

Bảng 1.10-1 Bảng các ước lượng không chệch

với X , f , S2, S, lần lượt là trung bình, tỷ lệ các phần tử có tính chất quan tâm, phương sai và độ lệch chuẩn của mẫu quan sát.

Hoặc nói cách khác:

 Trung bình mẫu X là ước lượng không chệch cho trung bình của đám đông7

.

 Phương sai mẫu S28 (độ lệch chuẩn S) là ước lượng không chệch cho phương sai (độ lệch chuẩn) của đám đông.

 Tỷ lệ các phần tử có tính chất quan tâm f là ước lượng không chệch cho tỷ lệ các phần

tử đó của đám đông.

Ví dụ: để tìm tỷ lệ người biết nói 2 ngoại ngữ của một nước (đám đông), người ta khảo sát

một bộ phận dân cư (mẫu). Tỷ lệ người biết nói 2 ngoại ngữ trong bộ phận dân cư này là một ước lượng không chệch của tỷ lệ người biết nói 2 ngoại ngữ trong cả nước.

Nói thêm: Thường thì đám đông rất lớn nên khảo sát toàn bộ (cho kết quả chính xác) gần như không thể, do đó người ta dùng mẫu, đó là một tập con của đám đông mà người hy vọng khảo sát nó sẽ cho kết quả muốn biết ở đám đông.

Ví dụ: để khảo sát chiều cao trung bình của người từ độ tuổi 15-18, người ta không thể do hết tất cả những người trong độ tuổi này (đám đông), do đó người ta chọn ra một số người để đo chiều cao (mẫu). Bằng nhiều phương pháp người ta có thể đảm bảo hoặc khẳng định rằng kết quả từ mẫu là đúng với đám đông. Ước ượng không chệch làm được phần nào mục đích đó.

Ngoài ra người ta còn có khái niệm ước lượng hiệu quả, ước lượng vững. Xin xem thêm các tài liệu về thống kê nếu muốn biết chi tiết.

Độ chệch (bias)

Gọi θ là một ước lượng của θ, ta có định nghĩa độ chệch là: Bias(θ ) = E(θ ) – θ Với ước lượng không chệch ta có Bias bằng 0.

7

Đám đông là tập hợp các phần tử cần khảo sát.

8 Chính xác là phương sai mẫu hiệu chỉnh. Với số lượng các phần tử của mẫu lớn thì phương sai và phương

hiệu chỉnh gần bằng nhau. Tuy nhiên khi chứng minh thì người ta chứng minh được phương sai mẫu hiệu chỉnh là ước lượng không chệch (chứ không phải phương sai). Xin xem thêm các tài liệu về thống kê nếu

(34)

Ngoài ra còn có các khái niệm Ước lượng hiệu quả tốt nhất, Ước lượng nhất quán vững,… có thể tham khảo tài liệu [5] Cao Hào Thi, Ước lượng các tham số thống kê.

Sai số bình phương trung bình (Mean Squared Error - MSE)

Sai số bình phương trung bình của ước lượng θ được định nghĩa là: MSE(θ ) = E[ (θ – θ)2 ]

Người ta chứng minh được rằng:

MSE(θ ) = Var(θ ) + [ θ - E(θ ) ]2 Hay

MSE(θ ) = Var(θ ) + [ Bias(θ ) ]2 Nếu θ là ước lượng không chệch thì:

MSE(θ ) = Var(θ ), vì Bias(θ ) = 0

1.11 Nguyên tắc trực giao (Orthogonality principle)

Nguyên tắc trực giao được dùng nhiều nhất trong thiết lập ước lượng tuyến tính.[6]

Nguyên tắc trực giao được dùng để tối ưu ước lượng. Nó có thể được dùng để tìm ước lượng có sai số bình phương trung bình nhỏ nhất (Minimum MSE - MMSE).[6]

Gọi x là một vector ngẫu nhiên9 chưa biết sẽ được ước lượng dựa trên vector quan sát10 y. Nếu ước lượng x của x và y có quan hệ tuyến tính:

x = Hy + c, với H là một ma trận và c là một vector nào đó.

Khi đó, nguyên tắc trực giao phát biểu rằng ước lượng 𝐱 sẽ có sai số bình phương trung bình nhỏ nhất (MMSE) khi và chỉ khi:

E[ (𝐱 - x)yT ] = 0, và E(𝐱 - x) = 0

9 Nhắc lại: vector ngẫu nhiên đơn giản là một bộ các biến ngẫu nhiên. Ví dụ ta có thể gọi tọa độ một điểm

trong không gian 2 chiều là một vector ngẫu nhiên, vì 2 tọa độ x và y của nó có thể xem là 2 biến ngẫu nhiên.

10 Vector quan sát ở đây là ma trận cùng kích thước với vector ngẫu nhiên x cần tìm. Ví dụ: vector x cần tìm là

một vector cột 2x1 thì vector quan sát y cũng là vector cột 2x1. Nó chính là bộ dữ liệu mà ta dùng để ước lượng x. Ví dụ: ta muốn ước lượng vận tốc của một vật khi biết tọa độ của nó qua thời gian, khi đó vận tốc là x, tọa độ là vector quan sát y.

(35)

Nếu x và y có trung bình (mean, hay kz vọng) bằng 0 thì chỉ cần điều kiện thứ nhất là được (vì điều kiện thứ 2 đã tự động thỏa).

Một chút ghi chú: yT là ma trận chuyển vị của y.

Vậy nguyên tắc trực giao thực chất là hệ phương trình dùng để tìm các tham số cho một

hàm ước lượng (ở đây là H và c) để nó đạt tối ưu (theo nghĩa ước lượng này có sai số bình

phương trung bình nhỏ nhất – MMSE).

Bạn có thể xem ví dụ và phát biểu cho trường hợp tổng quát của nguyên tắc trực giao trong tài liệu [6] Orthogonality principle – Wikipedia.

Nguyên tắc này cũng như hầu hết các nội dung đã trình bày trong chương này sẽ được dùng trong xây dựng bộ lọc Kalman (Chương 2).

(36)

2

Chương

2

Bộ Lọc Kalman

Các nội dung chính:

 Giới thiệu về lọc

 Giới thiệu bộ lọc Kalman  Xây dựng bộ lọc Kalman  Bộ lọc Kalman trong OpenCV

(37)

2.1 Giới thiệu về lọc

Một cách tổng quát, lọc là loại bỏ những phần không quan tâm hoặc không có { nghĩa hoặc những phần sai sót để thu được một đầu ra tốt hơn (theo nghĩa hợp hơn với mong muốn, quan tâm của ta).

Ví dụ: Trong xử lý ảnh ta có lọc làm trơn để làm mịn ảnh, lọc trung vị để khử nhiễu muối

tiêu. Trong microphone hoặc các máy thu âm cũng có một bộ phận lọc để loại bỏ tạp âm. Hình thức hơn một chút, giả sử ta có trong một tín hiệu X bao gồm tín hiệu S (signal) ta quan tâm và nhiễu N (noise):

X(k) = S(k) + N(k)

Nếu ta biết nhiễu N dao động quanh 0 và có giá trị trung bình bằng 0: ∑N(k) / m = 0, m: số lần quan sát N(1), N(2),… N(m) cũng tức là ∑N(k) = 0

Vậy khi đó ta có:

∑X(k) = ∑(S(k) + N(k)) = ∑S(k) + ∑N(k) = ∑S(k) Nhìn theo một khía cạnh nào đó ta đã loại được nhiễu N.

Tuy nhiên, trên đây chỉ là một ví dụ. Trong thực tế các nhiễu rất đa dạng và phức tạp nên rất khó (đôi khi là không thể) loại bỏ hoàn toàn nhiễu. Bộ lọc chỉ “làm sạch” tín hiệu đến một mức độ nào đó và trong đa số trường hợp ta cũng chỉ cần có thế.

2.2 Giới thiệu bộ lọc Kalman

2.2.1 Tổng quan

Năm 1960, R.E. Kalman công bố bài báo nổi tiếng về một giải pháp đệ quy để giải quyết bài toán lọc thông tin rời rạc tuyến tính (discrete data linear filtering).[13] Bài báo có tựa đề “A New Approach to Linear Filtering and Prediction Problems”. Khoảng 50 năm trôi qua, bộ lọc Kalman đã trở nên phổ biến. Nó xuất hiện trong rất nhiều ứng dụng (xem mục 2.2.2) và bởi vì vấn đề lọc mà nó giải quyết là một vấn đề cơ bản trong rất nhiều lĩnh vực, nên nó có thể vẫn luôn còn được dùng nhiều ứng dụng mới nữa ở tương lai (trừ khi có một bộ lọc hay một giải pháp nào đó tốt hơn ra đời).

Một cách tổng quát, bộ lọc Kalman là một tập hợp các phương trình toán học giúp tối ưu ước lượng trạng thái của một hệ (theo nghĩa giá trị ước đoán có sai số bình phương trung bình nhỏ nhất – MMSE) dựa trên mô hình hệ thống (system model), giá trị đo (measurement value) và các hiểu biết về nhiễu (của hệ thống lẫn phép đo).

(38)

Trong biểu đồ trên, bộ lọc Kalman cũng như các bộ lọc khác sẽ nằm vào vị trí của hình chữ nhật Bộ lọc. Điểm khác biệt của bộ lọc Kalman là sự hiệu quả của nó.

Như phần sau sẽ trình bày, ta sẽ phương trình hóa các tín hiệu: tính hiệu đầu vào (cần đo), tín hiệu nhiễu (bao gồm sai số cảm biến), tín hiệu đo được và tín hiệu đầu ra.

Ngoài ra bộ lọc Kalman còn cho phép thêm một tín hiệu điều khiển và cũng kể đến nhiễu hệ thống (do mô hình hệ thống, khác nhiễu của phép đo nói trên).

2.2.2 Đôi nét về Rudolf Emil Kalman

Rudolf Emil Kalman sinh năm 1930 tại thủ đô Budapest, Hungary. Năm nay (2011) ông đã 81 tuổi. Ông tốt nghiệp bằng cử nhân và thạc sĩ về Electrical engineering tại học viện MIT năm 1953 và 1954. Ông nhận bằng tiến sĩ tại Đại học Columbia năm 1957.

Những vị trí chính ông phụ trách:

 Nghiên cứu toán học tại RIAS (Research Institute for Advanced Study) tại Baltimore từ 1958 – 1964.

 Giáo sư tại Đại học Standford từ 1964-1971.

 Giáo sư nghiên cứu sau đại học (Graduate Research Professor) và Giám đốc Center for Mathematical System Theory, đại học Florida, Gainesville từ 1971 – 1992.

 Từ năm 1973, ông trở thành thành viên của Mathematical System Theory tại ETH (Swiss Federal Institute of Technology), Zurich.

Ông cũng nhận nhiều giải thưởng như:

 Huy chương danh dự của IEEE (1974)

 Huy chương Centennial của IEEE (1984)

 Giải thưởng Kyoto trong công nghệ cao của tổ chức Inamori, Nhật Bản (1985)

 Giải thưởng Steele của Hội Toán học Mỹ (American Mathematical Society) (1987)

 Giải thưởng Bellman (1997)

Ông cũng là viện sĩ của Viện Hàm lâm Khoa học Quốc gia (Mỹ), Viện Hàn lâm Kỹ thuật Quốc gia (National Academy of Engineering) (Mỹ) và Viện Hàn lâm Khoa học và Nghệ thuật (American Academy of Arts and Sciences) (Mỹ).

Cảm biến (Bộ đo) Bộ lọc Tín hiệu cần đo Tín hiệu đo Tín hiệu nhiễu Sai số của cảm biến Tín hiệu đã lọc

(39)

Ông còn là viện sĩ của các viện hàm lâm ở các nước khác như Viện Hàn lâm Khoa học Hungary, Pháp và Nga. Ông cũng đã nhận nhiều bằng tiến sĩ danh dự.[7]

2.2.3 Ứng dụng của bộ lọc Kalman

Bởi vì bộ lọc Kalman giải quyết một 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.

Một số ứng dụng được liệt kê từ bài viết Kalman Filter trên Wikipedia [8]:

 Lái tự động của máy bay (Autopilot)

 Ước lượng trạng thái sạc của pin (Battery state of charge (SoC) estimation)

 Giao diện tương tác với máy tính bằng não (Brain–computer interface)

 Chaotic signals

 Định vị chuyển động (Dynamic positioning)

 Các ứng dụng trong kinh tế, đặc biệt là kinh tế vĩ mô, time series, và econometrics

 Hệ thống dẫn đường quán tính (Inertial guidance system)

 Theo dõi bằng radar (Radar tracker)

 Hệ thống định vị vệ tinh (Satellite navigation systems)

 Speech enhancement

 Dự báo thời tiết (Weather forecasting)

 Hệ thống định vị (Navigation Systems)

 Mô hình hóa 3 chiều (3D-Modelling) Ở Việt Nam có một số ứng dụng như:

 Ứ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.[9]

 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.[10]

 Ứng dụng Kalman Filter cho dự báo nhiệt độ 2m từ sản phẩm mô hình HRM.[11]

 Hệ thống dẫn đường quán tính INS/GPS.[12] 2.2.4 Ví dụ dẫn nhập

Chúng ta sẽ xem xét một ví dụ về ước lượng sau.

Giả sử ta có một vật thể chuyển động thẳng đều (vận tốc không đổi) theo phương x nào đó. Ta cần xác định vị trí của vật sau thời gian t.

Các thông tin ta biết là:

 Vận tốc của vật không đổi: v = 70 m/s.

(40)

Chúng ta cũng có một bộ phận định vị gắn trên vật thể cho chúng biết vị trí x(t) của vật thể lúc t.

Vậy là chúng ta có 2 cách xác định vị trí vật:

Cách 1: Dùng phương trình động học để tính vị trí vật

Ta có vị trí của vật tại thời điểm t là x(t) = x(0) + v.t Hay viết dưới dạng truy hồi là:

𝑥1 (0) = 0 𝑥1 (1) = 𝑥1 (0) + v = v 𝑥1 (2) = 𝑥1 (1) + v = 2v … (ký hiệu 𝑥1 có nghĩa là ước lượng vị trí cách 1) Cách 2: Sử dụng bộ phận định vị gắn trên vật

Khi đó các vị trí đơn giản là giá trị do bộ phận này cung cấp: 𝑥2 (0) = z(0)

𝑥2 (1) = z(1) 𝑥2 (2) = z(2) …

Trong đó z(k) là giá trị do bộ phận định vị cung cấp tại thời điểm k.

Đến đây ta thấy, nếu như 𝑥1 (k) = 𝑥2 (k), với mọi k, thì có vẻ như kết của tính toán và giá trị đo được của bộ phận định vị là có thể tin tưởng. Tuy nhiên, bạn sẽ thất vọng khi biết rằng đó chỉ là cảm giác của bạn, còn thực tế không phải vậy!

Bởi lẽ phép tính của bạn (trong những trường hợp phức tạp) lẫn giá trị cung cấp bởi bộ phận định vị không có cơ sở nào để khẳng định là chính xác với thực tế. Cho dù 2 kết quả này hoàn toàn trùng khớp thì cũng có thể chỉ là ngẫu nhiên.

Một trường hợp khác thường xảy ra hơn là khi 2 kết quả này không giống nhau. Vậy bạn sẽ tin tưởng kết quả nào?

Câu hỏi này đưa đến một giải pháp thứ 3, đó là kết hợp cả 2 kết quả.

Cách 3: Tính toán kết quả bằng cách tổng hợp 2 phương pháp

(41)

Cách này nhìn có vẻ ổn. Vì có thể có trường hợp 𝑥1 chính xác hơn, có trường hợp 𝑥2 chính xác hơn, nên sẽ là tốt nhất nếu tùy vào trường hợp mà ta chọn (hoặc kết hợp) kết quả một cách thích đáng.

Tuy nhiên, đến đây lại nảy sinh 2 vấn đề mới:

1. ⍺ và β phải chọn ra sao để được kết quả tối ưu?

2. Và như đã nói, ⍺ và β có thể sẽ thay đổi (để tùy trường hợp mà kết hợp 2 ước lượng cho hợp lý nhất), vậy thì đâu sẽ là căn cứ, tiêu chuẩn để ta cập nhật 2 hệ số này?

Đến đây, bộ lọc Kalman xuất hiện. 2 vấn đề chúng ta vừa nêu chính là đối tượng giải quyết của bộ lọc Kalman.

2.2.5 Mô hình tổng quát của ước lượng dùng bộ lọc Kalman

Sơ đồ khối sau sẽ mô tả mô hình tổng quát của một ước lượng dùng bộ lọc Kalman.

Chúng ta có thể ánh xạ các phần trong ví dụ ở mục 2.2.4 vào sơ đồ trên như sau:

 Mô hình hệ thống: phương trình động học x(k) = x(k-1) + v.

 Cảm biến: bộ định vị gắn trên vật.

 Giá trị ước lượng tối ưu: 𝑥3 .

 Bộ lọc Kalman: “hộp đen” tính các hệ số ⍺ và β.

Một ước lượng thực sự sử dụng bộ lọc Kalman cũng bao gồm các phần như trên.

Như vậy đến đây chúng ta đã có đầy đủ các khái niệm cần thiết để bước vào xây dựng bộ lọc Kalman (thực chất là tìm và giải các phương trình để tính toán các tham số cho ước lượng tối ưu). Mô hình hệ thống Cảm biến (bộ đo) Bộ lọc Kalman Giá trị tính toán Giá trị đo Giá trị ước lượng tối ưu 𝑋

(42)

2.3 Bộ lọc Kalman

2.3.1 Các ký hiệu sử dụng

Mục này liệt kê các ký hiệu dùng trong biểu diễn các phương trình quá trình xây dựng cũng như kết quả của bộ lọc Kalman. Các ký hiệu này được sử dụng thống nhất trong báo cáo này nhưng ở các sách và tài liệu khác có thể có hệ thống ký hiệu khác. Bạn có thể tham khảo vấn đề ký hiệu này trong mục 1.3 ON THE NOTATION USED IN THIS BOOK của tài liệu [14].

Ký hiệu Ý nghĩa

H Ma trận đo độ nhạy được dùng để xác định quan hệ tuyến tính của vector trạng thái và vector đo.

K

Ma trận độ lợi Kalman

P Ma trận hiệp phương sai của sai số ước lượng Q Ma trận hiệp phương sai của sai số hệ thống R Ma trận hiệp phương sai của sai số đo đạt

x Vector trạng thái

z Vector đo (measurement vector) Ф Ma trận chuyển trạng thái

Bảng 2.3-1 Ký hiệu chuẩn của bộ lọc Kalman

Ký hiệu Ý nghĩa

x Vector trạng thái

xk Phần tử thứ k của chuỗi các trạng thái x1, x2, x3, …

x Ước lượng của x

x k(−) Tiên nghiệm của ước lượng xk

x k(+) Hậu nghiệm của ước lượng x tại thời điểm tk

x Đạo hàm của x theo thời gian t

Bảng 2.3-2 Các ký hiệu liên quan đến vector trạng thái

Ký hiệu Tên Kích thước (hàng x cột)

Referências

Documentos relacionados

Rua 25 de Abril , Antigo Barracão(junto ao parque Infantil) Vale de Chicharos, Fogueteiro - Amora. 2845 - 166

No dia 11/02/2020, às 10:36:10 horas, o Pregoeiro da licitação - BRUNA SOUSA FERREIRA - desclassificou a proposta do fornecedor - AJR COMERCIO DE MATERIAIS PARA CONSTRUCAO LTDA, no

Se um processo tentar abrir uma fila em modo de escrita, e nesse instante não houver um processo que tenha aberto a fila em modo de acesso de leitura, o processo fica

O regresso Miguel Baptista, ao FC Porto, depois de duas época emprestasdo à Artística de Avanca, esteve dado como certo, mas o jogador acabou por assinar pelo clube francês, onde se

Este medidor adota a teoria da medição por ondas de ultrassom para verificação da espessura de diferentes tipos de materiais que sejam capazes de propagar os pulsos destas ondas

(2008), o comportamento de fase apresentado pela mistura inicial (álcool + óleo) da produção de biodiesel é categorizado como sistema do tipo II de acordo com a classificação de

Os dados de emissões nominais mostrados estão sujeitos à instrumentação, medição, fábrica e variações de motor para motor.. Os dados de emissões são baseados em carga 100% ,

(iv) Preparar os alunos para utilizarem as ferramentas informáticas disponíveis nos Sistemas de Gestão de Bases de Dados de modelo relacional, ou SGBDr, para prototipificação