v Định vị môi trường trong nhà là một nhu cầu cần thiết của người dùng thiết bị di động bởi vì hệ thống GPS không thể giúp định vị chính xác vị trí của người dùng trong tòa nhà như xác đ
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA
Trang 2Công trình được hoàn thành tại: Trường Đại học Bách Khoa –ĐHQG-HCM
Cán bộ hướng dẫn khoa học :
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1 :
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2 :
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp.HCM ngày tháng năm
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ) 1
2
3
4
5
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có) CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA…………
Trang 3
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Phan Minh Nhật MSHV:10140017 Ngày, tháng, năm sinh: 24/07/1984 Nơi sinh: T.T.Huế Chuyên ngành: Kỹ Thuật Điện Tử Mã số : 605270
I TÊN ĐỀ TÀI:
Đánh giá các phương pháp PATTERN MATCHING trong định vị bằng WLAN
II NHIỆM VỤ VÀ NỘI DUNG:
1.Thiết kế phần mềm có thể thu thập dữ liệu WIFI và ước lượng vị trí của người dùng
2 Đánh giá sai số và tốc độ tính toán của các giải thuật so sánh mẫu để ước lượng vị trí (Phương pháp: RADAR, k fingerprints, ηk-Nearest Neighbor Algorithm, ANN)
III NGÀY GIAO NHIỆM VỤ : 21/01/2013
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 21/06/2013
V CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên):
Tiến sĩ Nguyễn Minh Hoàng
Trang 4LỜI CÁM ƠN
Trong quá trình nghiên cứu, tôi gặp rất nhiều khó khăn và thiếu sót nhưng cuối cùng tôi cũng đã hoàn thành được luận văn này nhờ có sự hướng dẫn và hỗ trợ của thầy Nguyễn Minh Hoàng Xin được phép gởi đến thầy lời cám ơn sâu sắc nhất
Tôi cũng xin chân thành gửi lời cảm ơn đến các thầy cô trường Đại học Bách khoa Thành phố Hồ Chí Minh đã cung cấp những kiến thức hữu ích cho tôi để có thể thực hiện được luận văn này, đồng thời đó cũng là những nền tảng vững chắc cho tôi
để có thể ứng dụng vào những công việc mới trong tương lai
Cuối cùng chúng tôi xin gửi lời cảm ơn to lớn nhất đến những người thân trong gia đình và đặc biệt là vợ tôi đã luôn động viên và tạo điều kiện cho tôi hoàn thành tốt luận văn này
TPHCM, tháng 06 năm 2013
Phan Minh Nhật
Trang 5v Định vị môi trường trong nhà là một nhu cầu cần thiết của người dùng thiết bị di động bởi vì
hệ thống GPS không thể giúp định vị chính xác vị trí của người dùng trong tòa nhà như xác định tầng, phòng của thuê bao Hiện nay kỹ thuật định vị bằng WLAN đang có một ưu thế vượt trội so với các phương pháp khác do WLAN rất phổ biến, rẻ tiền và dễ triển khai Tuy nhiên, phương pháp này cũng bị ảnh hưởng khá nhiều của nhiễu do đó các phương pháp để nâng cao độ chính xác trong định vị là khá quan trọng Đề tài này sẽ thiết kế một phần mềm giúp khảo sát được dữ liệu WLAN và dùng những dữ liệu này cho việc ước lượng vị trí của các thiết bị di động Bên cạnh đó, đề tài còn đánh giá đến ảnh hưởng của phương pháp pattern matching và một số yếu tố ảnh hưởng đến độ chính xác và tốc độ tính toán của quá trình định vị Qua đó có thể lựa chọn các thông số và phương pháp tối ưu cho chương trình định vị
Cấu trúc luận văn:
v Chương 1: Mở đầu
v Chương 2: Giới thiệu tổng quan về định vị, các ứng dụng của định vị và các kỹ thuật định vị
khác nhau hiện đang được nghiên cứu và sử dụng
v Chương 3: Mô hình toán học của kỹ thuật định vị trong nhà
v Chương 4: Cấu trúc phần mềm và các kỹ thuật được sử dụng để đánh giá các kỹ thuật định
vị
v Chương 5: Trình bày và phân tích các kết quả
v Kết luận và nêu hướng phát triển của đề tài
v Phụ lục
v Tài liệu tham khảo
Trang 6v Indoor location is one of requirement of mobile user because GPS cannot help to locate exactly the current location of user inside a building (Ex: Room name, floor name) There are many technologies for indoor positioning and positioning based on Received Signal Strength (RSS) is a dominant technology because WLAN is popular, cheap and easy to deploy However, this technology is affected by the multipath fading that will impact to the accuracy
so that engineers need to find methods to improve it This thesis developed a software that can help to collect WLAN database from APs and use this datase for estimating the location
of user Besides, the thesis analize pattern matching algorithms and factors impacted to the accuracy of positioning Thereby, we can choose the best value for parameters of positioning software
Structure of thesis:
v Chapter 1: Introduction
v Chapter 2: Overview about location determination technlogies
v Chapter 3: Pattern matching algorithms for indoor location determination
v Chapter 4: Software architecture and analysis methods
v Chapter 5: Result analysis
v Conclusion and future research
v Appendix
v References
Trang 7Tôi cam đoan đây là công trình nghiên cứu của tôi Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác
Người cam đoan
Phan Minh Nhật
Trang 8Mục lục
1 Mở đầu 2
1.1 Lý do chọn đề tài 2
1.2 Đối tượng và phạm vi nghiên cứu 2
1.3 Ý nghĩa khoa học và thực tiễn 3
2 Giới thiệu tổng quan 6
2.1 UWB-based user position tracking 6
2.2 Indoor GPS-based user position tracking 9
2.3 WLAN-based user position 10
2.4 So sánh các kỹ thuật định vị indoor 11
2.5 Các giải thuật pattern matching cho định vị bằng WLAN đã được nghiên cứu 12
2.5.1 Centroid [2] 12
2.5.2 The RADAR [3] 12
2.5.3 Ekahau [4] 16
2.5.4 Kalman filter [4] 17
2.5.5 k fingerprints [6] [2] 18
2.5.6 ηk-Nearest Neighbor Algorithm [6] 18
3 Cơ sở lý thuyết và thực nghiệm 20
3.1 Khoảng cách Euclid 20
3.2 Phương pháp RADAR (k-nearest neighbors) 20
3.3 Phương pháp ηk-nearest neighhbors 21
3.4 Phương pháp ANN 22
4 Phương pháp nghiên cứu 31
4.1 Phần mềm thu thập và phân tích dữ liệu 31
4.1.1 Cấu trúc phần mềm 31
4.1.2 Các tính năng của phần mềm 32
4.1.3 Cấu trúc dữ liệu và phương pháp phân tích 36
4.1.3.1 Dạng XML 36
4.1.3.1.1 Cấu trúc dữ liệu 36
Trang 94.1.3.2.1 Cấu trúc dữ liệu 39
4.1.3.2.2 Xử lý dữ liệu 40
4.2 Công cụ ANN trên matlab 41
4.2.1 Mô hình mạng neural 41
4.2.2 Giải thuật trong matlab 42
5 Mô hình thực nghiệm và đánh giá kết quả 45
5.1 Mô hình khảo sát 1 45
5.2 Mô hình khảo sát 2 47
5.3 Kết quả 50
5.3.1 Ảnh hưởng của số lượng mẫu và k-NN 50
5.3.2 Ảnh hưởng của số perceptron 51
5.3.3 So sánh độ chính xác giữa các phương pháp 53
6 Kết luận và hướng phát triển 56
6.1 Kết luận 56
6.2 Hướng phát triển 57
Phụ Lục 58
Tài liệu tham khảo 69
Trang 10Danh mục hình vẽ
Hình 1.1 Phần mềm hiển thị vị trí thiết bị (trái), đo đạc cường độ tín hiệu (phải) 3
Hình 1.2 Ứng dụng định vị người dùng (ILukBa) và dò wifi trên một thiết bị di động 4
Hình 2.1 Các hệ thống định vị theo độ chính xác và phạm vi hoạt động 6
Hình 2.2 Hệ thống dò tìm UWB Sapphire 8
Hình 2.3 Hệ thống dò tìm trong mê cung bằng UWB (Diaster city) [1] 8
Hình 2.4 Hệ thống dò tìm trong mê cung bằng các bộ phát laser [1] 9
Hình 2.5 Kiến trúc của hệ thống Ekahau [1] 10
Hình 2.7 Giai đoạn 2-Xử lý thời gian thực bằng giải thuật pattern matching Hiện tại có rất nhiều giải thuật pattern matching đang được áp dụng 11
Hình 2.8 Bản vẽ khu vực được khảo sát tron phương pháp RADAR 13
Hình 2.9 Ảnh hưởng của k đến độ chính xác Kết quả được biễu diễn trong 2 trường hợp:25th(25% xác xuất lỗi), 50th(50% xác xuất lỗi) 14
Hình 2.10 Sai số khoảng cách thay đổi theo số điểm khảo sát (log scale) 15
Hình 2.11 Đồ thị cường độ sóng theo khoảng cách 16
Hình 2.12 Mô hình hệ thống Ekahau 17
Hình 2.13 Ảnh hưởng của lọc nhiễu RSS lên độ chính xác 18
Hình 3.1 Giải thuật k-NN 20
Hình 3.2 Lưu đồ giải thuật cho phương pháp RADAR được sử dụng trong phần mềm 21
Hình 3.3 Tế bào thần kinh và mô hình toán học 23
Hình 3.4 Hàm logsig (đơn cực) 23
Hình 3.5 Hàm Tansig (lưỡng cực) 24
Hình 3.6 Mạng truyền thẳng nhiều lớp 24
Hình 3.7Mô hình ANN được dùng trong đề tài 25
Hình 3.8 Phương pháp huấn luyện mạng bằng giải thuật truyền ngược 25
Hình 3.9 Minh họa phương pháp điều chỉnh trọng số nơ-ron thứ j tại thời điểm k 26 Hình 3.10 Mô hình MLP mẫu 26
Hình 3.11 Các điểm cực tiểu cục bộ và cực tiểu toàn cục 28
Hình 4.1 Mô hình thiết kế 3 lớp 31
Hình 4.2 New/Open/Save project 32
Hình 4.3 Software GUI 32
Hình 4.4 Scaling 33
Hình 4.5 Collecting data 34
Hình 4.6 Locating 34
Hình 4.7 Options 36
Hình 4.8 Processing data 36
Trang 11Hình 4.11 Cấu trúc file XML (Thông số bản vẽ và thông tin các điểm) 38
Hình 4.12 Xử lý dữ liệu bằng excel 39
Hình 4.13 Cấu trúc file CSV 39
Hình 4.14 Text to column 40
Hình 4.15 Pivot table 40
Hình 4.16 Đồ thị trong excel 40
Hình 4.17 Mô hình MLP cho định vị 41
Hình 4.18 ANN tool trong Matlab 42
Hình 4.19 Kết quả vẽ từ Matlab 43
Hình 5.1 Bản vẽ mô hình 1 45
Hình 5.2 Các hình chiếu a (3D), b(x,y), c(y,z), d(z,x) 47
Hình 5.3 Bản vẽ mô hình 2 48
Hình 5.4 Các hình chiếu a (3D), b(x,y), c(y,z), d(z,x) 49
Hình 5.5 Ảnh hưởng của lỗi theo k (1à10) 50
Hình 5.6 Ảnh hưởng của lỗi theo số mẫu (1à20) 51
Hình 5.7 Ảnh hưởng của số perceptron trên mô hình 1 52
Hình 5.8 Ảnh hưởng của số perceptron trên mô hình 2 52
Hình 5.9 Mô hình 1-So sánh các phương pháp pattern matching theo số AP (1à3) 53
Hình 5.10 Mô hình 2-So sánh các phương pháp pattern matching theo số AP (1à3) 54
Danh mục bảng
No table of figures entries found
Trang 141 Mở đầu
Ngày nay, vấn đề định vị cho các thiết bị di động rất được quan tâm và được triển khai khá rộng rãi Các kỹ thuật định vị thường được sử dụng như GPS, TDOA, AOA, có độ chính xác khá tốt nhưng chỉ thích hợp cho môi trường không có nhiều vật che chắn (outdoor) Với môi trường bên trong các tòa nhà các kỹ thuật này thường không hiệu quả Do đó, các kỹ sư đã thiết kế rất nhiều phương pháp cho môi trường indoor ví dụ như WLAN RSS Fingerprint, UWB(RFID), Indoor GPS(IR and Laser) Trong đó RSS Fingerprint là một kỹ thuật nổi trội với rất nhiều giải thuật được nghiên cứu ví dụ Ranking algorithm, Weighted Centroid method, ηk-Nearest Neighbor, Bayesian Filter, Kalman Filter, Particle Filter, Self-Organizing Map - Artificial Neural Network (SOM-ANN), Đề tài này sẽ đi sâu nghiên cứu các giải thuật pattern matching cho hệ thống định vị trong nhà dựa trên WLAN RSS Một phần mềm sẽ được lập trình để hỗ trợ cho việc thu thập các mẫu RSS fingerprint và ước lượng vị trí của các thiết bị wifi Phần mềm sẽ có 2 chức năng chính: chức năng thứ nhất sẽ thu thập các thông tin về RSS ở tại các điểm cần khảo sát của một tòa nhà Toàn bộ thông tin RSS fingerprint của các APs ứng với từng vị trí đã biết trước sẽ được ghi lại dưới dạng dữ liệu thô Chức năng thứ hai dựa trên các giải thuật pattern matching để ước lượng vị trí dựa trên cơ sở dữ liệu của chức năng thứ nhất Phần mềm sẽ dùng những thông tin đã thu được từ chức năng thứ nhất cộng với thông tin mà nó thu được tại thời điểm ước lượng để tính ra
vị trí hiện tại Phần mềm sẽ so sánh độ chính xác của từng phương pháp (Radar, NN) Bên cạnh đó đề tài còn sử dụng công cụ trí tệ nhân tạo trong matlab để huấn luyện và tính toán sai số cho giải thuật dùng ANN (Artificial neural network)
ηk-1.1 Lý do chọn đề tài
Kỹ thuật định vị trong nhà đã được nghiên cứu từ lâu Tuy nhiên, hệ thống này vẫn chưa được triển khai rộng rãi Bên cạnh đó, các kỹ sư cũng không ngừng sử dụng các kỹ thuật mới để nâng cao độ chính xác của phương pháp Việc thiết kế một phần mềm mở có thể giúp cho việc thu thập thông tin WLAN và đánh giá sai số sẽ rất hữu ích cho việc nghiên cứu những giải thuật mới của những nhà nghiên cứu Thông qua phần mềm người dùng có thể đánh giá được các yếu tố ảnh hưởng đến
độ chính xác của các phương pháp trong môi trường được khảo sát và qua đó sẽ tìm
ra các thông số tối ưu cho môi trường cần định vị
1.2 Đối tượng và phạm vi nghiên cứu
Trang 15
• Các giải thuật pattern matching cho hệ thống định vị bằng WLAN: RADAR, ηk-NN, ANN Việc đánh giá dựa trên dữ liệu thực tế từ môi trường khảo sát
thay vì các giá trị mô phỏng
Phạm vi nghiên cứu:
• Phần mềm sẽ được thiết kế trên hệ điều hành Window 7, ngôn ngữ C#
• Phần cứng: Laptop Dell Inspiron (Thiết bị di động sẽ không được sử dụng
trong đề tài này)
• Các thiết bị AP không thay đổi vị trí và hướng của anten
• Thiết bị thu thập dữ liệu không thay đổi về hướng khi khảo sát
• Thu thập 20 mẫu cho mỗi vị trí để dùng làm cơ sở dữ liệu
• Thu thập 20 mẫu cho mỗi vị trí để dùng cho định vị Việc định vị có thể sẽ chỉ dùng một vài mẫu bên trong 20 mẫu này
• Chỉ khảo sát trong một tầng duy nhất của tòa nhà
• Không xét đến hãng sản xuất của APs
• Vị trí của các APs có thể không nằm trong cùng 1 tầng
1.3 Ý nghĩa khoa học và thực tiễn
Hệ thồng định vị indoor được dùng trong các công trình công cộng như sân bay, bệnh viện, campus, shopping mall,…Ví dụ như các trường hợp khẩn cấp trong các tòa nhà lớn cần hỗ trợ 911, cần tìm vị trí các bệnh nhân, bác sĩ và y tá trong bênh viện, tìm đường đi trong sân bay lớn hay các campus, tìm các gian hàng trong một shopping mall,… Các thiết bị di động sẽ được cài phần mềm định vị để ước lượng
vị trí Thông tin vị trí này có thể được gửi về tổng đài hoặc được dùng để chỉ đường cho người dùng
Các hình vẽ bên dưới cho thấy một phần mêm thí nghiệm được cài trên một thiết bị
di động giúp nhận biết vị trí của người sử dụng và những người bạn xung quanh
Hình 1.1 Phần mềm hiển thị vị trí thiết bị (trái), đo đạc cường độ tín hiệu (phải)
Trang 16Hình 1.2 Ứng dụng định vị người dùng (ILukBa) và dò wifi trên một thiết bị di
Trang 182 Giới thiệu tổng quan
Các hệ thống định vị ngày nay:
Hình 2.1 Các hệ thống định vị theo độ chính xác và phạm vi hoạt động
Phần tiếp theo sẽ tập trung vào giới thiệu các phương pháp định vị trong nhà Các
phương pháp định vị môi trường bên ngoài (outdoor) sẽ được đề cập trong phần phụ lục (GPS, AGPS, TDOA, DOA, TOA, RSS, Cell-ID)
2.1 UWB-based user position tracking
Phần này sẽ đề cập đến hệ thống "Sapphire DARTUltra-WideBand (UWB) Digital ActiveReal Time Tracking" Hệ thống này được thiết kế để dò tìm người và các thiết bị Hệ thống này bao gồm một hub xử lý, 4 hoặc nhiều hơn các bộ thu, một hoặc nhiều hơn các thẻ (tags) cho từng thiết bị riêng biệt
Hệ thống xử dụng sóng ngắn hoặc kỹ thuật UWB để xác định chính xác vị trí của các thẻ UWB RFID và nó hoạt động như sau: Mỗi thẻ liên tục gửi ra một gói xun bao gồm một chuỗi ngắn của xung UWB, mỗi xung có một băng thông tức thời hơn
1 GHz Các thẻ riêng biệt là không đồng bộ, và các gói xung có khoảng thời gian rất ngắn, xác suất xung đột là rất nhỏ cho phép xử lý đồng thời hàng trăm đến hàng ngàn thẻ trong một khu vực nội bộ Những chuỗi xung UWB được truyền đi này được nhận bởi một hoặc nhiều bộ thu Sapphire DARTUWB nằm xung quanh vùng ngoại vi của khu vực đã biết trước Tín hiệu thu bởi ba hoặc nhiều máy thu cho phép định vị 2D chính xác, trong khi tiếp nhận bởi bốn hoặc nhiều hơn cho phép
Trang 19Mỗi bộ thu sử dụng một bộ dò xung ngắn có độ nhạy, tốc độ rất cao để đo thời gian chính xác khi gói tin thẻ đến ăng-ten của nó Băng thông rất rộng của các xung UWB cho phép thu đo lường những thời gian đến đến độ chính xác nano giây Để xác định vị trí thẻ thực tế từ những đo đạc, Sapphire DART Hub/Processor, sử dụng
dữ liệu hiệu chỉnh từ thẻ Sapphire DART UWB, xác định thời gian sai lệch (TDOA-Tham khảo trong phần phụ lục) giữa các cặp bộ thu và thực hiện một thuật toán tối ưu hóa để xác định vị trí bằng cách sử dụng kỹ thuật "multilateration" Bởi
vì tốc độ của ánh sáng là khoảng 0,98 feet mỗi nano giây, những khác biệt giữa thời gian đến có thể dễ dàng chuyển đổi thành các khoảng cách đo thích hợp
Các kết quả thu được từ các ứng dụng hệ thống theo dõi UWB được cung cấp từ trung tâm đến các máy khách hàng trong các định dạng sau:
<Data Header>, <tag # >, <X>, <Y>, <Z>, <battery>, <timestamp>,<unit><LF>
" Data Header " đại diện cho các thông tin về chiều không gian của thẻ Có nhiều giá trị dự kiến cho "Data Header" nhưng một trong những quan tâm trong nghiên cứu này là R nơi phản ánh tính toán 3D cho x, y, z."Tag #" là ID của tag "X, Y, Z"
là tọa độ của thẻ " battery " là chỉ báo pin thấp của thẻ (giá trị dao động từ 0-15, trong đó 15 đại diện cho một pin sạc đầy) " timestamp " đại diện cho thời gian hệ thống "unit" là một ID nhóm ảo Các dữ liệu vị trí thẻ được tính từ đo đạc thời gian truyền của các bộ thu trong nhóm ảo "LF" là ký tự kết thúc hàng trong bảng mã ASCII (với mã ASCII = 0 × 0A), để chấm dứt một chuỗi dữ liệu vị trí Trong số tất
cả các thông tin đầu ra, " Data Header ", " tag #" và "X, Y, Z" là quan trọng hàng đầu cho mục đích của nghiên cứu này
Trang 20Hình 2.2 Hệ thống dò tìm UWB Sapphire
Hình 2.3 Hệ thống dò tìm trong mê cung bằng UWB (Diaster city) [1]
Trang 212.2 Indoor GPS-based user position tracking
Hệ thống được thiết kế bởi 4 hoặc nhiều nhiều hơn số bộ phát và 1 bộ thu Một bộ phát hoạt động bằng pin sử dụng laser và ánh sáng hồng ngoại để truyền thông tin vị trí và chiều cao một chiều từ bộ phát đến bộ thu Bộ thụ có các photo diode bên trong để dò các tín hiệu laser và hồng ngoại từ bộ phát Với thông tin thêm vào của
bộ phát thứ hai với vị trí và hướng đã được biết trước, người dung có thể tính toán được vị trí của bộ thu trong hệ tọa độ cơ bản Bằng cách thêm vào hai bộ phát nữa,
hệ thống sẽ có 4 bộ phát laser và lúc này độ chính xác sẽ đạt tối đa Tín hiệu định hướng giống như GPS được truyền thông qua mạng không giây Giống như trong
hệ thống GPS dựa trên vệ tinh, tín hiệu một chiều được truyền đến bộ thu cho phép một số lượng không giới hạn các bộ thu tính toán một cách liên tục và độc lập bất
cứ khi nào hai hoặc nhiều hơn số bộ phát được nhìn thấy
Vị trí 3D của bộ thu quang được xác định bằng việc xử lý theo phép đạc tam giác
"triangulation"
Phép đạc tam giác được sử dụng nếu các góc của vị trí đến các vị trí đã biết được
cho Với hai vị trí đã biết trước, vị trí tuyệt đối trong 2D được xác định Hai góc
được dùng để xác định các đường truyền thằng (LOS) tới các vị trí đã biết trước
Với vị trí của các điểm này, các đường là duy nhất trong không gian 2 chiều và
điểm giao nhau là vị trí chính xác Do đó cung cấp thông tin góc từ tối thiểu 2 bộ
phát và vị trí cộng với hướng của mỗi bộ phát, một vị trí 3D duy nhất sẽ được tính
ra từ các số liệu đo
Hình 2.4 Hệ thống dò tìm trong mê cung bằng các bộ phát laser [1]
Trang 222.3 WLAN-based user position
Sử dụng thông tin RSS đo được từ các APs Bao gồm 2 bước cơ bản: thu thập mẫu
RSS (RSS fingerprint) từ các vị trí biết trước và định vị bằng cách so sánh thông tin
đo đạc với tập thông tin mẫu Hình vẽ bên dưới là mô hình được xây dựng bởi nhà
cung cấp Ekahau
Hình 2.5 Kiến trúc của hệ thống Ekahau [1]
Hình 2.6 Giai đoạn 1-Thu thập mẫu
Trang 23Hình 2.7 Giai đoạn 2-Xử lý thời gian thực bằng giải thuật pattern matching
Hiện tại có rất nhiều giải thuật pattern matching đang được áp dụng
2.4 So sánh các kỹ thuật định vị indoor
Bảng 2.1 So sánh các kỹ thuật định vị trong nhà
• Trong 3 phương pháp đã nêu thì 2 phương pháp đầu tuy có độ chính xác cao nhưng rất tốn kém về mặt chi phí không thích hợp với môi trường người dùng đa dạng Hai phương pháp này chỉ thích hợp về mặt điều khiển robot công nghiệp
• Phương pháp WLAN mặc dù độ chính xác không cao nhưng rất thích hợp với môi trường nhiễu đa đường khi có rất nhiều vật che chắn trong nhà và điều đặc biệt quan trọng là phương pháp này dẽ dàng triển khai và ứng dụng rông rãi do chi phi triển khai các thiết bị rất thấp Hầu hết các công
ty, các công trình công cộng đều có sẵn các thiết bị WLAN và số lượng người dùng smart phone với WLAN tích hợp đã trở nên rất thông dụng
Trang 242.5 Các giải thuật pattern matching cho định vị bằng WLAN đã được
nghiên cứu
Bài toán được đặt ra trong phương pháp định vị bằng WLAN thông qua RSS fingerprint là làm thế nào để tăng độ chính xác, giảm thời gian tính toán, ít bị ảnh hưởng của loại thiết bị và môi trường Hiện nay có một số hướng chính để đạt mục tiêu bài toán đặt ra là:
§ Nghiên cứu các thuật toán pattern matching để cải thiện độ chính xác
§ Sự dụng phương pháp hybrid để kết hợp ưu điểm của 2 hay nhiều phương pháp khác nhau
§ Nghiên cứu mô hình truyền sóng trong wifi để tìm cách khử bỏ các ảnh hưởng của nhiễu
Biến đổi dữ liệu RSS fingerprint thành các dạng dữ liệu ít bị ảnh hưởng của các yếu tố gây nhiễu
Một số cách tiếp cận đã được các kỹ sư nghiên cứu trong thời gian vừa qua được liệt kê như bên dưới
2.5.1 Centroid [2]
Đây là một trong những phương pháp đơn giản nhất dùng để định vị Trong suốt quá trình huấn luyện, chúng ta kết hợp tất cả các dữ liệu đo được của các một AP để tính ra giá trị vị trị trung bình của AP này Sau đó, tạo nên bảng cở sở dữ liệu chỉ chứa vị trí ước lượng của các APs mà thôi Sử dụng bảng dữ liệu này, phương pháp định vị Centroid sẽ lấy giá trị trung bùng về tọa độ của tất cả các APs mà thiết bị di động dò thấy Thêm vào đó phương pháp này có thể được cải tiến bằng cách thêm vào trong số cho mỗi APs ứng với cường độ đo được trong quá trình quét
2.5.2 The RADAR [3]
Phương pháp đầu tiên này đã được sử dụng trong hệ thống tần số radio cho việc định vị người dùng trong môi trường indoor Nó hoạt động bằng cách thu thập cường độ tín hiệu (RSS) từ nhiều BS để xác định được khu vực bao phủ chồng lấn
mà người dùng có thể ở trong đó Nó kết hợp các đo đạc thực tế với mô hình truyền sóng để xác định vị trí người dùng và qua đó cho phép các ứng dụng và dịch vụ định vị được triển khai
Phương pháp này cũng mang những đặc điểm cơ bản của phương pháp đinh vị bằng WLAN Nó được chia làm 2 bước: bước "off-line" và bước "real time" Các card mạng không giây có thể đo được cường độ tín hiệu(SS=10*log10(s/0.001) dBm) và
tỉ lệ tín hiệu trên nhiễu (SNR=10*log10(s/n) dB) Đồng hồ giữa bộ phát và thu được đồng bộ, tối thiểu sai số là 5ms Việc cần đồng bộ thời gian mục đích chủ yếu là do
Trang 25cần đồng bộ các BS và thiết bị di động để bảo đảm dữ liệu phát ra từ các thiết bị đi động đến BS có thể gộp chung lại thành 1 ở mỗi lần phát từ thiết bị di động
Trong qua trình nghiên cứu người ta nhận ra rằng hướng của thiết bị đo cũng ảnh hưởng đáng kể đến cường độ sóng thu được lên tới 5dBm
Hình 2.8 Bản vẽ khu vực được khảo sát tron phương pháp RADAR
Bản vẽ của tầng được nghiên cứu Các chấm đen là các điểm được thu thập thông tin trong pha "off-line" Các dấu sao lớn là vị trí các bộ phát (BS) Hướng lên trên là phía bắc và bên phải là hướng đông Tổng số điểm khảo sát là 70, mỗi điểm khảo sát 4 lần ứng với 4 hướng
Các giải thuật được sử dụng trong phương pháp RADAR bao gồm: tìm vị trí thông qua mô hình truyền sóng, so sánh với dữ liệu "offline" để tìm các điểm lân cận giá trị gần giống nhất (k Nearest neighbors-kNN) Trong đó phương pháp kNN được tập trung nghiên cứu
Một số kết luận quan trong của phương pháp RADAR:
Trang 26Phương pháp k-NN
1 Ảnh hưởng của hệ số k: khi k tăng thì sai số giảm, khi k nhỏ giá trị sai số tăng không đáng kể Khi k quá lớn thì sai số lại tăng dần do số lượng điểm được ước lượng quá nhiều và nằm khá xá vị trí thực tế cho nên khi lấy giá trị trung bình sẽ tạo sai lệch lớn
Hình 2.9 Ảnh hưởng của k đến độ chính xác Kết quả được biễu diễn trong 2
trường hợp:25th(25% xác xuất lỗi), 50th(50% xác xuất lỗi)
Lỗi khoảng cách thay đổi theo hệ số k Hai đường được biểu diễn: ứng với số % của hàm phân phối xác lỗi 25th và 50th
2 Ảnh hưởng của số điểm khảo sát: số lượng điểm tăng thì độ chính xác tăng cao nhưng đến một giá tri giới hạn thì độ chính xác không được cải thiện nhiều Cụ thể tại nơi khảo sát của đề tài số điểm thực tế là 70 tuy nhiên chỉ cần 40 điểm là có thể cho giá trị xấp xỉ
Trang 27Hình 2.10 Sai số khoảng cách thay đổi theo số điểm khảo sát (log scale)
3 Ảnh hưởng của số lượng mẫu trong giai đoạn real time: chỉ cần một số lượng mẫu nhỏ là đủ để ước lượng vị trí
4 Ảnh hưởng của hướng: hướng của máy phát cũng ảnh hưởng một cách đáng kể đến kết quả Do đó việc thu thập dữ liệu sử dụng thông tin hướng là khá quan trọng
Phương pháp dùng mô hình truyền sóng
Môi hình gốc được mô tả bởi Seidel và Rappaport bao gồm hệ số suy giảm để phản ánh sự suy giảm do ảnh hưởng của tầng và các vật che chắn Mô hình hệ số suy giảm tường (WAF) được mô tả như sau:
(2.1)
n là tỉ lệ suy giảm theo khảng cách P(d0) là công suất tín hiệu tại điểm tham chiếu
với khoảng cách d0 và d là khoảng cách giữa bộ phát và bộ thu Hệ số n phụ thuộc
vào cấu trúc xây dựng của từng tòa nhà C là số lượng tối đa các vật cản nơi mà hệ
số suy giảm tạo nên thay đổi đáng kể, nW là số lượng vật cản giữa bộ phát và bộ
thu, WAF là hệ số suy giảm tường
Trang 28Hình 2.11 Đồ thị cường độ sóng theo khoảng cách
Phương pháp này mặc dù không cho kết quả tốt hơn k-NN nhưng có được lợi thế là không cần phải khảo sát hết toàn bộ tòa nhà Các hệ số có thể tái sự dụng khi vị trí các APs bị thay đổi
2.5.3 Ekahau [4]
Hệ thống nà cũng bao gồm 2 pha: huấn luyện và định vị Quá trình huấn luyện trong Ekahau được gọi là "SiteCalibration" Hệ thống sử dụng giải thuật định vị đã được đăng ký bản quyền Vị trí được tính từ trung bình của các RSS đo được ở phía client Dưới điều kiện tối ưu hệ thống só thể đạt độ chính xác 1-2m
Trang 29Hình 2.12 Mô hình hệ thống Ekahau
2.5.4 Kalman filter [4]
Phương pháp này sử dụng bộ lọc Kalman để lọc bỏ nhiễu trong RSSI thu được và
kỹ thuật nhiều đối tượng quan sát (multiple observers) Phương pháp này giúp cải tiến độ chính xác lên tới 90% Giải thuật cũng được chia ra làm 2 giai đoạn: offline
và online
Trang 30Hình 2.13 Ảnh hưởng của lọc nhiễu RSS lên độ chính xác
2.5.5 k fingerprints [6] [2]
Sử dụng k fingerprints với khoảng cách nhỏ nhất tới các giá trị dò được và tính được trung bình king và vĩ độ kết hợp với k fingerprints này Theo kinh nghiệm thực tế, k=4 cho độ chính xác cao nhất Nếu một AP được tìm thấy trong quá trình định vị nhưng không được lưu lại trong quá trình huấn luyện sẽ bị bỏ qua Sử dụng phượng pháp test, đề tài đã kết luận rằng với 2 AP không biết vẫn có thể tạo được kết quả mong muốn Tỉ lệ khớp mẫu tăng từ 70% lên 99% bằng cách sử dụng các bộ
mở rộng của họ Tuy nhiên, một vấn đề đặt ra là hầu hết các thiết bị thu thập các cường độ tín hiệu khác nhau từ cùng một APs Trong bài viết này họ đã sử dụng 3 phương pháp định vị là centroid, fingerprinting và particle filter
2.5.6 ηk-Nearest Neighbor Algorithm [6]
Đây phương pháp học dựa trên thời điểm (instance-based learning), trong đó dữ liệu bao gồm cường độ RSS và chất lượng tín hiệu sẽ được chuẩn hóa để đạt được đô chính xác ở mức tốt nhất Phương pháp này khác với các phương pháp khác là chỉ tập trung vào việc phân loại vị trí phòng của thiết bị di động thay vì chú trọng đến vị trí chính xác theo tọa đô x,y Phương pháp này là khá hứa hẹn dẫn tới độ chính xác 96% Chi tiết về giải thuật sẽ được đề cập trong chương tiếp theo
Trang 323 Cơ sở lý thuyết và thực nghiệm
3.1 Khoảng cách Euclid
Công thức tính khoảng cách Euclid giữa một điểm trong cơ sở dữ liệu và dữ liệu đo lúc định vị trong trường hợp có 3 AP:
(𝑅𝑆𝑆!− 𝑅𝑆𝑆!! ) ! − (𝑅𝑆𝑆!− 𝑅𝑆𝑆!! ) ! − (𝑅𝑆𝑆!− 𝑅𝑆𝑆!! ) !
Ø Các hệ số 1,2,3 ứng với AP1, AP2, AP3
Ø RSS1: Cường độ tín hiệu của AP1 trong cơ sở dữ liệu
Ø RSS’1: Cường độ tín hiệu của of AP1 khi người dùng quét thông tin các AP lúc định vị
3.2 Phương pháp RADAR (k-nearest neighbors)
Giải thuật được sử dụng trong phương pháp RADAR:
Ø Giải thuật dựa trên 2 thông tin: cơ sở dữ liệu (off line) và dữ liệu quét trong quá trình định vị (online)
Ø Tìm k điểm trong cơ sở dữ liệu có khoảng cách Euclid nhỏ nhất đến dữ liệu được quét trong quá trình định vị
Ø Trong quá trình định vị, số lượng AP tìm thấy có thể nhiều hơn so với số AP được dùng cho quá trình định vị Sau khi, thiết bị di động thu thập dữ liệu thì chỉ giữ lại thông tin của các AP được chọn Điều kiện để một điểm trong cơ
sở dữ liệu được dùng để tính toán khoảng cách Euclid là phải chứa thông tin của số AP được giữ lại sau khi thiết bị di động thu thập dư liệu Nếu không trùng khớp thì điểm đó sẽ bị loại ra trong quá trình tính toán
Ø Nếu sau quá trình tính toán vẫn không thể tìm được một điểm nào trong cơ
sở dữ liệu thỏa điều kiện Ta có thể áp dụng thêm một cải tiến bằng cách loại
bỏ ra thành phần AP có cường độ nhỏ nhất sau khi quét dữ liệu sau đo lặp lại quá trình tìm kiếm k điểm có khoảng cách Euclid nhỏ nhất
Trang 334 List of selected APs
Create new list of candidate datapoints
i=0;
i<max number of datapoints
Check the selected datapoint match number of selected points
Select the ith datapoint from database
Calculate euclid distance between ith datapoint with scanned data
Y i++
Check if euclid distance is smaller then 1 item in candidate list
Add ith data into the candidate list
Hình 3.2 Lưu đồ giải thuật cho phương pháp RADAR được sử dụng trong phần
mềm
3.3 Phương pháp ηk-nearest neighhbors
Phương pháp này hoàn toàn dựa trên phương pháp k-nearest neghbors Điểm khác
biệt chính là các dữ liệu sẽ được chuẩn hóa trước khi đưa vào tín toán bằng giải
thuật k-nearest neighbors
Phương pháp chuẩn hóa được thực hiện như sau:
Trang 34n Đặt a1(x),a2(x)… an(x) ứng với dữ liệu các RSS của các AP sau khi đã lấy
giá trị trung bình từ tất cả các mẫu đo được
n Tính toán giá trị trung bình:
3.4 Phương pháp ANN
Phương pháp này được dùng để tạo ra một hàm xấp xỉ với các biến là cường độ các
AP và kết quả ngõ ra là các giá trị x,y
Giới thiệu sơ lược về ANN: [7]
Ø Tế bào thần kinh gồm: thân tế bào (soma), đầu dây thần kinh vào (dendrite),
khớp nối (synapse), sợi trục (axon) và đầu dây thần kinh ra
Trang 35Hình 3.3 Tế bào thần kinh và mô hình toán học
x=[x1 x2 … xm]T Vector tín hiệu vào tế bào thần kinh
w=[w1 w2 … wm]T Vector trọng số tế bào thần kinh
Ø Hàm xử lý ngõ vào tế bào thần kinh (Đề tài này chỉ đề cập đến hàm tuyến
Trang 36Hình 3.5 Hàm Tansig (lưỡng cực)
Trong đề tài này hàm tansig sẽ được lựa chọn cho tất cả các perceptron
Ø Cấu trúc mạng thần kinh (Sử dụng mạng truyền thẳng nhiều lớp MLP):
Hình 3.6 Mạng truyền thẳng nhiều lớp
Đề tài này sử dụng mạng truyền thẳng một lớp ẩn Với ngõ vào là giá trị các
AP và ngõ ra là tọa độ x,y
Trang 37Hình 3.7Mô hình ANN được dùng trong đề tài
Ø Phương pháp huấn luyện mạng bằng giải thuật truyền ngược (Back
propagation):
Hình 3.8 Phương pháp huấn luyện mạng bằng giải thuật truyền ngược
Trong phần này chúng ta tìm hiểu về giải thuật truyền ngược (backpropagation) và các giải thuật cải tiến của nó, áp dụng cho phương pháp học có giám sát [8]
Giải thuật truyền ngược cập nhật các trọng số theo nguyên tắc:
wij(k+1) = wij(k) + ηg(k) trong đó:
wij(k) là trọng số của kết nối từ nơ-ron j đến nơ-ron i, ở thời điểm hiện tại
η là tốc độ học (learning rate, 0< η≤1)
g(k) là gradient hiện tại
Có nhiều phương pháp xác định gradient g(k), dẫn tới có nhiều giải thuật truyền ngược cải tiến
Để cập nhật các trọng số cho mỗi chu kỳ huấn luyện, giải thuật truyền ngược cần 2 thao tác:
§ Thao tác truyền thuận (forward pass phase): Áp vectơ dữ liệu vào trong tập
dữ liệu học cho ANN và tính toán các ngõ ra của nó
§ Thao tác truyền ngược (backward pass phase): Xác định sai biệt (lỗi) giữa ngõ ra thực tế của ANN và giá trị ngõ ra mong muốn trong tập dữ liệu học Sau đó, truyền ngược lỗi này từ ngõ ra về ngõ vào của ANN và tính toán các giá trị mới của các trọng số, dựa trên giá trị lỗi này
Trang 38Hình 3.9 Minh họa phương pháp điều chỉnh trọng số nơ-ron thứ j tại thời điểm k
Ø Giải thuật gradient descent
Trang 39𝑛!!(𝑘) = !𝑤!"! 𝑘 𝑎!!(𝑘) tại thời điểm k
𝑎!!(𝑘) = 𝑓!(𝑛!!(𝑘)) với f2 là hàm truyền của các nơ-ron trên lớp ra
Thao tác truyền ngược:
§ Tính tổng bình phương của lỗi: 𝐸(𝑘) = !
! [𝑡! 𝑘 − 𝑎!!(𝑘)]!
!với t(k) là ngõ ra mong muốn tại k
§ Tính sai số các nơ-ron ngõ ra:
Ø Huấn luyện đến khi nào thì dừng?
§ Đủ số chu kỳ (epochs) ấn định trước (Đề tài sử dụng giá trị 500)
§ Hàm mục tiêu đạt giá trị mong muốn (=0)
§ Hàm mục tiêu phân kỳ.Trong đề tài này, nếu giá trị hàm mục tiêu giảm 6 lần liên tiếp thì quá trình huấn luyện sẽ dừng lại và giá trị tốt nhất trong các chu
kỳ sẽ được chọn
Ø Hàm mục tiêu MSE:
Mean Square Error – MSE là lỗi bình phương trung bình, được xác định trong quá trình huấn luyện mạng MSE được xem như là một trong những tiêu chuẩn đánh giá sự thành công của quá trình huấn luyện MSE càng nhỏ, độ chính xác của ANN càng cao
Định nghĩa MSE: Giả sử ta có tập mẫu học:{p1,t1}, {p2,t2},… ,{pN,tN}, với p=[
p1, p2 ,…,pN] là vectơ dữ liệu ngõ vào, t= [t1, t2,…,tN] là vectơ dữ liệu ngõ ra mong muốn Gọi a=[a1, a2, …,aN] là vectơ dữ liệu ra thực tế thu được khi đưa vectơ dữ liệu vào qua mạng MSE:
vẽ bên dưới thể hiện các điểm cực tiểu cục bộ và cực tiểu toàn cục
Trang 40Hình 3.11 Các điểm cực tiểu cục bộ và cực tiểu toàn cục
§ Nhằm cải tiến tốc độ hội tụ của giải thuật gradient descent, người ta đưa
ra 1 nguyên tắc cập nhật trọng số của ANN:
𝑤!" 𝑘 + 1 = 𝑤!" 𝑘 + ∇𝑤!" 𝑘
∇𝑤!" 𝑘 = 𝜂𝑔 𝑘 + 𝜇∇𝑤!" 𝑘 − 1 Với g(k) là gradient; η là tốc độ học
∇𝑤!" 𝑘 − 1 là giá trị trước đó của ∇𝑤!" 𝑘
µ là momentum
Để đạt hiệu quả huấn luyện cao, nhiều tác giả đề nghị tổng giá trị của moment và tốc độ học nên gần bằng 1: µ∈[0.8 1]; η∈[0 0.2]
Ø Giải thuật Levenberg-Marquardt
§ Giải thuật Levenberg-Marquardt được xây dựng để đạt tốc độ hội tụ bậc 2
mà không cần tính đến ma trận Hessian như giải thuật BFGS
Quasi-Newton
§ Ma trận Hessian được tính xấp xỉ: H=JTJ và giá trị gradient được xác
định: g=JTe trong đó, J là ma trận Jacobian, chứa đạo hàm bậc nhất của
hàm lỗi (δe/δwij),với e là vectơ lỗi của mạng
§ Nguyên tắc cập nhật trọng số:
wij(k+1)=wij(k) – [JTJ + mI]-1JTe
§ Nếu m=0, thì đây là giải thuật BFGS Quasi-Newton
§ Nếu m có giá trị lớn nó là giải thuật gradient descent
§ Giải thuật Levenberg-Marquardt luôn sử dụng giá trị m nhỏ, do giải
thuật BFGS Quasi-Newton tốt hơn giải thuật gradient descent
Ø Các giảithuậtcủa Neural Network toolbox
§ Trainb: Batch training with weight & bias learning rules