Để góp phần tự động hóa các robot di động; xe lăn thông minh để phục vụ nhu cầu của con người, thì việc hoạch định quỹ đạo đường đi cho robot, trong không gian trong nhà, là điều vô cùng
Trang 1HỌ VÀ TÊN HỌC VIÊN
LÊ THANH NGUYÊN
TÊN ĐỀ TÀI LUẬN VĂN THẠC SĨ
HOẠCH ĐỊNH ĐƯỜNG ĐI TỐI ƯU CHO
ROBOT DI ĐỘNG
Chuyên ngành : TỰ ĐỘNG HÓA
Mã số:………
LUẬN VĂN THẠC SĨ
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 : TS HUỲNH THÁI HOÀNG
(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 12 năm 2012 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
II NHIỆM VỤ VÀ NỘI DUNG:
a Tính toán, mô phỏng, quy hoạch quỹ đạo tối ưu cho robot di động, di chuyển trong môi trường trong nhà
b Thiết kế mô hình robot di động, minh họa điều khiển bám theo quỹ đạo tính toán được
III NGÀY GIAO NHIỆM VỤ : (Ghi theo trong QĐ giao đề tài) 2/7/2012
IV NGÀY HOÀN THÀNH NHIỆM VỤ: (Ghi theo trong QĐ giao đề tài) 30/11/2012
V CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên):
TS HUỲNH THÁI HOÀNG
Trang 4TÓM TẮT
Ngày nay, khoa học, kỹ thuật phát triển; cuộc sống con người này càng được nâng cao; cải thiện về chất và lượng Khi nhu cầu cuộc sống tăng cao; con người càng quan tâm nhiều hơn đến sự tiện nghi; sức khỏe v.v Đó cũng chính là lý do
vì sao mà việc tự động hóa hoàn toàn những thiết bị trong gia đình, tạo ra những con robot thông minh để phục vụ con người lại nhận được sự quan tâm rất nhiều của giới khoa học
Để góp phần tự động hóa các robot di động; xe lăn thông minh để phục vụ nhu cầu của con người, thì việc hoạch định quỹ đạo đường đi cho robot, trong không gian trong nhà, là điều vô cùng cấp thiết và mới mẻ đối với lĩnh vực điều khiển robot ở nước ta Điều này sẽ mở ra một hướng nghiên cứu mới, góp phần hoàn thiện hơn việc tự động hóa xe lăn thông minh; tối ưu hóa trong điều khiển robot tự hành, và đặc biệt là có thể áp dụng vào nhiều lĩnh vực khác trong cuộc sống, sản xuất, quốc phòng; hàng không v.v Chính vì vậy, luận văn tốt nghiệp sẽ
đề xuất cách tiếp cận và hướng giải quết cho việc “hoạch định đường đi tối ưu cho robot di động”
Thuật toán chính được sử dụng bao gồm limit-cycle ( chu kì giới hạn) kết hợp với giải thuật di truyền mã số thực, để tính toán và đưa ra được quỹ đạo tối ưu cho robot khi di chuyển từ điểm A đến điểm B cho trước, trong môi trường trong nhà Việc kết hợp các thuật toán lại với nhau sẽ phát huy được điểm mạnh của từng thuật toán, đồng thời loại bỏ các khuyết điểm Kết quả của việc tính toán sẽ được mô phỏng trên máy tính, và một robot di động được thiết kế với mục đích bám theo đường đi được đưa ra để chứng minh rằng kết quả tính toán quỹ đạo có thể điều khiển để bám theo được Vì thế các lý thuyết cho điều khiển bám theo đường đi được sử dụng
Trong tương lai, có thể mở rộng nghiên cứu phát triển và hoàn thiện cho các đối tượng cụ thể như xe lăn thông minh, xe hơi tự hành v.v Bên cạnh đó, kết quả của đề tài đưa ra một góc nhìn mới; hướng tiếp cận mới trong việc điều khiển robot tự hành ở nước ta, đặc biệt là những robot hoạt động trong nhà để phục vụ cho con người
Trang 5This will open up a new direction of research, contributing more complete automation of intelligent wheelchair; optimization of robot self-control, and in particular can be applied to many other areas in the life, production and defense; etc Therefore, the thesis will suggest approaches and solutions for scanning the
"optimal path planning for mobile robot"
Main algorithms used include limit-cycle (the limit cycle) combined with genetic algorithm code, to calculate and come up with the optimal trajectory for the robot to move from point A to point B before, in the indoor environment The combination of algorithms together will promote the strengths of each algorithm, while eliminating the cons The results of the calculation will be simulated on a computer, and a mobile robot designed for the purpose of sticking the path is given to demonstrate that the trajectory calculation results can be controlled to follow So the theory of path following is used
In the future, the results of the thesis can expand research, and development and improvements, made to specific objects such as smart wheelchairs, self-propelled car, etc Addition, results of the project to provide a new perspective; directions new approach to autonomous robot control in our country, especially the robot operating in the service of man
Trang 6để hoàn thành luận văn thạc sỹ này
Xin chúc mọi người sức khỏe, an lành, hạnh phúc
Thân ái Học viên
Lê Thanh Nguyên
Trang 71.1.2/ Ý nghĩa khoa học: 3
1.2/ Nghiên cứu tổng quan: 4
1.2.1/ Tổng quan bài toán hoạch định quỹ đạo: 4
1.2.2/ Các phương pháp hoạch định quỹ đạo: 6
1.3/ Mục tiêu của đề tài: 7
1.4/ Tính cấp thiết của đề tài: 7
1.5/ Các phương pháp hoạch định quỹ đạo: 8
1.5.1/ Hoạch định trường thế năng (Potential Field Planning): 8
1.5.2/ Hoạch định dựa trên việc lấy mẫu (Sampling Based Planning): 9
1.5.3/ Hoạch định dựa vào lưới tọa độ (Grid Based Planning): 11
1.6/ Các công cụ giải bài toán hoạch định và những công trình liên quan: 12
1.6.1/ Giải thuật di truyền (Genetic Algorithm): 12
1.6.2/ Điều khiển mờ và mờ kết hợp thêm giải thuật di truyền: 14
1.6.3/ Phương pháp Q-learning: 18
1.6.4/ Phương pháp Limit Cycle (Chu kì giới hạn): 19
1.7/ Xe lăn thông minh và bài toán hoạch định đường đi tối ưu: 22
1.8/ Hướng tiếp cận và phương pháp nghiên cứu: 24
CHƯƠNG 2 26
2.1/ Thuật toán Limit-cycle: 26
2.1.1/ Giới thiệu: 26
2.1.2/ Limit-cycle (với vòng ảo là đường tròn): 26
2.1.4/ Các bộ điều khiển cơ bản trong limit cycle: 30
2.2/ Giải thuật di truyền (GA): 38
Trang 82.2.2/ Giải thuật di truyền mã số thực [20]: 38
2.3/ Thuật toán bám theo quá khứ (Follow the Past) : 42
CHƯƠNG 3 46
3.1/ Tránh nhiều vật cản: 46
3.1.1/ Bẫy cục bộ: 46
3.1.2/ Gom nhiều vật cản nhỏ thành một vật cản lớn: 47
3.1.3/ Chọn lựa vật để tránh: 56
3.1.4/ Kết hợp giải thuật gom vật cản và chọn lựa vật cản: 61
3.2/ Không gian cục bộ: 63
3.2.1/ Thuật toán ưu tiên giữa các vùng không gian: 64
3.2.2/ Lưu đồ giải thuật của thuật toán ưu tiên chọn lựa hành vi robot: 65
3.3/ Tối ưu quỹ đạo: 68
3.3.1/ Giải thuật di truyền (GA) mã số thực: 68
3.3.2/ Ứng dụng GA mã số thực vào hoạch định đường đi tối ưu: 69
3.3.3/ Lưu đồ giải thuật tổng hợp: 77
CHƯƠNG 4 78
4.1/ Tính toán, mô phỏng trên Matlab: 78
4.1.1/ Xây dựng địa hình: 78
4.1.2/ Kết quả tính toán và mô phỏng trên Matlab: 80
4.2/ Xây dựng mô hình kiểm chứng: 88
4.2.1/ Xây dựng mô hình robot di động: 88
4.2.2/ Sơ đồ khối điều khiển robot: 94
4.2.3/ Thuật toán xử lý ảnh: 95
4.2.4/ Thuật toán điều khiển robot bám quỹ đạo: 96
CHƯƠNG 5 98
HƯỚNG PHÁT TRIỂN 98
5.1/ Kết quả đạt được: 98
5.2 Phát triển mô hình: 98
5.3 Phát triển thuật toán: 98
Trang 9Ngày nay, khoa học, kỹ thuật phát triển; cuộc sống con người này càng được nâng
cao; cải thiện về chất và lượng Khi nhu cầu cuộc sống tăng cao; con người càng quan
tâm nhiều hơn đến sự tiện nghi; sức khỏe v.v Đó cũng chính là lý do vì sao mà việc tự
động hóa hoàn toàn những thiết bị trong gia đình, tạo ra những con robot thông minh để
phục vụ con người lại nhận được sự quan tâm rất nhiều của giới khoa học
Robot tự hành, xe lăn thông minh, đã được nhiều nước tiên tiến trên thế giới nghiên
cứu và phát triển, tuy nhiên vẫn chưa hoàn thiện hết và bài toán hoạch định đường đi vẫn
là vấn đề mới; còn để mở nhiều vấn đề chưa giải quyết Đối với một nước đang phát triển
như nước ta thì việc tiếp cận; nghiên cứu, chế tạo một con robot tự hành hay chiếc xe lăn
như vậy là vấn đề mới mẻ, lý thú và nhiều thử thách Trong đó, việc hoạch định đường đi
được đánh giá là bài toán hay và mới, cần được quan tâm
Chính vì vậy, luận văn tốt nghiệp sẽ đề xuất cách tiếp cận và hướng giải quết cho
việc “hoạch định đường đi tối ưu cho robot di động”
1.1.2/ Ý nghĩa khoa học:
Hoạch định quỹ đạo là bài toán lớn và được ứng dụng rất rộng rãi trong nhiều lĩnh
vực khác nhau của cuộc sống
Tuy nhiên, việc giải bài toán này luôn có những khó khăn nhất định:
Việc hoạch định đường đi trong môi trường động, như thế giới thật, gặp rất nhiều
khó khăn Vì những đối tượng có khả năng gây ra va chạm không đứng yên
Bên cạnh đó, việc đưa ra quỹ đạo phải phù hợp với đối tượng điều khiển Ví dụ,
cùng một quỹ đạo đi từ A đến B nhưng quỹ đạo cho một chiếc ô tô 4 bánh với quỹ đạo
cho xe Segway RMP là khác nhau, vì đối với ô tô không thể đưa ra quỹ đạo có những
0
Trang 10Việc hoạch định một chuyển động được gọi là hoàn thành nếu trong một thời gian
nhất định, nó đồng thời đưa ra được giải pháp xử lí và đưa về báo cáo chính xác về
chuyển động, điều này là vô cùng phức tạp Phần lớn các thuật toán sử dụng đều dựa trên
các thuật toán hình học Do vậy, việc đưa ra được quỹ đạo sau cùng được thực hiện bởi
những phép tính phức tạp
Do vậy, xây dựng và giải quyết được bài toán hoạch định đường đi cho robot di
động không chỉ góp phần vào việc hoàn thiện hơn giải thuật điều khiển chiếc xe lăn; mà
còn đưa ra một góc nhìn mới hơn; một cách tiếp cận khác trong việc nghiên cứu, phát
triển và có thể từ đó mở rộng ra những hướng nghiên cứu khác tốt hơn, tối ưu hơn cho
việc điều khiển xe lăn thông minh nói riêng và điều khiển robot nói chung, đặc biệt là
robot tự hành, ở nước ta
1.2/ Nghiên cứu tổng quan:
1.2.1/ Tổng quan bài toán hoạch định quỹ đạo:
Quy hoạch quỹ đạo là di chuyển từ điểm A tới điểm B, đồng thời tránh vật cản, theo
thời gian Điều này có thề được tính toán bằng phương pháp rời rạc hoặc liên tục Quy
hoạch quỹ đạo là lĩnh vực quan trọng trong robot; nó đóng vai trò rất lớn trong việc tự
động hóa phương tiện
Có 2 thuật ngữ cơ bản:
Quy họach đường đi: đưa ra quỹ đạo hay đường đi, tránh vật cản mà không phụ
thuộc vào thời gian, nghĩa là không cần xác định thời gian robot di chuyển từ điểm A tới
điểm B
Quy hoạch quỹ đạo: đưa ra quỹ đạo hay đường đi, tránh vật cản, từ A đến B và
trong thời gian nhất định
Về cơ bản, quy hoạch quỹ đạo là quy hoạch đường dẫn bên cạnh việc lập kế hoạch
di chuyển dựa trên các yếu tố vận tốc, chuyển động và các đặc tính động học của robot
1.2.1.1/ Khái niệm :
Trang 11trong đó, SO(2) là nhóm trực giao của phép quay 2 chiều [23] Mỗi một cấu hình sẽ được
biểu diễn bởi 3 thông số (x,y,)
Nếu robot được xem là một hình khối 3 chiều, có thể di chuyển và xoay; không gian
làm việc sẽ là 3 chiều; còn C là nhóm Euclidean: SE(3) = R3*SO(3); và một cấu hình sẽ
cần tới 6 thông số: (x,y,z) cho sự di chuyển, và góc Euler ( , , )
Hình 1.1 Minh họa cho không gian làm việc
1.2.1.2/ Không gian trống:
Cfree là không gian trống, hay nói một cách khác tập hợp các cấu hình của không
gian này là không có vật cản Thông thường sẽ rất khó khăn để tính toán rõ ràng hình
dạng của Cfree Tuy nhiên, có thể kiểm tra dễ dàng một cấu hình trong Cfree Đầu tiên,
động học thuận sẽ xác định vị trí hình học của robot, và kiểm tra phát hiện va chạm nếu
hình dạng của robot va chạm với hình dạng của môi trường; hay nói một cách khác muốn
xác định một cấu hình có vật cản hay không chỉ cần dựa vào chuyển động và các cảm
biến phát hiện vật cản của robot
Trang 12Hình 1.2 Minh họa cho Cfree và Cobs
1.2.2/ Các phương pháp hoạch định quỹ đạo:
Có rất nhiều thuật toán cụ thể khác nhau, tuy nhiên, có thể quy về các phương pháp
cơ bản
Để giải quyết trong không gian ít chiều, có thể sử dụng phương pháp hoạch định
dựa vào lưới, bằng cách phủ lên mặt trên của không gian cấu hình một mạng lưới; hoặc
có thể giải quyết bằng các thuật toán hình học để tính hình khối và các sự kết nối trong
Cfree
Hoạch định chính xác chuyển động trong hệ thống nhiều chiều với những điều kiện
ràng buộc phức tạp là vấn đề vô cùng nan giải trong tính toán Phương pháp trường thế
năng lại rất hiệu quả khi giải quyết vấn đề này Tuy nhiên, phương pháp này dễ rơi vào
các vùng cực trị cục bộ Phương pháp hoạch định dựa trên lấy mẫu có thể tránh được các
cực trị cục bộ, và giải quyết được nhiều vấn đề khác một cách nhanh chóng Tuy nhiên,
phương pháp này lại không thể xác định được việc không tồn tại đường dẫn từ điểm đầu
đến điểm đích; mặc dù vậy, nó có một chỉ số xác suất báo hiệu sự thất bại, chỉ số này sẽ
tiến dần về 0 khi càng nhiều thời gian được sử dụng
Phương pháp này có thể được sử dụng khi hoạch định chuyển động trong các bài
toán phức tạp
Trang 131.4/ Tính cấp thiết của đề tài:
Việc xây dựng quỹ đạo, đường đi không chỉ bó gọn trong việc điều khiển robot mà
còn được áp dụng trong việc hỗ trợ, điều khiển các phương tiện giao thông như ô tô, xe
lửa…ngoài ra còn được sử dụng trong quân sự và hàng không vũ trụ Việc hoạch định
chính xác quỹ đạo quyết định sự thành công hay thất bại trong việc phóng các tên lửa hay
tàu con thoi vào không gian, điều khiển máy bay không người lái Do đó, bài toán hoạch
định quỹ đạo là bài toán được rất nhiều sự quan tâm của các nhà khoa học trên thế giới,
và còn khá mới mẻ ở nước ta
Kết quả của đề tài có thể được dùng vào việc điều khiển; nghiên cứu phát triển, chế
tạo xe lăn thông minh ở nước ta; phục vụ cho các bệnh viện; người khuyết tật và người
già
Bên cạnh đó, ứng dụng vào việc hỗ trợ, điều khiển các phương tiện giao thông cá
nhân như xe tải, ô tô v.v góp phần giảm tỉ lệ tai nạn giao thông, hiện đang rất cao ở nước
ta
Do đó, việc đưa ra phương pháp hoạch định đường đi cho robot di động là cần thiết
và mới mẻ trong việc phát triển lĩnh vực robot tự hành ở nước ta
Như đã giới thiệu ở trên, có ba phương pháp chính thường được áp dụng cho các bài
toán hoạch định quỹ đạo
Trang 14
1.5/ Các phương pháp hoạch định quỹ đạo:
1.5.1/ Hoạch định trường thế năng (Potential Field Planning):
Vùng thế năng là các điểm giá trị trên bản đồ, với mục tiêu là nơi có giá trị thấp
nhất, và các giá trị tăng dần tùy thuộc vào khoảng cách của điểm đó với mục tiêu Vật cản
được gán cho giá trị rất lớn Do vậy, việc của robot đơn giản là di chuyển đến những vị trí
tiềm năng có giá trị thấp nằm liền kề nó, những điểm này sẽ dẫn tới mục tiêu [27]
Hình 1.3 Minh họa cho trường thế năng
Một trong những cách tiếp cận để xử lý cấu hình của robot tại một điểm trong
trường thế năng là kết hợp việc hướng tới mục tiêu và đẩy khỏi vật cản Kết quả quỹ đạo
đầu ra là một đường đi Cách tiếp cận này có ưu điểm là đưa ra được quỹ đạo mà ít phải
tính toán Tuy nhiên, kỹ thuật này thường bị rơi vô bẫy của các vùng cực trị cục bộ, dẫn
đến việc thất bại trong việc tìm ra đường đi
Một trong những kĩ thuật để tránh bị mắc kẹt trong các vùng cực trị cục bộ là kết
hợp hoạch định phân tách Voronoi [24] (xem mỗi điểm là cực trị cục bộ) với hoạch định
theo trường thế năng Việc tính toán xây dựng biểu đồ Voronoi giúp cho việc hoạch định
theo trường thế năng hiệu quả hơn nhiều, mang lại ưu thế hoàn toàn trong việc hoạch
định quần thể [24]
Trang 15Hình 1.4 Quỹ đạo khi kết hợp hoạch định Voronoi và trường thế năng
1.5.2/ Hoạch định dựa trên việc lấy mẫu (Sampling Based Planning):
Phương pháp đường bản đồ (roadmap) là một trong các phương pháp hoạch định
đường đi dựa trên việc lấy mẫu Các thuật toán lấy mẫu sẽ tái hiện lại không gian cấu
hình dựa vào một lộ trình, đường bản đồ, của các cấu hình được lấy mẫu Đầu tiên, lấy
mẫu N điểm cấu hình trong không gian C và giữ lại những điểm nằm trong Cfree, và xem
những điểm này là điểm nút Một đường, tuyến tính từng đoạn, PQ được hình thành bằng
cách nối tất cả những điểm nút lại, sao cho PQ phải nằm trong Cfree [28] Sau đó, nó sẽ
được kiểm tra một lần nữa để phát hiện sự va chạm kể cả ở trong Cfree Để tìm đường nối
từ S, điểm đầu, tới G, điểm cuối thì các điểm này sẽ được thêm vào lộ trình Nếu đường
đi trong lộ trình nối được từ S tới G, xem như việc hoạch định thành công, và sau đó trả
về đường đi Nếu không thì cũng không xác định được lý do, có thể không tồn tại đường
đi từ S tới G trong Cfree, hoặc cũng có thể là lấy mẫu không đủ từ các điểm nút [28]
Trang 16
Hình 1.5 Minh họa quỹ đạo a) Quỹ đạo đúng b) Quỹ đạo sai
Hình 1.6 Minh họa cho phương pháp đường bản đồ
Phương pháp này hiệu quả trong không gian nhiều chiều; vì không giống như các
thuật toán tổ hợp, thời gian chạy phương pháp này không theo cấp số nhân phụ thuộc
kích thước của C Về cơ bản phương pháp này dễ thực hiện Phương pháp này đưa ra một
chỉ số xác suất; nghĩa là xác suất phương pháp này đưa ra được giải pháp, và nó sẽ tiệm
cận 1 khi càng nhiều thời gian được sử dụng Tuy nhiên, nó không thể xác định được
trường hợp không tồn tại giải pháp
Trang 171.5.3/ Hoạch định dựa vào lưới tọa độ (Grid Based Planning):
Việc hoạch định này dựa trên việc phủ lên một mạng lưới trên bản đồ Mỗi một cấu
hình sẽ tương ứng với một điểm lưới Robot di chuyển từ điểm lưới này đến điểm lưới
khác nằm trong vùng Cfree (việc này để kiểm tra phát hiện vật cản) Các hành động này
được rời rạc hóa; sau đó, một thuật toán tìm kiếm sẽ được dùng để tìm đường đi từ điểm
khởi hành đến mục tiêu
Hình 1.7 Minh họa cho phương pháp hoạch định theo lưới
Những cách tiếp cận phương pháp này đều đòi hỏi việc thiết lập độ phân giải cho
lưới Việc tìm đường sẽ nhanh hơn với lưới thô, lưới có độ phân giải thấp, tuy nhiên nó
có thể bỏ qua những đường dẫn xuyên qua các vùng hẹp trong Cfree Còn đối với lưới có
độ phân giải lớn thì phải có bộ nhớ lớn cho việc tính toán; hơn nữa số điểm lưới phát
triển theo cấp số nhân theo chiều không gian cấu hình, do vậy phương pháp này không
Trang 18Các cách tiếp cận truyền thống theo phương pháp hoach định dựa vào lưới là đưa ra
đường đi với sự thay đổi hướng được ràng buộc bởi các bội số của góc cơ sở, và thường
cho ra kết quả dưới tối ưu Giữa các góc của các đường đi tìm được, để tìm đường đi
ngắn hơn dựa vào việc lan truyền thông tin dọc theo biên của lưới (để tìm nhanh) mà
không giới hạn đường đi của nó tới các biên của lưới (tìm đường ngắn)
Cách tiếp cận dựa vào lưới tọa độ cần tìm đi, tìm lại; ví dụ, khi thông tin của robot
về không gian cấu hình thay đổi, hay bản thân không gian cấu hình thay đổi, trong lúc
đưa ra đường dẫn kế tiếp Bằng cách gia tăng phương thức phỏng đoán, các thuật toán
hoạch định lại, sẽ được thực hiện nhanh chóng dựa trên kinh nghiệm của việc hoạch định
các đường tương tự trước đó, và đồng thời tăng tốc việc đưa ra đường dẫn hiện tại
1.6/ Các công cụ giải bài toán hoạch định và những công trình liên quan:
Có thể tóm lược một số công cụ, thuật toán, tiếp cận các phương pháp trên trong
việc hoạch định đường đi cho robot di động của một số công trình đã công bố trong thời
gian gần đây:
1.6.1/ Giải thuật di truyền (Genetic Algorithm):
Giải thuật di truyền là một kỹ thuật của khoa học máy tính nhằm tìm kiếm giải pháp
thích hợp cho các bài toán tối ưu tổ hợp (combinatorial optimization) Giải thuật di truyền
là một phân ngành của giải thuật tiến hóa vận dụng các nguyên lý của tiến hóa như di
truyền, đột biến, chọn lọc tự nhiên, và lai ghép
Giải thuật di truyền thường được ứng dụng nhằm sử dụng ngôn ngữ máy tính để mô
phỏng quá trình tiến hoá của một tập hợp những đại diện trừu tượng (gọi là những nhiễm
sắc thể) của các giải pháp có thể (gọi là những cá thể) cho bài toán tối ưu hóa vấn đề Tập
hợp này sẽ tiến triển theo hướng chọn lọc những giải pháp tốt hơn [19], [20]
Thông thường, những giải pháp được thể hiện dưới dạng nhị phân với những chuỗi
0 và 1, hoặc các chuỗi số, nhưng lại mang nhiều thông tin mã hóa khác nhau Quá trình
tiến hóa xảy ra từ một tập hợp những cá thể hoàn toàn ngẫu nhiên ở tất cả các thế hệ
Trong từng thế hệ, tính thích nghi của tập hợp này được ước lượng, nhiều cá thể được
chọn lọc định hướng từ tập hợp hiện thời (dựa vào thể trạng), được sửa đổi (bằng đột biến
hoặc tổ hợp lại) để hình thành một tập hợp mới Tập hợp này sẽ tiếp tục được chọn lọc,
Trang 19Hình 1.8 Hoạch định đường đi cho đối tượng
Hình 1.9 Không gian làm việc
Trang 20Và kết quả đưa ra sau khi tính toán là {0 4 6 6 7 9 15 15} [13]
Cũng sử dụng công cụ là giải thuật di truyền nhưng một số công trình khác lại giải
bài toán hoạch định đường đi cho robot theo phương pháp lưới tọa độ [1] Và cho kết quả
Do đó, việc ứng dụng giải thuật di truyền để giải bài toán hoạch định đường đi hoàn
toàn có thể tìm ra được đáp án tốt nhất, đường đi tốt nhất Tuy nhiên, nó lại vấp phải một
hạn chế là chỉ ứng dụng tốt trong một môi trường cố định, bất biến[1], [13] Vì quần thể
ban đầu, hay chính là những giá trị định hướng được lấy thông tin từ môi trường, hay một
địa hình, bản đồ cụ thể [13]; do đó khi môi trường thay đổi; toàn bộ các giá trị tính toán,
thu thập thông tin phải làm lại từ đầu [13], gây lãng phí thời gian và khó đáp ứng được
đối với môi trường rộng có nhiều sự biến động hay thay đổi đột ngột
1.6.2/ Điều khiển mờ và mờ kết hợp thêm giải thuật di truyền:
Sự tự thích nghi trong việc định hướng cho robot và hoạch định đường đi là một
trong những vấn đề nghiên cứu quan trọng đối với robot thông minh trong công nghiệp
Trang 21Hình 1.11 Phân cấp bộ điều khiển mờ
Hình 1.12 Chuyển đổi đầu ra của bộ điều khiển mờ
Về cơ bản; hai bộ điều khiển mờ này đáp ứng được mục tiêu ban đầu đề ra, là đến
được mục tiêu và né vật cản [15]
Trang 22Hình 1.13 Quỹ đạo a) không có vật cản b) có vật cản
Tuy nhiên, quỹ đạo di chuyển của robot không trơn tru và sẽ gặp khó khăn để có thể
điều khiển theo quỹ đạo đó Bên cạnh đó; để thiết kế được nhiều bộ điều khiển mờ cùng
lúc phù hợp với một đối tượng, đòi hỏi nhiều kinh nghiệm đối với đối tượng đó
Ngoài ra, người ta còn kết hợp điều khiển mờ với giải thuật di truyền [2] Mục tiêu
của phương pháp này là điều khiển robot di động tránh được vật cản và đến được mục
tiêu Trong đó, bộ điều khiển mờ đóng vai trò ra quyết định; hướng dẫn cho robot tránh
vật cản và đi đến mục tiêu; còn giải thuật di truyền tối ưu hóa bộ mờ [2]
Trang 23Hình 1.15 Sơ đồ khối bộ điều khiển tránh vật cản
Hình 1.16 Kết quả thu được [2]
Phương pháp này có thể sử dụng trong những không gian, như căn phòng nhỏ, mà
đồ đạc thường xuyên bị di chuyển Tuy nhiên, việc thiết kế bộ điều khiển mờ phụ thuộc
vào kinh nghiệm của người thiết kế; bên cạnh đó, các kết quả công bố dùng phương pháp
này áp dụng cho việc quy hoạch đường đi chưa nhiều; chỉ mô phỏng ở không gian nhỏ,
tránh một vật cản
Trang 241.6.3/ Phương pháp Q-learning:
Q-learning là phương pháp học tăng cường rất hiệu quả cho bài toán tìm đường, do
phương pháp này thực hiện theo kiểu off-policy Vì vậy phương pháp này được kết hợp
với các phương pháp khác để giải quyết một số bài toán đặc biệt như tìm đường đi trong
mạng (Q routing) hay tìm đường của hệ thống multi-agent (Ant-Q)[16],[18]
Và một số công trình trong nước đã áp dụng thành công phương pháp này để giải
quyết một số bài toán tìm đường cụ thể [16] Phương pháp này cũng có thể được coi là
thuộc nhóm phương pháp hoạch định dựa vào lưới tọa độ
Trước đây, người ta giải quyết các bài toán tìm đường bằng các giải thuật tìm đường
cổ điển Tuy nhiên các thuật toán tìm đường có rất nhiều hạn chế, ví dụ như đòi hỏi môi
trường phải xác định, cố định và không xử lý tốt nhiều tình huống thực tế
Ngày nay con người ứng dụng trí tuệ nhân tạo, cùng với sự hỗ trợ của máy tính;
robot, hay đối tượng, có thể tự tìm ra quy luật hành động nói chung, tìm đường đi nói
riêng thông qua các kinh nghiệm thu được từ những hành động thực hiện trước đó; hay
còn gọi là học tăng cường Có nhiều phương pháp học tăng cường khác nhau, trong đó
Q-learning được áp dụng khá phổ biến ở nước ta trong việc giải quyết bài toán tìm đường đi
[16] Một số hình ảnh minh họa cho phương pháp Q-learning:
(a)
Trang 25(b) Hính 1.17 a,b) Minh họa cho phương pháp Q-learning
Phương pháp Q-learning giải quyết cho bài toán rời rạc; học, thử và sai, đồng thời
kết hợp với một số thuật toán như Graph, Markov để đánh giá kết quả học và từ đó đưa ra
kết quả tốt nhất [18] Ưu điểm của phương pháp này là luôn luôn hội tụ, nghĩa là luôn có
thể đưa ra được kết quả tối ưu, tuy nhiên kết quả lại phụ thuộc vào số lần học, nghĩa là
học, cập nhật càng nhiều thì kết quả càng chính xác, điều này đôi khi gây ra mất thời gian
tính toán, cập nhật trong những không gian nhỏ nhưng nhiều vật cản [16],[18]
Bên cạnh đó, đây là phương pháp cho bài toán rời rạc, do vậy khi áp dụng để giải
quyết các bài toán liên tục như robot tự hành, xe lăn thông minh, đòi hỏi phải thiết kế
thêm mạng nơron để chuẩn hóa từ liên tục sang rời rạc rồi mới áp dụng được Q-learning
[18]
1.6.4/ Phương pháp Limit Cycle (Chu kì giới hạn):
Thuật toán limit cycle là một thuật toán mới trong việc định hướng và điều khiển
cho robot tự hành, và được quan tâm nghiên cứu trong thời gian gần đây Thuật toán này
được áp dụng rất thành công trong lĩnh vực robot scoccer [9] ; tuy nhiên, lại khá mới mẻ
trong lĩnh vực hoạch định quỹ đạo cho robot tự hành Hoạch định với limit cycle có thể
được xếp vào nhóm phương pháp hoạch định theo trường thế năng (Potential Field
Planning)
Trong việc hoạch định quỹ đạo, thuật toán sử dụng khung tham chiếu cụ thể để cung
cấp chỉ dẫn chính xác về tình hình của robot; cho phép robot có thể chọn hướng an toàn
Trang 26và thông suốt trong môi trường rất lộn xộn [5],[7],[9] Hơn nữa, nó tính toán được thời
gian để robot đi vào quỹ đạo của các vật cản và thời điểm để đi ra khỏi vật cản Những
cách xử lý quỹ đạo này được thực hiện bằng cách thích nghi giới hạn chu kỳ của quỹ đạo
Sau đó, trong những trường hợp xung đột cụ thể, những chương trình con cụ thể sẽ được
đưa ra để robot không bị dao động , rơi vô cực trị cục bộ, hay có kết thúc chết, bị kẹt một
chỗ [9],[5] Các thuật toán đề xuất được nhúng vào một cấu trúc điều khiển đặc biệt từ
dưới lên và được chứng minh ổn định theo Lyapunov
Hình 1.18 Cấu trúc điều khiển
Cấu trúc điều khiển tổng cho phép giảm đáng kể thời gian robot chạy đến mục tiêu
trong khi đang dự đoán và tránh vật cản Trên thực tế, theo các thuật toán được đề xuất,
robot dự đoán việc va chạm với vật cản dựa theo việc hiệu chỉnh độ trơn của quỹ đạo cục
bộ [5] Kết quả mô phỏng trong nhiều môi trường khác nhau chứng minh độ tin cậy của
cấu trúc điều khiển [5],[7],[9]
Trang 27Hình 1.19 Minh họa quỹ đạo robot né vật cản a) có dao động, b) không dao động
Hình 1.20 Quỹ đạo robot né vật cản và tới mục tiêu
Trang 281.7/ Xe lăn thông minh và bài toán hoạch định đường đi tối ưu:
Hiện nay trên thế giới, trong việc nghiên cứu, phát triển và chế tạo xe lăn thông
minh, người ta kết hợp nhiều phương pháp với nhau, chứ không nhất thiết là chỉ áp dụng
từng phương pháp đơn lẻ
Xe lăn tự hành, bán tự động đã được nghiên cứu và phát triển ở nhiều nước và các
trường đại học trên thế giới Một số công trình tiêu biểu đã được công bố như : chiếc xe
lăn Aviator, của giáo sư Nguyễn Tấn Hùng, người Úc gốc Việt, đại học công nghệ
Sydney:
Hình 1.21 Xe lăn Aviator
Hay như chiếc xe lăn của hãng Toyota kết hợp với Viện khoa học cộng nghiệp tiên
tiến quốc gia Nhật Bản (Japan's National Institute of Advanced Industrial Science)
Trang 29Hình 1.22 Xe lăn của hãng Toyota
Và trong nước thì có công trình của đại học Bách Khoa Hà Nội
Hình 1.23 Xe lăn của đại học Bách Khoa Hà Nội
Trang 30Tất cả những sản phẩm trên đều là những thành tựu khoa học xuất sắc nhưng để vận
hành được chiếc xe lăn cần hỗ trợ nhiều từ người sử dụng; và việc hoạch định đường đi
cho đối tượng là xe lăn điện vẫn còn để mở nhiều vấn đề
Khoảng hai thập kỉ gần đây; các công trình liên quan đến vấn đề hoạch định đường
đi cho robot tự hành, hay xe lăn thông minh mới được công bố Phần lớn trong số đó sử
dụng các công cụ thuật toán như giải thuật di truyền; điều khiển mờ kết hợp với giải thuật
di truyền; thuật toán Q-learning, limit cycle v.v Bên cạnh đó, việc hoạch định đường đi
còn được giải quyết bằng các giải thuật máy tính [6],[8],[10]
Mặt khác, những bài báo nghiên cứu về việc hoạch định đường đi cho robot tự hành;
hay xe lăn thông minh xuất hiện trong thời gian gần đây (2006 - 2011); điều này thể hiện
sự quan tâm rất lớn của các nhà khoa học trên thế giới về vấn đề này Tuy nhiên, các
nghiên cứu này còn rời rạc, chưa được hệ thống; các tác giả tiếp cận với những hướng
khác nhau
Trên thực tế, việc hoạch định tốt đường đi, sẽ quyết định và hoàn thiện việc điều
khiển robot tự hành và điển hình là có thể áp dụng cho xe lăn thông minh, góp phần tạo
ra những con robot thông minh chiếc xe lăn thân thiện với người sử dụng ở nước ta
1.8/ Hướng tiếp cận và phương pháp nghiên cứu:
Để có thể đưa ra đường đi là tối ưu, trơn tru, dễ điều khiển và an toàn; trong luận
văn này, quỹ đạo sẽ hoạch định theo phương pháp limit cycle, với vòng ảo là tròn và
ellipse; sau đó; kết hợp với giải thuật di truyền để đưa ra đường đi tối ưu theo hàm chỉ
tiêu mong muốn
Trang 31Hình 1.24 Minh họa cho việc hoạch định quỹ đạo dùng ellipse
Hình 1.25 Minh họa cho việc chia nhỏ một vật cản lớn theo các vòng tròn nhỏ
Trang 32CHƯƠNG 2
CƠ SỞ LÝ THUYẾT
2.1/ Thuật toán Limit-cycle:
2.1.1/ Giới thiệu:
Phương pháp định hướng, hoạch định đường đi dùng limit cycle (limit cycle
navigation) là một phương pháp định hướng mới được đánh giá cao trong những nghiên
cứu gần đây Với những thông tin liên quan về vị trị của vật cản, mục tiêu, robot và
những vật cản liên quan đến đường đi của robot, sau đó thay đổi hướng chuyển động
dùng các vòng ảo, để đi đến mục tiêu
Để dễ tiếp cận, đầu tiên sẽ tìm hiểu thuật toán limit cycle với vòng ảo là đường tròn
2.1.2/ Limit-cycle (với vòng ảo là đường tròn):
Nhiệm vụ của việc định hướng cho đối tượng trong môi trường chưa biết là dẫn
robot đến được mục tiêu định trước mà vẫn tránh được các vật cản cố định hoặc thay đổi
Giả sử rằng cả vật cản và robot đều được bao quanh bởi các hình trụ có bán kính lần lượt
là RO, RR và mục tiêu được xem như một vòng tròn nhỏ có bán kính RT:
Trang 33Ii R Oi
R R R Ma
(2.1) Với Ma được xem là dung sai an toàn, bao gồm : độ an toàn điều khiển, sự chính
xác v.v
2.1.3/ Cấu trúc điều khiển:
Hình 2.2 Cấu trúc điều khiển dùng để định hướng cho robot di động
Cấu trúc điều khiển được đưa ra nhằm quản lí sự kết hợp giữa các lý thuyết điều
khiển cơ bản trong khi vẫn phải đảm bảo tính ổn định trong toàn bộ quá trình điều khiển
Mục tiêu của việc điều khiển bao gồm an toàn; chạy êm và định hướng nhanh cho robot
Trang 342.1.3.1/ Phân cấp để chọn lựa hành động (Hierarchical action selection):
Giản đồ 2.1 Minh họa thuật toán phân cấp chọn lựa
Nếu : Quan sát phát hiện vật cản (DPROi < RIi , DROi < RIi) thì:
Chọn giải thuật né vật cản
Còn không: Chọn giải thuật chạy tới mục tiêu
Kết thúc
Như vậy, ta thấy rõ ràng bộ điều khiển dựa vào những tín hiệu phản hồi về mà đưa
ra các chọn lựa Nếu khi tín hiệu đưa về báo là robot đang ở gần vật cản thì bộ điều khiển
để né vật cản sẽ được kích hoạt; giúp robot tránh né vật cản và sau đó tiếp tục chạy tới
mục tiêu
Hầu hết các bộ điều khiển tránh vật cản chỉ được sử dụng khi robot tiến tới gần vật
cản (DROi < RIi) Khi sử dụng thuật toán theo giản đồ 1.1, bộ điều khiển tránh vật cản sẽ
được kích hoạt ngay khi phát hiện tồn tại ít nhất một vật cản nằm trên đường di chuyển
của robot hướng tới mục tiêu (DPROi < RIi) Vì vậy, trong khi ước lượng, dự đoán việc
Trang 35Hình 2.3 Hình minh họa quỹ đạo robot khi có dự báo, né vật cản
Thuật toán phân cấp lựa chọn được dùng để quản lý việc chọn lựa giữa hai hay
nhiều bộ điều khiển khác nhau; vì vậy chiến thuật tránh vật cản được tích hợp trong cấu
trúc của toàn bộ điều khiển
Trang 362.1.4/ Các bộ điều khiển cơ bản trong limit cycle:
Cấu trúc của bộ điều khiển bao gồm những bộ điều khiển con khác nhau, các bộ
điều khiển cơ bản
Những luật điều khiển này đều được xây dựng và dựa trên điều kiện ổn định theo
Lyapunov
Mô hình động học thuận của robot tự hành:
Hình 2.4 Robot trong hệ tọa độ tham chiếu
Với: x,y, là các biến trạng thái của một chu kì tại điểm “Pt” có tọa độ và tung độ
(l1, l2) tham chiếu từ hệ tọa độ tương đối (Xm, Ym)
Trang 37Những kỹ thuật cổ điển để ổn định hệ thống tuyến tính có thể được dùng để ổn định
tiệm cận sai số về không Ở đây, ta sử dụng bộ điều khiển tỉ lệ:
e w
d : khoảng cách giữa robot và mục tiêu
Để đảm bảo cho việc ổn định tiệm cận cho bộ điều khiển thì V10dd0, d0;
Trang 382.1.4.2/ Điều khiển tránh vật cản:
Để thực hiện việc tránh các chướng ngại vật, robot cần theo chính xác chu kì giới
hạn của trường vector (limit-cycle vector fields) Các trường vector này được chia làm 2
Hình 2.5 Quỹ đạo pha, a) chiều kim đồng hồ, b) ngược kim đồng hồ
Với (xS, yS) là tọa độ tương ứng với vị trí của robot theo tâm của vòng tròn hội tụ,
có bán kính là RC Quỹ đạo chu kỳ, RC =1 (hình 2.5), còn gọi là một chu kỳ giới hạn
(limit cycle) Nó chỉ ra hướng của đường đi (cùng hoặc ngược chiều kim đồng hồ) theo
tọa độ (x , y ) Các quỹ đạo từ tất cả các điểm (x , y ), bao gồm những điểm bên trong
Trang 39d p e
w K
(2.12) Với KP > 0, là hằng số; và :
e Kp e
Xét hàm Lyapunov :
2 2
1
2 e
Ta có : V2 e e K pe2 0, luật điều khiển này ổn định theo Lyapunov Ngoài
ra, vận tốc v của robot trong luật điều khiển này là hằng số, v = const
Tiếp theo, phương pháp tổng thể để xây dựng được thuật toán tránh vật cản sẽ được
giới thiệu Thuật toán được phát triển dựa trên nguyên tắc kích thích và phản hồi, để thực
hiện được điều này thì điểm quan trọng là:
o Phải phát hiện được vật cản để tránh
o Đưa ra được hướng của việc tránh né (theo chiều kim đồng hồ hay ngược
lại)
o Đưa ra tiêu chuẩn xét xem robot đã né được vật cản hay chưa
Các bước trên phải được tuân theo và áp dụng, đồng thời cũng phải đảm bảo quỹ
đạo di chuyển của robot là an toàn, trơn tru và tránh các tình huống không mong muốn
như bị kẹt lại ở đâu đó v.v và điều này được đảm bảo bởi luật điều khiển sử dụng, luật
điều khiển tránh vật cản Các bước cần thiết để thực hiện được thuật toán tránh vật cản,
thuật toán 2.2, sẽ được trình bày dưới đây:
Trang 402.1.4.3/ Giản đồ giải thuật của thuật toán tránh vật cản:
Giản đồ 2.2 Giải thuật tránh vật cản
Với là hằng số và Ma (hình 2.1), để đảm bảo rằng robot không di chuyển quá