Chương 1- Tr×nh bµy tæng quan bµi to¸n lËp lé tr×nh cho Robot ®ã lµ c¸c kh¸i niÖm c¬ b¶n vÒ Robot, vµ bµi to¸n vÒ Robot, thuËt to¸n vµ mét sè vÝ dô øng dông bµi to¸n lËp lé tr×nh cho Robot. Chương 2- Tr×nh bµy c¸c kh¸i niÖm vÒ cÊu h×nh kh«ng gian tr¹ng th¸i, c¸ch biÓu diÔn kh«ng gian trong bµi to¸n lËp lé tr×nh cho robot. §©y lµ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 6 c¸c kh¸i niÖm c¬ së ®Ó biÓu diÔn ®-îc bµi to¸n cho c¸c gi¶i thuËt lËp lé tr×nh chuyÓn ®éng cho robot. Chương 3- §i s©u nghiªn cøu mét sè ph-¬ng ph¸p chÝnh x¸c lËp lé tr×nh chuyÓn ®éng cho Robot.
Cô thÓ ®ã lµ hai ph-¬ng ph¸p ROADMAP VISIBILITY GRAPH vµ CELL DECOMPSITION. §©y lµ nh÷ng c¸ch tiÕp cËn tæ hîp tíi viÖc lËp lé tr×nh chuyÓn ®éng ®Ó t×m thÊy nh÷ng ®-êng ®i xuyªn qua kh«ng gian cÊu h×nh liªn tôc mµ kh«ng dïng ®Õn nh÷ng thuËt to¸n xÊp xØ. Qua luËn v¨n nµy em xin ch©n thµnh c¶m ¬n: PGS .TS §Æng Quang ¸ - ViÖn C«ng nghÖ th«ng tin ®· tËn t×nh gióp ®ì, ®éng viªn, ®Þnh h-íng, h-íng dÉn em nghiªn cøu vµ hoµn thµnh luËn v¨n nµy. Em xin c¶m ¬n c¸c thÇy c« gi¸o trong viÖn C«ng nghÖ th«ng tin, c¸c thÇy c« gi¸o khoa C«ng nghÖ th«ng tin §H Th¸i nguyªn, ®· gi¶ng d¹y vµ gióp ®ì em trong hai n¨m häc qua, c¶m ¬n sù gióp ®ì nhiÖt t×nh cña c¸c b¹n ®ång nghiÖp.
Th¸i Nguyªn 11/2008 Ngƣời viÕt luËn v¨n NguyÔn ThÞ Thu Thuû Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 7 Ch-¬ng I Giíi thiÖu bµi to¸n lËp lé tr×nh cho Robot 1. Cùng với sự phát triển của khoa học, công nghệ robot ngày càng được ứng dụng rộng rãi trong các lĩnh vực của đời sống xã hội. Chúng có thể là những thiết bị điều khiển tự động trong các dây truyền công nghiệp, hoặc có thể là những robot làm việc trong những môi trường phức tạp mà con người đôi khi không thể tiếp cận được như: môi trường nhiệt độ cao, áp suất lớn hay ở ngoài khoảng không vũ trụ. Không chỉ có vậy robot còn được ứng dụng rất nhiều trong đời sống ví dụ như: Robot lau dọn sàn nhà, robot hướng dẫn di chuyển, robot phục vụ trong các toà nhà cao tầng, robot phẫu thuật,.
Robot được ứng dụng rộng rãi và có nhiều tính năng ưu việt như vậy song không phải ai cũng có thể hiểu về nguyên lý của những tác vụ mà robot có thể thực hiện. Sau đây sẽ là những trình bày sơ lược về nguyên tắc cấu tạo và nguyên lý làm việc của một mobile robot. Tổng quan Về cấu tạo: Robot phải dược trang bị bộ cảm nhận để cảm nhận các thông tin về môi trường như: sensor, encoder. Các bộ phận thực hiện hành động: bánh xe để chuyển động, cánh tay robot… Các tri thức mà robot cần được trang bị là: Cấu trúc của môi trường làm việc, các hoàn cảnh mà robot có thể gặp và các hành động mà robot cần thực hiện trong các hoàn cảnh đó,.
Các tri thức này cần phải được thể hiện mộ t cách thích hợp sao cho thuận tiện cho việc lưu trữ, tìm kiếm và suy diễn. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 8 Các khả năng của robot: Robot cần có khả năng phân biệt được các đối tượng mà nó gặp, thực hiện các thao tác, di chuyển an toàn trong môi trường sao cho đường đi là tối ưu và không va trạm với các vật cản. Giải pháp thiết kế Để thiết kế robot ta phải hoàn thiện các công việc sau: Xem robot như một đối tượng lập trình bao gồm: - Dữ liệu: Các trạng thái của môi trường làm việc, giá trị của sensor, encoder. - Tác vụ: Là tập các hành động cơ bản mà robot có thể thực hiện như: tiến, lùi, rẽ trái, rẽ phải,.
Mô hình hoá môi trường làm việc. Mô hình hoá đối tượng robot sẽ gặp, xử lý các tác vụ trong môi trường làm việc, cùng với việc xử lý dữ liệu và các trạng thái trong môi trường. Nhúng các giải thuật tìm đường và giải thuật xử lý sự kiện cho robot để có một đường đi tốt từ vị trí ban đầu tới đích và xử lý các tình huống ngoại lệ như va chạm. Phân chia và module hoá các khối trên robot.
Xây dựng các thành phần robot bao gồm: Lập trình, mạch phần cứng, cơ cấu cơ khí. Cả ba quá trình này phải triển khai đồng bộ với nhau và chúng có tác động rất lớn tới nhau, sự hoàn thiện phần này là tiền đề để xây dựng phần kia. Cơ chế hiển thị và Debug lỗi qua các giao tiếp Led/LCD hay với PC. Các thành phần cấu thành nên robot có thể được mô hình hoá bởi sơ đồ sau: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.
C¸c thµnh phÇn cÊu thµnh Robot TÊt c¶ c¸c thµnh phÇn trªn gãp phÇn cÊu thµnh mét Robot hoµn chØnh. Ta cã thÓ vÝ c¸c c¬ cÊu c¬ khÝ gièng nh- phÇn thÓ x¸c, c¸c m¹ch ®iÖn tö gi èng nh- c¸c m¹ch m¸u, c¸c noron thÇn kinh vµ c¸c gi¸c quan bªn ngoµi. Ch-¬ng tr×nh gièng nh- bé n·o gióp ®iÒu khiÓn c¬ thÓ th«ng qua hÖ thèng m¹ch. BÀI TOÁN LËp lé tr×nh.
NÒn t¶ng quan träng trong kü thuËt r«b«t lµ x©y dùng nh÷ng gi¶i thuËt ®Ó m« pháng nh÷ng nhiÖm vô bËc cao cña con ng-êi vµo trong nh÷ng ng«n ng÷ bËc thÊp cña m¸y ®Ó cã thÓ ®iÒu khiÓn robot di chuyÓn. Nh÷ng thuËt ng÷ lËp lé tr×nh vµ quü ®¹o chuyÓn ®éng th-êng ®-îc sö dông trong vÊn ®Ò nµy. ViÖc lËp lé tr×nh chuyÓn ®éng robot th«ng th-êng kh«ng quan t©m nhiÒu ®Õn lÜnh vùc ®éng lùc häc, träng t©m c¬ b¶n cña vÊn ®Ò nµy lµ t×m ®-êng vµ di chuyÓn ®Õn ®Ých tr¸nh sù va tr¹m víi m«i tr-êng xung quanh. ViÖc lËp lé tr×nh quü ®¹o thùc chÊt lµ lÊy gi¶i ph¸p tõ mét gi¶i thuËt lËp lé tr×nh chuyÓn ®éng robot vµ x¸c ®Þnh lµm sao ®Ó di chuyÓn theo gi¶i ph¸p ®ã nh-ng ngoµi ra cßn ph¶i chó träng tíi nh÷ng h¹n chÕ c¬ khÝ cña robot.
ViÖc lËp lé tr×nh lµ mét vÊn ®Ò cã nhiÒu ý nghÜa ®èi víi nh÷ng lÜnh vùc kh¸c nhau: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 10 Trong lý thuyÕt ®iÒu khiÓn, vÊn ®Ò nµy ®-îc ®Ò cËp tíi nh- viÖc thiÕt kÕ nh÷ng hÖ thèng vËt lý m« t¶ bëi nh÷ng ph-¬ng tr×nh vi ph©n. Nh÷ng hÖ thèng ®ã cã thÓ bao gåm nh÷ng hÖ thèng c¬ khÝ nh- « t« hoÆc m¸y bay, nh÷ng hÖ thèng ®iÖn nh- - läc tiÕng ån, hoÆc c¶ nh÷ng hÖ thèng xuÊt hiÖn trong nhiÒu lÜnh vùc ®a d¹ng kh¸c nh- hãa häc, kinh tÕ häc, vµ x· héi häc. Tr-íc ®©y, lý thuyÕt ®iÒu khiÓn lµ ®iÒu khiÓn mê ph¶n håi, cho phÐp mét sù håi ®¸p cã kh¶ n¨ng thÝch øng trong thêi gian thùc hiÖn, tËp trung vÒ sù æn ®Þnh, mµ b¶o ®¶m r»ng vÊn ®Ò ®éng lùc häc kh«ng g©y cho hÖ thèng trë nªn lén xén mÊt ®iÒu khiÓn. Mét tiªu chuÈn quan träng cho sù tèi - -u hãa ®Ó tèi gi¶n tiªu thô tµi nguyªn, nh- n¨ng l-îng hoÆc thêi gian.
Trong c¸c tµi liÖu lý thuyÕt ®iÒu khiÓn gÇn ®©y, viÖc lËp lé tr×nh chuyÓn ®éng ®«i khi quy dÉn ®Õn x©y dùng ®Çu vµo cho mét hÖ thèng ®éng lùc phi tuyÕn ®Ó ®iÒu khiÓn robot tõ mét vÞ trÝ ban ®Çu ®Õn mét ®Ých x¸c ®Þnh. Trong trÝ tuÖ nh©n t¹o, nh÷ng thuËt ng÷ viÖc lËp lé tr×nh vµ viÖc lËp lé tr×nh AI ®¶m nhiÖm mét nhiÖm vô riªng. Thay vµo viÖc di chuyÓn mét pian« qua mét kh«ng gian liªn tôc, th× vÊn ®Ò lËp lé tr×nh chuyÓn ®éng cho robot trong trÝ tuÖ nh©n t¹o víi nh÷ng nhiÖm vô gi¶i quyÕt mét bµi to¸n, nh- bµi to¸n Rubik hoÆc mét bµi to¸n sliding-tile puzzle (xÕp h×nh). Lé tr×nh trong trÝ tuÖ nh©n t¹o ®-îc ®Þnh nghÜa lµ mét tËp h÷u h¹n cña nh÷ng hµnh ®éng cã thÓ ®-îc ¸p dông cho mét tËp hîp riªng biÖt nh÷ng tr¹ng th¸i vµ x©y dùng mét gi¶i ph¸p thÝch hîp cho d·y nh÷ng hµnh ®éng ®ã.
Trong lÞch sö, viÖc lËp lé tr×nh ®· xem xÐt trªn nh÷ng gãc ®é kh¸c nhau gi¶i quyÕt nh÷ng vÊn ®Ò kh¸c nhau trong tõng lÜnh vùc; tuy nhiªn, trong nh÷ng n¨m gÇn ®©y th× sù ph©n biÖt nµy cã vÎ mê nh¹t dÇn. Trong ph¹m vi réng nh÷ng vÊn ®Ò ®Ò cËp trong thuËt ng÷ lËp lé tr×nh ®· ®-îc ¸p dông trong tÊt c¶ c¸c lÜnh vùc trÝ tuÖ nh©n t¹o, lý thuyÕt ®iÒu khiÓn, vµ kü thuËt r«b«t. Vµi nguyªn lý c¬ b¶n chung cña nh÷ng vÊn ®Ò lËp lé tr×nh sÏ ®-îc xem xÐt, nh-ng tr-íc hÕt chóng ta coi viÖc lËp lé tr×nh nh- mét nh¸nh cña gi¶i thuËt. Tõ ®©y, chóng ta nghiªn cøu nh÷ng gi¶i thuËt lËp lé tr×nh.
Träng t©m lµ thuËt to¸n vµ nh÷ng vÊn ®Ò cµi ®Æt mét sè ph-¬ng ph¸p lËp lé tr×nh. Ngoµi ra, cã nhiÒu kh¸i niÖm kh«ng h¼n lµ thuËt to¸n nh-ng cã t¸c Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 11 dông bæ trî rÊt nhiÒu trong viÖc x©y dùng nh÷ng m« h×nh, gi¶i quyÕt, vµ ph©n tÝch vÊn ®Ò lËp lé tr×nh. §ã lµ c¸c vÊn ®Ò ®Ó tr¶ lêi cho nh÷ng c©u hái sau: - ThÕ nµo lµ mét lé tr×nh? - Mét lé tr×nh ®-îc m« t¶ nh- thÕ nµo? - Nã ®-îc cµi ®Æt nh- thÕ nµo trong m¸y tÝnh? - Nh- thÕ nµo ®-îc cho lµ hoµn tÊt? - ChÊt l-îng cña cña mét lé tr×nh ®-îc ®¸nh gi¸ nh- thÕ nµo? - Ai hoÆc c¸i g× sÏ sö dông nã? ë ®©y, kh¸i niÖm user cña lé tr×nh còng sÏ th-êng xuyªn ®-îc nh¾c ®Õn nh- kh¸i niÖm robot hoÆc nhµ chÕ t¹o. Trong trÝ tuÖ nh©n t¹o vµ nh÷ng lÜnh vùc liªn quan, ng-êi ta sö dông thuËt ng÷ nµy phï hîp víi tõ sinh ra mét t¸c nh©n th«ng minh hoÆc t¸c nh©n phÇn mÒm.
Trong lý thuyÕt ®iÒu khiÓn th-êng nh¾c tíi c¸c nhµ chÕ t¹o nh- mét ng-êi gi¸m s¸t, kiÓm tra. Trong ng÷ c¶nh lËp lé tr×nh nµy ®«i khi ®-îc nh¾c tíi nh- mét chÝnh s¸ch hoÆc luËt ®iÒu khiÓn. Trong mét ng÷ c¶nh lý thuyÕt trß ch¬i, nã cã thÓ cã ý nghÜa ®Ó h-íng tíi nh÷ng nhµ s¶n xuÊt chÕ t¹o nh- nh÷ng bé ch¬i. Nh÷ng ng«n ng÷ nh- robot, ®¹i diÖn, vµ ng-êi gi¸m s¸t cã thÓ thay thÕ lÉn nhau.
T¹i sao ph¶i nghiªn cøu nh÷ng gi¶i thuËt lËp lé tr×nh? Cã Ýt nhÊt hai lý do cÇn ph¶i gi¶i quyÕt cho vÊn ®Ò nµy. Tr-íc hÕt, ®ã lµ nh÷ng trß ch¬i ®Ó m¸y cã thÓ gi¶i quyÕt nh÷ng vÊn ®Ò g©y khã kh¨n lín cho con ng-êi. §iÒu nµy ®ßi hái nh÷ng th¸ch thøc cÇn ph¶i thiÕt kÕ nh÷ng gi¶i thuËt hiÖu qu¶, vµ ph¸t triÓn vµ bæ sung c¸c m« h×nh lËp lé tr×nh.