Tải bản đầy đủ (.pdf) (93 trang)

Bài toán tìm đường ngắn nhất trên đồ thị cho hai đối tượng có ràng buộc khoảng cách

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.6 MB, 93 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA

TRẦN NHẬT HỒNG ANH

BÀI TỐN TÌM ĐƯỜNG NGẮN NHẤT
TRÊN ĐỒ THỊ CHO HAI ĐỐI TƯỢNG
CÓ RÀNG BUỘC KHOẢNG CÁCH
CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH
MÃ NGÀNH: 60 48 01 01

LUẬN VĂN THẠC SĨ

TP. HỒ CHÍ MINH, tháng 06 năm 2018


CƠNG TRÌNH ĐƯỢC HỒ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 : PGS.TS. Trần Văn Hoài

Cán bộ chấm nhận xét 1 : TS. Lê Hồng Trang

Cán bộ chấm nhận xét 2 : PGS.TS. Nguyễn Thanh Hiên

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 17 tháng 07 năm 2018.

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
1. TS. Nguyễn An Khương
2. TS. Nguyễn Trần Hữu Nguyên


3. TS. Lê Hồng Trang
4. PGS.TS. Nguyễn Thanh Hiên
5. TS. Lê Trọng Nhân

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

TS. NGUYỄN AN KHƯƠNG

TRƯỞNG KHOA KH&KTMT


ĐẠI HỌC QUỐC GIA TP.HCM

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

Độc lập - Tự do - Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên: Trần Nhật Hoàng Anh.................MSHV: 7140218
Ngày, tháng, năm sinh: 25/12/1986........................Nơi sinh: Hậu Giang
Ngành: Khoa Học Máy Tính...................................Mã số: 60.48.01.01
I. TÊN ĐỀ TÀI: Bài tốn tìm đường ngắn nhất trên đồ thị cho hai đối tượng có ràng
buộc khoảng cách
II. NHIỆM VỤ VÀ NỘI DUNG:
- Nghiên cứu các hướng tiếp cận và phương pháp của bài tốn tìm đường đi ngắn

nhất cho nhiều đối tượng di chuyển trong cùng môi trường hoạt động tĩnh, hai chiều và có
chứa vật cản.
- Đề xuất giải thuật tìm đường đi ngắn nhất trên đồ thị cho hai đối tượng có ràng
buộc khoảng cách.
- Mơ hình hóa bài tốn tối ưu tìm đường hai đối tượng thành mơ hình tuyến tính
nhị ngun.
- Xây dựng hệ thống và chương trình trực quan từng bước đường đi của hai robot
điểm hoạt động trong môi trường tĩnh, hai chiều và có vật cản.
- So sánh, đánh giá bằng thực nghiệm giải thuật đề xuất và mơ hình tuyến tính
nguyên đã xây dựng cũng như thực nghiệm đánh giá hệ thống.
III. NGÀY GIAO NHIỆM VỤ: 10/07/2017
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 17/06/2018
V. CÁN BỘ HƯỚNG DẪN: PGS.TS. Trần Văn Hoài
Tp. HCM, ngày 19 tháng 08 năm 2018
CÁN BỘ HƯỚNG DẪN
(Họ tên và chữ ký)

PGS.TS. TRẦN VĂN HOÀI

TRƯỞNG KHOA KH & KTMT
(Họ tên và chữ ký)


Lời cảm ơn
Em xin bày tỏ lòng biết ơn sâu sắc nhất tới thầy – PGS.TS. Trần Văn
Hoài (khoa Khoa học và Kỹ thuật Máy tính – trường Đại học Bách Khoa –
Đại học Quốc gia TpHCM). Những định hướng ban đầu, những nhận xét sắc
sảo, sự khích lệ và hướng dẫn như nêu bật vấn đề của thầy đã truyền cảm
hứng cho em trong suốt thời gian thực hiện luận văn.
Em xin gửi lời cảm ơn chân thành nhất tới tất cả các thầy cô trong bộ

môn Khoa học Máy tính, cũng như các thầy cơ trong khoa Khoa học và Kỹ
thuật Máy tính – trường Đại học Bách Khoa – Đại học Quốc gia TpHCM đã
nhiệt tình giảng dạy, cung cấp cho chúng em những kiến thức, kinh nghiệm
khơng chỉ trong học tập mà cịn trong cuộc sống hàng ngày.
Đồng thời con xin cảm ơn đến tứ thân phụ mẫu, người thân trong gia
đình đã giúp đỡ, động viên, tạo điều kiện tốt nhất cho con và là động lực rất
lớn với con trong suốt khóa học tại Trường Đại học Bách Khoa để con có thể
hồn thành tốt luận văn thạc sĩ của mình.

TpHCM, tháng 06 năm 2018

Trần Nhật Hoàng Anh

i


Tóm tắt
Luận văn này đặc tả bài tốn tìm đường đa đối tượng theo hướng tiếp cận
mới, trong đó hai robot di chuyển tránh vật cản trong một môi trường tĩnh hai
chiều có ràng buộc với nhau về khoảng cách đồng thời cho phép một robot có
thể tạm dừng một robot di chuyển. Giải pháp được xây dựng theo hai phần.
Phần thứ nhất, xây dựng bản đồ chứa tập hợp các đường đi có thể cho hai
robot. Phần thứ hai, giải bài tốn tìm đường ngắn nhất trên đồ thị cho hai
đối tượng luôn cách nhau một cạnh và một trong hai đối tượng có thể tạm
dừng nếu cần. Kết quả lời giải của phương pháp được trình bày là gần đầy
đủ, tìm được lời giải nhanh. Trong đó, lời giải của bài toán con ở phần thứ
hai được chứng minh là tối ưu, đầy đủ và thời gian thực thi đa thức. Mơ hình
hóa bài tốn thành mơ hình tuyến tính nhị nguyên để kiểm chứng tính tối
ưu. Thực nghiệm cho thấy kết quả về chất lượng lời giải và thời gian thực thi
như lý thuyết đã nêu.


ii


Abstract
We present a new approach to the path planning problem for two moving
objects paired by distance constraints in known static environments, in which
one may pause while another moves. The solution is built in two parts. The
first part, a set of possible paths for two objects is built as a roadmap. The
second part is to solve the graph-based shortest path problem for two objects
paired by one edge constraint in which one of them may pause if necessary.
As a result we can show that the method is probabilistically complete, that is,
any solvable instance will be solved within a nite amount of time. In addition,
the solution of the subproblem in the second part is proved to be optimal,
complete and polynomial time. Modeling the problem into a binary linear
programming is used to verify the optimization. Experimental results show
the quality of the solution and the complexity time as stated.

iii


Lời cam đoan
Tôi xin cam đoan rằng, ngoại trừ các kết quả tham khảo từ cơng trình
khác như đã ghi rõ trong luận văn, luận văn tốt nghiệp “Bài toán tìm đường
ngắn nhất trên đồ thị cho hai robot tự hành có ràng buộc khoảng cách” là
cơng trình nghiên cứu do chính tơi thực hiện dưới sự hướng dẫn khoa học
của PGS.TS. Trần Văn Hồi và chưa có phần nội dung nào của luận văn này
được nộp để lấy một bằng cấp ở trường này hoặc trường khác.

TpHCM, tháng 06 năm 2018


Trần Nhật Hoàng Anh

iv


Mục Lục
Lời cảm ơn

i

Tóm tắt

ii

Tóm tắt

iii

Lời cam đoan

iv

Mục Lục

v

Danh Mục Hình

viii


Danh Mục Bảng

x

1 Tổng quan

1

2

1.1

Giới thiệu và động cơ . . . . . . . . . . . . . . . . . . . . . . . .

1

1.2

Mục tiêu, nhiệm vụ và phạm vi đề tài . . . . . . . . . . . . . .

3

1.3

Tổ chức luận văn . . . . . . . . . . . . . . . . . . . . . . . . . .

4

Các nghiên cứu liên quan


6

2.1

Các bài toán liên quan . . . . . . . . . . . . . . . . . . . . . . .

2.2

Các phương pháp tìm đường (path – planning) cho một robot
đã được nghiên cứu . . . . . . . . . . . . . . . . . . . . . . . . .

2.3

6

9

2.2.1

Đồ thị tầm nhìn . . . . . . . . . . . . . . . . . . . . . . .

10

2.2.2

Sơ đồ Voronoi

. . . . . . . . . . . . . . . . . . . . . . .


13

2.2.3

Phân hoạch môi trường (Cell decomposition) . . . . . .

13

2.2.4

Trường thế năng (Potential Field) . . . . . . . . . . . .

15

Các kỹ thuật tìm đường cho nhiều robot . . . . . . . . . . . . .

20

v


Luận văn thạc sĩ - Khoa học máy tính

3 Định nghĩa bài toán và các giả định

24

3.1

Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


24

3.2

Đặc tả bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

3.3

Tính chất của bài tốn . . . . . . . . . . . . . . . . . . . . . . .

27

4 Cơ sở lý thuyết

29

4.1

Đồ thị đường (Line graph) . . . . . . . . . . . . . . . . . . . . .

29

4.2

Các giải thuật tìm đường đi ngắn nhất cổ điển . . . . . . . . .

30


4.2.1

A-sao . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

4.3

Cây tứ phân . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

34

4.4

Quy hoạch tuyến tính . . . . . . . . . . . . . . . . . . . . . . . .

35

5 Phương pháp biến đổi đồ thị kết hợp cây tứ phân

39

5.1

Phương pháp biến đổi đồ thị . . . . . . . . . . . . . . . . . . . .

41

5.2


Áp dụng giải thuật A* trên đồ thị H . . . . . . . . . . . . . . .

47

5.3

Biểu diễn môi trường hoạt động của robot dưới dạng đồ thị .

49

5.3.1

Biểu diễn môi trường bằng cây tứ phân . . . . . . . . .

49

5.3.2

Giải thuật tìm cell lân cận . . . . . . . . . . . . . . . . .

54

5.3.3

Bản đồ đường đi (Path Connectivity Graph) . . . . . .

58

5.4


Xây dựng mô hình tuyến tính nhị ngun cho bài tốn tối ưu
tìm đường hai đối tượng . . . . . . . . . . . . . . . . . . . . . .

6 Thực nghiệm

60
61

6.1

Tập dữ liệu

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

6.2

Các tham số và cài đặt ban đầu . . . . . . . . . . . . . . . . . .

63

6.3

Kết quả thực nghiệm . . . . . . . . . . . . . . . . . . . . . . . .

63

6.4


Kết luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

70

7 Kết luận

72

7.1

Tổng kết . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

73

7.2

Những đóng góp của đề tài . . . . . . . . . . . . . . . . . . . . .

73

7.3

Hướng phát triển đề tài . . . . . . . . . . . . . . . . . . . . . . .

74

vi



Luận văn thạc sĩ - Khoa học máy tính

Tài liệu tham khảo

75

vii


Danh Mục Hình
2.1

Sơ đồ mơ hình đa UAV [24] . . . . . . . . . . . . . . . . . . . .

8

2.2

Một ví dụ tìm đường sử dụng đồ thị tầm nhìn. [12] . . . . . .

11

2.3

Ví dụ của Lee Scan với danh sách cạnh . . . . . . . . . . . . .

12

2.4


Đồ thị tầm nhìn và sơ đồ Voronoi. . . . . . . . . . . . . . . . .

13

2.5

Phương pháp phân hoạch dọc sử dụng các ô để xây dựng lộ
trình để tìm lời giải. . . . . . . . . . . . . . . . . . . . . . . . . .

14

2.6

Mơ phỏng lực hút của đích cần tới . . . . . . . . . . . . . . . .

16

2.7

Mô phỏng lực đẩy của vật cản cần né tránh . . . . . . . . . . .

17

2.8

Kết hợp đối tượng mục tiêu và vật cản . . . . . . . . . . . . . .

18

2.9


Hành trình của robot trong Potential Field [30] . . . . . . . . .

19

2.10 Trường thế năng song song [30] . . . . . . . . . . . . . . . . . .

20

2.11 Trường thế năng vuông góc [30] . . . . . . . . . . . . . . . . . .

20

2.12 Trường thế năng tiếp tuyến [30] . . . . . . . . . . . . . . . . . .

21

2.13 Trường thế năng hỗn độn [30] . . . . . . . . . . . . . . . . . . .

21

2.14 Trường thế năng trong góc hộp[30] . . . . . . . . . . . . . . . .

22

3.1

Khơng gian cấu hình . . . . . . . . . . . . . . . . . . . . . . . .

25


4.1

a) Đồ thị G1; b) Đồ thị G2 [47] . . . . . . . . . . . . . . . . . .

30

4.2

Một ví dụ cây tứ phân. . . . . . . . . . . . . . . . . . . . . . . .

35

5.1

Outline của giải pháp được đề xuất. . . . . . . . . . . . . . . .

40

5.2

Một trường hợp quy dẫn đồ thị H từ đồ thị G . . . . . . . . .

43

5.3

Một trường hợp một trong hai robot dừng . . . . . . . . . . . .

44


5.4

Hình ảnh minh họa . . . . . . . . . . . . . . . . . . . . . . . . .

49

5.5

a) Bước 1; b) Bước 2 c) Bước 3 . . . . . . . . . . . . . . . . . .

51

5.6

a) Bước 4; b) Bước 5; c) Bước 6

52

viii

. . . . . . . . . . . . . . . . .


Luận văn thạc sĩ - Khoa học máy tính

5.7

Mã hóa cây tứ phân . . . . . . . . . . . . . . . . . . . . . . . . .


53

5.8

Các cạnh bên . . . . . . . . . . . . . . . . . . . . . . . . . . . .

54

5.9

Quá trình xác định lân cận phía đơng của node A (tức node G) 57

6.1

Các dạng đồ thị . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.2

Biểu đồ đánh giá thời gian thực thi khi số vật cản tăng làm số
cạnh của G thay đổi . . . . . . . . . . . . . . . . . . . . . . . .

6.3

7.1

64

Biểu đồ đánh giá thời gian thực thi của phương pháp H và
phương pháp ILP dựa trên dạng đồ thị hình học - dày . . . . .


6.4

62

69

Biểu đồ đánh giá thời gian thực thi của phương pháp H và
phương pháp ILP dựa trên dạng đồ thị hình học - thưa . . . .

71

Tổng quan bài tốn tìm đường . . . . . . . . . . . . . . . . . .

72

ix


Danh Mục Bảng
4.1

Mã giả thuật toán A* . . . . . . . . . . . . . . . . . . . . . . . .

33

5.1

ADJ(S,Q) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

55


5.2

REFLECT(S,Q) . . . . . . . . . . . . . . . . . . . . . . . . . . .

55

5.3

OPQUAD(Q) . . . . . . . . . . . . . . . . . . . . . . . . . . . .

55

5.4

COMMONSIDE(Q1,Q2) . . . . . . . . . . . . . . . . . . . . . .

55

5.5

Mã giả thuật tốn tìm láng giềng trong cây tứ phân . . . . . .

58

5.6

Mã giả thuật tốn tìm láng giềng trong cây tứ phân . . . . . .

59


6.1

Kết quả thực nghiệm bài tốn tìm đường tránh vật cản trong
không gian tĩnh hai chiều . . . . . . . . . . . . . . . . . . . . .

6.2

Kết quả thực nghiệm bài tốn tìm đường ngắn nhất cho hai
đối tượng trên đồ thị (kiểu đồ thị hình học - dày) . . . . . . .

6.3

65

67

Kết quả thực nghiệm bài tốn tìm đường ngắn nhất cho hai
đối tượng trên đồ thị (kiểu đồ thị hình học - thưa) . . . . . . .

x

69


Chương 1
Tổng quan
1.1

Giới thiệu và động cơ

Các thiết bị tự hành hay người máy là một thiết bị nhân tạo trông giống

như con người, hoạt động tự động hoặc bán tự động bằng sự điều khiển của
máy tính hoặc các vi mạch điện tử được lập trình. Người máy có nhiều ứng
dụng hữu ích trong các lĩnh vực sản xuất, thám hiểm vụ trụ. . . hay để phục
vụ cho mục đích trinh thám quân sự, hoặc dân sự. Ví dụ: tham dị địa hình
dưới đáy đại dương hay vực sâu, tìm tàu đắm dưới biển, dị tìm các đối tượng
cụ thể ở khu vực nguy hiểm, khai phá mìn, robot thay thế con người làm
việc ở những môi trường độc hại hay robot thay con người làm việc nhà, tìm
kiếm và cứu nạn, theo dõi các lồi có nguy cơ tuyệt chủng, kết nối mạng đa
tác nhân và tối ưu hóa các quy trình sản xuất của nhà máy. Làm sao có thể
chuyển đổi các nhiệm vụ trên thành các mơ tả mức thấp phù hợp để có thể
kiểm soát được các thiết bị?. Các ứng dụng trên làm phát sinh các vấn đề
về lập kế hoạch chuyển động tùy thuộc vào các ràng buộc khác nhau. Những
ràng buộc từ tránh chướng ngại vật, khoảng cách đến những vấn đề động học
và chuyển động. Nhu cầu ngày càng tăng về các hệ thống tự trị trong cả đấu
trường quân sự và dân sự cũng như tính hữu dụng của các thiết bị thông
minh đã thúc đẩy cho sự phát triển không ngừng của các giải thuật cho robot
như các giải thuật lưu vết (tracking), điều khiển (controling) và giải thuật tìm
đường (path planning). Nhiều thuật tốn đã được phát triển để cung cấp các
giải pháp cho vô số các vấn đề về lập kế hoạch chuyển động.
Cùng với bài tốn tìm đường cho một robot thì các thuật tốn lập kế
1


Luận văn thạc sĩ - Khoa học máy tính

hoạch đường dẫn đa đối tượng (path planning for multi-agents), những năm
gần đây, thu hút sự chú ý đáng kể trong các cộng đồng hệ thống và điều khiển
thông minh. Hơn nữa các đối tượng này cịn có các ràng buộc với nhau, trong

đó khơng chỉ một đường đi ngắn nhất được tìm ra mà nhiều đường đi ngắn
nhất ln thỏa những ràng buộc cụ thể sao cho k đối tượng không đụng độ
với nhau tại mỗi bước di chuyển là kết quả của bài tốn. Robot thường di
chuyển theo nhóm phối hợp chặt chẽ với nhau để dị tìm mục tiêu cụ thể. Bởi
vì, so với một robot lớn đơn lẻ:
(i) Chế tạo và vận hành nhiều robot nhỏ thì tiết kiệm hơn nguyên vật liệu
và nhiêu liệu (xăng, dầu).
(ii) Khả năng bị phát hiện bởi kẻ thù ít hơn.
(iii) tăng cường độ bền (thơng qua dự phịng)
(iv) Có thể đạt được mục tiêu trong thời gian nhanh hơn.
(v) Sự hỏng (damage) của một robot thành viên thì khơng gây ra sự thất
bại của mục tiêu chung.
(vi) các đội robot có thể tăng miền ứng dụng của tự trị robot bằng cách
cung cấp giải pháp cho các tác vụ vốn đã được phân phối, theo thời
gian, không gian hoặc chức năng.
Từ những năm 1980, các nhà nghiên cứu đã giải quyết được nhiều vấn đề
trong các nhóm đa robot, chẳng hạn như các kiến trúc điều khiển, giao tiếp,
phân bổ nhiệm vụ, học tập.
Một vấn đề quan trọng trong các nhóm robot di động này là điều phối các
chuyển động của nhiều robot tương tác trong cùng một không gian làm việc.
Bất kể nhiệm vụ của robot là gì, họ phải có khả năng chia sẻ hiệu quả khơng
gian làm việc để ngăn chặn sự can thiệp giữa các thành viên trong nhóm. Giải

2


Luận văn thạc sĩ - Khoa học máy tính

pháp cho vấn đề phối hợp chuyển động được tiếp cận theo nhiều cách khác
nhau, tùy thuộc vào mục tiêu cơ bản của đội robot. Trong một số trường hợp,

đường dẫn của robot được lên kế hoạch và phối hợp một cách rõ ràng, ví dụ
như ứng dụng quản lý kho bãi. Trong các trường hợp khác, việc lập kế hoạch
được thư giãn và chủ yếu là để tránh va chạm, áp dụng cho các nhiệm vụ như
giao hàng bữa ăn bệnh viện tự động. Trong các tình huống khác, các robot
có thể có các cơ chế ít lập kế hoạch trước, tập trung vào việc phối hợp chuyển
động của robot trong thời gian thực bằng cách sử dụng các phương pháp tiếp
cận phản ứng, dựa trên hành vi hoặc dựa vào lý thuyết điều khiển, chẳng hạn
như sẽ được sử dụng trong các ứng dụng lưu giữ hoặc tạo hình.
Lý thuyết đồ thị là ngành khoa học được phát triển từ lâu nhưng lại
có nhiều ứng dụng hiện đại, nó là kiến thức cơ sở cho nhiều ngành khoa học
kỹ thuật khác nhau như Điện tử, Hóa học, Ngơn ngữ học, Kinh tế học, Máy
tính,... Nhiều khái niệm của lý thuyết đồ thị được sinh ra từ các vấn đề thực
tiễn như: đường đi, chu trình, tập ổn định, chu số, sắc số, duyệt đồ thị, đường
đi Hamilton, tâm đồ thị, luồng vận tải, đồ thị phẳng, cây bao trùm, cây biểu
thức, cây mã tiền tố tối ưu. Vì vậy lý thuyết đồ thị gắn kết nhiều ngành khoa
học lại với nhau.

1.2

Mục tiêu, nhiệm vụ và phạm vi đề tài
Mục tiêu chính của luận văn là nhìn bài tốn tìm đường ngắn nhất

tránh vật cản cho hai đối tượng ở khía cạnh mới rằng hai đối tượng luôn cách
nhau một khoảng cách nhất định. Đề tài cho thấy khả năng ứng dụng của
sự kết hợp giữa lý thuyết đồ thị và giải thuật thơng minh vào bài tốn tìm
đường đa đối tượng. Góc nhìn mới đã phát huy sức mạnh của bài tốn cổ điển.

Khơng gian tìm kiếm được biểu diễn là một đồ thị đơn, vơ hướng, có
trọng số. Trong khi di chuyển một trong hai đối tượng có thể dừng lại, đồng
thời chúng ln ln có kết nối với nhau về khoảng cách. Sự kết nối này tượng


3


Luận văn thạc sĩ - Khoa học máy tính

trưng cho ý nghĩa trong thực tế rằng: hoạt động của cả nhóm là sự kết hợp
của các hành động phối hợp của các đối tượng. Mỗi đối tượng tự điều khiển
và nó khai thác khơng chỉ kiến thức riêng của nó về mơi trường xung quanh,
mà cịn các dữ liệu nhận được từ các đối tượng láng giềng mà nó có thể truy
cập.

Các nội dung chính trong đề tài bao gồm:
• Tìm hiểu tổng quan các giải pháp cho bài tốn tìm đường một đối tượng

và đa đối tượng
• Tìm hiểu các giải pháp cụ thể cho bài tốn tìm đường đi ngắn nhất (theo

khoảng cách) tránh vật cản cho hai đối tượng có ràng buộc với nhau về
khoảng cách bằng cách kết hợp lý thuyết đồ thị và cell decomposition với
độ phức tạp tính tốn trong thời gian đa thức
• Tìm hiểu quy hoạch tuyến tính ngun (Integer Linear Programming

ILP)
• Giải thuật đề xuất được chạy thực nghiệm trên tập dữ liệu thực tế và so

sánh với mơ hình ILP

1.3


Tổ chức luận văn

Luận văn được trình bày gồm có bảy chương:
Chương 1: Tổng quan
Chương 2: Các nghiên cứu liên quan
Chương 3: Định nghĩa bài toán và các giả định
Chương 4: Cơ sở lý thuyết
Chương 5: Phương pháp biến đổi đồ thị kết hợp cây tứ phân
Chương 6: Thực nghiệm
Chương 7: Kết luận
4


Luận văn thạc sĩ - Khoa học máy tính

Chương 1 giới thiệu đề tài cũng như nêu nhiệm vụ và phạm vi của đề tài.
Chương 2 tóm tắt các cơng trình liên quan, trình bày tổng quan về các kỹ
thuật và phương pháp phổ biến trong việc xác định đường đi của robot. Bài
tốn tìm đường tránh vật cản trong mơi trường biết trước cho hai robot có
ràng buộc với nhau về khoảng cách là một hướng tiếp cận mới trong bài tốn
tìm đường (path planning) này. Chương 3 nêu ra các giả định, đặc tả chi tiết
bài toán một cách tốn học và tính chất của bài tốn. Chương 4 trình bày
các cơ sở lý thuyết của các phương pháp được ứng dụng để tìm lời giải cho
bài tốn đã đặt ra. Trên các lý thuyết ở chương 4, chương 5 trình bày cụ thể
các bước của giải pháp đề xuất. Giải pháp này tiếp cận theo hướng adaptive
cell decomposition kết hợp phép quy dẫn đồ thị. Chương này cũng trình bày
mơ hình tuyến tính nhị ngun cho bài tốn tìm đường ngắn nhất trên đồ thị
cho hai đối tượng có ràng buộc cách nhau một cạnh. Chương 6 trình bày tập
dữ liệu và kết quả thực nghiệm để kiểm chứng chất lượng lời giải và thời gian
thực thi của giải pháp đã hiện thực. Chương 7 kết lại các kết quả đã đạt được

và nêu các hướng phát triển có thể để hồn thiện hơn đề tài.

5


Chương 2
Các nghiên cứu liên quan
2.1

Các bài tốn liên quan

Cơng trình [39], Subhrajit Bhattacharya và các cộng sự nghiên cứu bài tốn
tìm đường đa đối tượng với ràng buộc tham số thời gian về khoảng cách từng
đôi một với nhau. Đây là bài toán thường nảy sinh khi lập kế hoạch cho các
hệ thống nhiều robot với phạm vi giao tiếp hạn chế. Các tác giả đặt vấn đề
như là tìm kiếm trên N đồ thị đường đi tối ưu thỏa mãn ràng buộc khoảng
cách. Giải pháp DPC lặp lại việc tìm kiếm trên các đồ thị này với sự gia tăng
dần dần của các ràng buộc khoảng cách cho đến khi đạt được sự hội tụ đầy
đủ. Các ràng buộc này là ràng buộc mềm, được chấp nhận vi phạm theo hàm
phạt (penalty function) kiểu kỹ thuật tăng cường đối số Lagrange. Các tác
giả đã chứng minh rằng dưới điều kiện cụ thể giải thuật đảm bảo hội tụ thành
giải pháp tối ưu. Thực nghiệm cho thấy thuật toán hội tụ nhanh chóng cho
các nhóm tối đa sáu đối tượng cùng hoạt động trong môi trường lộn xộn. Và
các kết quả mô phỏng cũng cho thấy việc triển khai và thực hiện thuật tốn
trên ba robot tìm đường trên môi trường lộn xộn trong khi tuân theo các giới
hạn khoảng cách theo tham số thời gian. Các tác giả mở rộng bài toán này
trong [40]: mỗi robot được cho một tập hợp các tác vụ khơng có thứ tự mà nó
phải thực thi trước khi nó di chuyển đến mục tiêu của nó, trong khi các hàm
mục tiêu, các ràng buộc mềm về khoảng cách và độ phức tạp được kế thừa
từ giải thuật DPC trên. bằng cách xây dựng đồ thị trạng thái - tác vụ và đề

xuất một hàm heuristic hiệu quả để thực hiện tìm kiếm trên đồ thị này. Giải
thuật sẽ quyết định thứ tự thực hiện các tác vụ sao cho đạt được lời giải tối
6


Luận văn thạc sĩ - Khoa học máy tính

ưu đồng thời các ràng buộc khoảng cách được thỏa mãn cùng với việc thực
hiện thành công các tác vụ.
Mariusz Glabowski và các cộng sự [26], Yogita Gigras, Kusum Gupta[27] cho
thấy rằng các giải thuật Meta-Heuristic đã giải quyết bài tốn tìm đường đi
ngắn nhất cho nhiều đối tượng khá hiệu quả và cho lời giải gần tối ưu. Đây
là một bài tốn tối ưu tổ hợp, dạng bài tốn có độ phức tạp tính tốn cao
thuộc lớp NP khó. [27] thực hiện một nghiên cứu so sánh giữa giải thuật bầy
đàn (Particle swarm optimization) và giải thuật đàn kiến (Ant Algorithm).
Kết quả thực nghiệm cho thấy giải thuật đàn kiến vượt trội hơn so với tối
ưu hóa bầy hạt trong thời gian tính tốn. Bên cạnh đó cịn có giải thuật mô
phỏng luyện kim SA (Simulated Annealing), giải thuật di truyền GA (Genetic
Algorithm) được áp dụng cho bài toán này bởi các tác giả O. Castillo và L.
Trujillo [28]. Với độ phức tạp tính tốn cao của các bài tốn tối ưu tổ hợp
cũng như đòi hỏi về mặt thời gian, việc giải các bài tốn này với tính chất
tuần tự của giải thuật sẽ gặp phải những vấn đề về thời gian thực hiện chương
trình, tốc độ xử lý, khả năng lưu trữ của bộ nhớ, xử lý dữ liệu với quy mơ
lớn. Kích thước bài tốn tăng lên và khơng gian tìm kiếm càng lớn u cầu
cần phải song song hóa các giải thuật [29] để tăng tốc độ và hiệu quả của giải
thuật.
Yongbo Chen, Jianqiao Yu và hai cộng sự khác [24] trình bày một thuật tốn
hiệu quả và khả thi cho bài tốn tìm đường cho nhiều máy bay không người
lái (multi-UAVs) trong môi trường thực tế biết trước. Các tác giả cải tiến
phương pháp artificial potential field. Để tránh đụng độ giữa các UAV, các

tác giả đưa ra khái niệm định dạng, quy tắc để thay đổi định dạng và quá
trình tái cấu trúc; tức là các UAV luôn di chuyển theo một định dạng xác
định trước, tuy nhiên trong một số trường hợp chúng có thể rời khỏi đội hình
và tính độ lỗi cho đường đi đó. Bài báo này áp dụng định dạng hình xương
cá và kích thước của nó được thể hiện trong hình 2.1. Mơ hình tìm đường
cho lead plane được thực hiện độc lập trước, các wingman cần phải theo các
vị trí được gọi là "điểm mục tiêu ảo" để duy trì định dạng. Yếu tố khoảng

7


Luận văn thạc sĩ - Khoa học máy tính

Hình 2.1: Sơ đồ mơ hình đa UAV [24]

cách giữ các UAV là ràng buộc mềm. Kết quả của mô phỏng thực nghiệm đã
chứng minh rằng phương pháp đề xuất có khả năng tìm đường tốt và khắc
phục được vấn đề "vùng chết" trong vấn đề tìm đường, đồng thời chỉ ra rằng
các sai số định dạng lớn trong khu vực ảnh hưởng của các chướng ngại vật,
và nhỏ ở khu vực khơng có chướng ngại vật.

Wagner và Choset [25] hiện thực giải thuật M* trên không gian được biểu
diễn như hệ tọa độ có số chiều thay đổi cho bài tốn lập kế hoạch đường đi
cho nhiều robot (multirobot path planning). Đây là một bài toán tối ưu về
robot trong lĩnh vực trí tuệ nhân tạo và kết quả của bài toán là n đường đi
tối ưu cho n robot đồng thời tránh được sự đụng độ giữa các robot. Các giải
thuật để giải bài tốn này có thể được chia thành hai loại: ghép và tách các
robot. Mỗi loại đều có ưu điểm và nhược điểm riêng. Các tác giả đã khai thác

8



Luận văn thạc sĩ - Khoa học máy tính

các lợi ích của mỗi loại giải thuật, kết hợp chúng để đưa ra lời giải M*. M*
được chứng minh là thực sự đầy đủ và tối ưu, đồng thời thực nghiệm cũng cho
thấy độ phức tạp trung bình của nó thì nhỏ hơn độ phức tạp trung bình của
giải thuật A*. Tuy nhiên, M* có một điểm yếu. Nó sẽ thất bại trong trường
hợp có một số lượng robot đủ lớn đổ dồn về một điểm, bởi vì khi đó M* phải
tìm kiếm trên một khơng gian với số chiều q lớn. Số lượng robot bao nhiêu
là đủ lớn và giải pháp khả thi cho trường hợp này rM* cũng được nghiên cứu
tiếp theo. Và dĩ nhiên để tìm được lời giải với những ràng buộc về bộ nhớ
máy tính và thời gian, rM* khơng cịn đảm bảo được tính đầy đủ và tối ưu
của M*.

2.2

Các phương pháp tìm đường (path – planning) cho một robot đã được nghiên cứu

Các phương pháp tổ hợp gồm các giải thuật tìm đường cổ điển sinh ra một
đồ thị liên thông dựa trên các tính tốn hình học, được gọi là roadmap, tượng
trưng cho sự liên thơng của workspace: đồ thị tầm nhìn (visibility graph), sơ
đồ Voronoi (Voronoi diagram), cell decomposition. Dựa trên tính tốn hình
học chính xác, các giải thuật thuộc phương pháp này đều có tính đầy đủ, có
nghĩa là cho bất kỳ bài tốn cụ thể nào, thuật tốn sẽ tìm ra lời giải tốt nhất
hoặc sẽ báo cáo chính xác rằng khơng có lời giải nào tồn tại. Một vài giải
thuật thì hiệu quả và dễ hiện thực. Tuy nhiên một vài giải thuật thì đánh đổi
tính đầy đủ với tính thực tế, tức là nó có thể có độ phức tạp thời gian tuyệt
với nhưng lại khó hiện thực.
Định nghĩa 2: Một roadmap G(V, E) là một đồ thị được dùng để rời rạc

hóa khơng gian liên tục Xf ree sao cho thỏa mãn hai tính chất sau:
− Khả năng tiếp cận: Bất kỳ điểm nào thuộc Xf ree thì đều có thể đến được

từ một đỉnh nào đó của roadmap. Cho điểm cấu hình q ∈ Xf ree , thì ln
tìm được một cách dễ dàng và hiệu quả π[0, 1] → Xf ree sao cho π(0) = q
9


Luận văn thạc sĩ - Khoa học máy tính

và π(1) = ν với ν ∈ V .
− Bảo tồn liên thơng: đảm bảo tính liên thơng của free configuration space.

Cho hai điểm cấu hình q1 , q2 ∈ Xf ree theo điều kiện 1 tìm được 2 đỉnh
v1 , v2 ∈ V , nếu tồn tại đường đi π[0, 1] → Xf ree sao cho π(0) = q1 và
π(1) = q2 thì tồn tại π [0, 1] → G sao cho π (0) = v1 và π (1) = v2 .

2.2.1

Đồ thị tầm nhìn

Đồ thị tầm nhìn là một trong những phương pháp tìm đường sớm nhất và
xây dựng các đường dẫn thông qua kết nối mỗi cặp đỉnh của các chướng ngại
vật bằng một đường thẳng mà không đi qua bên trong các chướng ngại vật.
Phân tích đồ thị tầm nhìn là một bài tốn đầy thách thức vì cấu trúc tổ hợp
của đồ thị tầm nhìn vẫn chưa được hiểu đầy đủ.
Định nghĩa 3: Đồ thị tầm nhìn là một đồ thị vô hướng G (V, E) được xác
định cụ thể như sau:
− V là tập hợp các đỉnh của vật cản và điểm khởi đầu, mục tiêu mà robot


cần di chuyển.
− E là tập con của VxV, hai đỉnh của G tạo thành một cạnh khi và chỉ khi

đoạn thẳng hoặc là cạnh của vật cản hoặc hai đỉnh có thể đi được đến
nhau mà khơng bị cản trở bởi bất kì vật cản nào.
Input: một tập n điểm là đỉnh của các chướng ngại vật, điểm khởi đầu, điểm
kết thúc.
Output: một danh sách các điểm có thể nhìn thấy được của mỗi điểm

Một số thuật tốn sinh đồ thị tầm nhìn với độ phức tạp thời gian c ci
tin
- Naăve algorithm - Cỏch n gin nht để xây dựng đồ thị tầm nhìn là xét
mỗi cặp đỉnh (u,v) có giao nhau với bất kỳ cạnh nào của vật cản hay không.
10


Luận văn thạc sĩ - Khoa học máy tính

Hình 2.2: Một ví dụ tìm đường sử dụng đồ thị tầm nhìn. [12]

Nếu khơng, hai đỉnh u, v là hai đỉnh có thể nhìn thấy nhau và cạnh (u,v)
được thêm vào tập cạnh của đồ thị tầm nhìn. Dĩ nhiên là để hồn thành được
đồ thị tầm nhìn thì q trình kiểm tra này phải lặp lại với tất cả cặp đỉnh,
số cặp đỉnh phải xét là n2 (n là số đỉnh). Giải thuật có độ phức tạp thời gian
là O(n3 ) . Đối với lưu trữ, giải thuật cần ít nhất là O(n) cho input, và O(|e|)
không gian bộ nhớ để lưu lại đồ thị tầm nhìn. Năm 1979, Lozano-Perez v
Wesley, trỡnh by gii thut Naăve cho khi a din [13].
- Thuật tốn của Lee lần đầu tiên trình bày một giải pháp mới và có ý nghĩa,
chạy trong thời gian O(n2 log n). Ông đã cải tiến giải thuật Naăve bng cỏch
s dng mt bin th ca thut toỏn sweep-line, kết hợp cấu trúc dữ liệu là

cây tìm kiếm nhị phân để xử lý việc chèn và xóa danh sách cạnh. Nhờ sử
dụng thuật toán sắp xếp tối ưu, thao tác tìm kiếm, chèn và xóa cạnh có độ
phức tạp thời gian là O(log n). Ý tưởng của giải thuật là : với mỗi đỉnh v,
tầm nhìn đối với tất cả các đỉnh khác được tính bởi a) sắp xếp tất cả các đỉnh
xung quanh theo thứ tự góc từ một đường thẳng quét bắt đầu nào đó, b) sử
dụng kỹ thuật quét mặt phẳng để thăm mỗi đỉnh theo thứ tự góc, c) lưu vết
khoảng cách của mỗi đoạn thẳng xung quanh trên một đường quét bằng cấu
trúc dữ liệu đã được sắp xếp. Trong trường hợp xấu nhất, danh sách cạnh lưu
nhiều nhất là O(n) cạnh. Trong một lần quét, danh sách được sắp xếp theo
góc cần O(n) khơng gian bộ nhớ, nhưng có thể được giải phóng sau khi hồn
thành. [Lee, 1978] [14]
11


Luận văn thạc sĩ - Khoa học máy tính

Hình 2.3: Ví dụ của Lee Scan với danh sách cạnh

- O(n2 ) thuật toán sử dụng sắp xếp. Trong nhiều năm sau đó, thuật tốn
nhanh nhất để sinh đồ thị tầm nhìn được biết đến lúc bấy giờ có cận trên
thời gian thực thi là O(n2 logn). Đến năm 1985, Wezl [8, 15] khai thác đặc tính
đặc biệt của sự sắp xếp các đường thẳng (cặp các đỉnh) để giảm độ phức tạp
thành O(n2 ). Tiếp theo đó nhiều giải thuật được công bố cũng cho phép xây
dựng đồ thị tầm nhìn trong thời gian O(n2 ), hầu hết trong số đó hàm chứa
kiểu sắp xếp topo của các cặp đỉnh, chẳng hạn như công bố bởi Asano et al.,
(1986) và Edelsbrunner, (1987).
- Một trong những báo khoa học được công bố gần đây nhất về đồ thị tầm
nhìn có thời gian thực thi đạt được là O(nlogn + E), trong đó E là số cạnh
của đồ thị. Trong trường hợp xấu nhất, E = O(n2 ) cho một đồ thị hồn chỉnh,
nhưng một đồ thị hồn chỉnh thường là khơng phổ biến. Trong trường hợp tốt

nhất, thời gian thực thi giảm cịn O(n). Đây là các thuật tốn nhạy cảm đầu
ra cho các đồ thị có ngưỡng mật độ tối thiểu nhất định. [Ghosh and Mount,
1987] [16]

12


×