อ่าน 10 นาที
การระบุตำแหน่งและการสร้างแผนที่พร้อมกัน
การระบุตำแหน่งและการสร้างแผนที่พร้อมกัน ( SLAM ) คือกระบวนการที่คอมพิวเตอร์สร้างหรืออัปเดตแผนที่ของสภาพแวดล้อมที่ไม่รู้จักไปพร้อม ๆ กับการติดตามตำแหน่งของวัตถุภายในสภาพแวดล้อมนั้น...
การระบุตำแหน่งและการสร้างแผนที่พร้อมกัน

การระบุตำแหน่งและการสร้างแผนที่พร้อมกัน ( SLAM ) คือกระบวนการที่คอมพิวเตอร์สร้างหรืออัปเดตแผนที่ของสภาพแวดล้อมที่ไม่รู้จักไปพร้อม ๆ กับการติดตามตำแหน่งของวัตถุภายในสภาพแวดล้อมนั้น แม้ว่าในตอนแรกดูเหมือนจะเป็นปัญหาไก่กับไข่ แต่ก็มีอัลกอริทึมหลายตัวที่ทราบกันว่าสามารถแก้ปัญหานี้ได้ในเวลาที่จัดการได้ อย่างน้อยก็โดยประมาณ สำหรับสภาพแวดล้อมบางอย่าง วิธีการแก้ปัญหาโดยประมาณที่เป็นที่นิยม ได้แก่ ตัวกรองอนุภาค ตัวกรอง Kalman แบบขยาย การตัดกันของความแปรปรวน และ GraphSLAM อัลกอริทึม SLAM นั้นอิงตามแนวคิดในเรขาคณิตเชิงคำนวณและคอมพิวเตอร์วิชั่น และใช้ในการนำทางหุ่นยนต์ การสร้างแผนที่หุ่นยนต์ และการวัดระยะทางสำหรับความเป็นจริงเสมือนหรือความเป็นจริงเสริม
อัลกอริทึม SLAM ถูกปรับแต่งให้เหมาะสมกับทรัพยากรที่มีอยู่ และไม่ได้มุ่งเน้นที่ความสมบูรณ์แบบ แต่เน้นที่การปฏิบัติตามข้อกำหนดในการใช้งาน แนวทางที่เผยแพร่แล้วถูกนำไปใช้ในรถยนต์ไร้คนขับ ยานบินไร้คนขับ ยานใต้น้ำอัตโนมัติ รถสำรวจดาวเคราะห์ หุ่นยนต์ในบ้านรุ่นใหม่ และแม้กระทั่งภายในร่างกายมนุษย์
คำอธิบายทางคณิตศาสตร์ของปัญหา
เมื่อพิจารณาชุดควบคุมและการสังเกตเซ็นเซอร์ในช่วงเวลาที่ไม่ต่อเนื่องปัญหา SLAM คือการคำนวณค่าประมาณสถานะของตัวแทนและแผนที่ของสภาพแวดล้อมปริมาณทั้งหมดมักจะเป็นความน่าจะเป็น ดังนั้นวัตถุประสงค์คือการคำนวณ[ 1 ]
การใช้กฎของเบย์สจะให้กรอบการทำงานสำหรับการอัปเดตค่าความน่าจะเป็นของตำแหน่งตามลำดับ โดยพิจารณาจากแผนที่และฟังก์ชันการเปลี่ยนผ่าน
โดยที่คือค่าคงที่การทำให้เป็นมาตรฐาน ซึ่งทำให้ผลรวมของความน่าจะเป็นทั้งหมดเท่ากับ 1
ในทำนองเดียวกัน แผนที่สามารถอัปเดตได้ตามลำดับโดย
เช่นเดียวกับปัญหาการอนุมานหลายๆ ปัญหา วิธีแก้ปัญหาในการอนุมานตัวแปรทั้งสองร่วมกันนั้น สามารถหาได้จนถึงจุดเหมาะสมที่สุดเฉพาะที่ โดยการสลับปรับปรุงความเชื่อทั้งสองในรูปแบบของอัลกอริธึมการคาดการณ์และการทำให้สูงสุด
อัลกอริทึม
เทคนิคทางสถิติที่ใช้ในการประมาณสมการข้างต้น ได้แก่ตัวกรอง Kalmanและตัวกรองอนุภาค (อัลกอริทึมที่อยู่เบื้องหลังการระบุตำแหน่งแบบ Monte Carlo) ซึ่งให้การประมาณค่าการกระจายความน่าจะเป็นภายหลังสำหรับตำแหน่งของหุ่นยนต์และสำหรับพารามิเตอร์ของแผนที่ วิธีการที่ประมาณแบบจำลองข้างต้นอย่างระมัดระวังโดยใช้การตัดกันของความแปรปรวนร่วมสามารถหลีกเลี่ยงการพึ่งพาข้อสมมติฐานความเป็นอิสระทางสถิติเพื่อลดความซับซ้อนของอัลกอริทึมสำหรับการใช้งานขนาดใหญ่[ 2 ]วิธีการประมาณค่าอื่นๆ บรรลุประสิทธิภาพการคำนวณที่ดีขึ้นโดยใช้การแสดงความไม่แน่นอนแบบขอบเขตอย่างง่าย[ 3 ]
เทคนิคการเป็นสมาชิกเซตส่วนใหญ่ขึ้นอยู่กับการแพร่กระจายข้อจำกัดช่วงเวลา[ 4 ] [ 5 ] โดยจะให้เซตที่ล้อมรอบตำแหน่งของหุ่นยนต์และการประมาณค่าเซตของแผนที่การปรับบันเดิลและโดยทั่วไปแล้วการประมาณค่าสูงสุดภายหลัง (MAP) เป็นอีกเทคนิคยอดนิยมสำหรับ SLAM ที่ใช้ข้อมูลภาพ ซึ่งประมาณค่าตำแหน่งและจุดสังเกตพร้อมกัน เพิ่มความแม่นยำของแผนที่ และใช้ในระบบ SLAM เชิงพาณิชย์ เช่น ARCore ของ Google ซึ่งมาแทนที่แพลตฟอร์มการประมวลผลความเป็นจริงเสริมก่อนหน้านี้ที่ชื่อ Tango ซึ่งเดิมคือProject Tangoตัวประมาณค่า MAP จะคำนวณคำอธิบายที่เป็นไปได้มากที่สุดของตำแหน่งของหุ่นยนต์และแผนที่โดยพิจารณาจากข้อมูลเซ็นเซอร์ แทนที่จะพยายามประมาณความน่าจะเป็นภายหลังทั้งหมด
อัลกอริทึม SLAM ใหม่ยังคงเป็นพื้นที่วิจัยที่ดำเนินอยู่[ 6 ]และมักได้รับแรงผลักดันจากข้อกำหนดและสมมติฐานที่แตกต่างกันเกี่ยวกับประเภทของแผนที่ เซ็นเซอร์ และโมเดล ดังรายละเอียดด้านล่าง ระบบ SLAM จำนวนมากสามารถมองได้ว่าเป็นการผสมผสานของตัวเลือกจากแต่ละแง่มุมเหล่านี้
การทำแผนที่
แผนที่เชิงโทโพโลยีเป็นวิธีการแสดงสภาพแวดล้อมที่บันทึกการเชื่อมต่อ (เช่น โทโพโลยี) ของสภาพแวดล้อมแทนที่จะสร้างแผนที่ที่มีความแม่นยำทางเรขาคณิต แนวทาง SLAM เชิงโทโพโลยีถูกนำมาใช้เพื่อบังคับใช้ความสอดคล้องทั่วโลกในอัลกอริธึม SLAM แบบเมตริก[ 7 ]
ในทางตรงกันข้าม แผนที่แบบตารางใช้แถว (โดยทั่วไปจะเป็นรูปสี่เหลี่ยมจัตุรัสหรือหกเหลี่ยม) ของเซลล์ที่แบ่งเป็นส่วนย่อยเพื่อแสดงโลกเชิงโทโพโลยี และทำการอนุมานว่าเซลล์ใดถูกครอบครอง โดยทั่วไปจะถือว่าเซลล์เหล่านั้นเป็นอิสระทางสถิติเพื่อลดความซับซ้อนในการคำนวณ ภายใต้สมมติฐานดังกล่าว ค่าจะถูกตั้งเป็น 1 หากเซลล์ของแผนที่ใหม่สอดคล้องกับการสังเกตณ ตำแหน่งนั้นและเป็น 0 หากไม่สอดคล้องกัน
รถยนต์ขับเคลื่อนอัตโนมัติสมัยใหม่ส่วนใหญ่ทำให้ปัญหาการสร้างแผนที่ง่ายขึ้นจนแทบไม่มีเลย โดยใช้ประโยชน์จากข้อมูลแผนที่ที่มีรายละเอียดสูงซึ่งรวบรวมไว้ล่วงหน้าอย่างกว้างขวาง ซึ่งอาจรวมถึงคำอธิบายประกอบแผนที่ในระดับการระบุตำแหน่งของเส้นแบ่งเลนสีขาวและขอบถนนแต่ละเส้น ข้อมูลภาพที่มีการระบุตำแหน่ง เช่น StreetView ของ Google ก็อาจถูกนำมาใช้เป็นส่วนหนึ่งของแผนที่ด้วย โดยพื้นฐานแล้ว ระบบดังกล่าวทำให้ปัญหา SLAM ง่ายขึ้นเหลือเพียงงานระบุตำแหน่งเท่านั้น อาจอนุญาตให้มีการอัปเดตเฉพาะวัตถุที่เคลื่อนที่ เช่น รถยนต์และคน บนแผนที่ในระหว่างการทำงานเท่านั้น
การรับรู้

SLAM จะใช้เซ็นเซอร์หลายประเภทที่แตกต่างกันเสมอ และพลังและข้อจำกัดของเซ็นเซอร์ประเภทต่างๆ เป็นตัวขับเคลื่อนหลักของอัลกอริทึมใหม่ๆ[ 8 ]ความเป็นอิสระทางสถิติเป็นข้อกำหนดที่จำเป็นเพื่อรับมือกับอคติของเมตริกและสัญญาณรบกวนในการวัด เซ็นเซอร์ประเภทต่างๆ ก่อให้เกิดอัลกอริทึม SLAM ที่แตกต่างกัน ซึ่งมีสมมติฐานที่เหมาะสมที่สุดสำหรับเซ็นเซอร์นั้นๆ ในด้านหนึ่ง การสแกนด้วยเลเซอร์หรือคุณลักษณะทางภาพให้รายละเอียดของจุดจำนวนมากภายในพื้นที่ ซึ่งบางครั้งทำให้การอนุมาน SLAM ไม่จำเป็น เนื่องจากรูปร่างในกลุ่มจุดเหล่านี้สามารถจัดเรียงได้อย่างง่ายดายและไม่คลุมเครือในแต่ละขั้นตอนผ่านการลงทะเบียนภาพในอีกด้านหนึ่งเซ็นเซอร์สัมผัสมีความเบาบางมาก เนื่องจากมีข้อมูลเกี่ยวกับจุดที่อยู่ใกล้กับตัวแทนมากเท่านั้น ดังนั้นจึงต้องใช้แบบจำลองก่อนหน้าที่แข็งแกร่งเพื่อชดเชยใน SLAM ที่ใช้เซ็นเซอร์สัมผัสอย่างเดียว งาน SLAM ในทางปฏิบัติส่วนใหญ่จะอยู่ระหว่างขั้วภาพและสัมผัสเหล่านี้
แบบจำลองเซ็นเซอร์แบ่งออกเป็นสองประเภทหลักๆ คือ แบบจำลองที่อิงตามจุดสังเกต และแบบจำลองที่ใช้ข้อมูลดิบ จุดสังเกตคือวัตถุที่สามารถระบุได้อย่างเฉพาะเจาะจงในโลก ซึ่งสามารถประมาณตำแหน่งได้ด้วยเซ็นเซอร์ เช่น จุดเชื่อมต่อ Wi-Fiหรือสัญญาณวิทยุ ส่วนแบบจำลองที่ใช้ข้อมูลดิบนั้น ไม่ได้ตั้งสมมติฐานว่าสามารถระบุจุดสังเกตได้ และจะจำลองโดยตรงเป็นฟังก์ชันของตำแหน่งแทน
เซ็นเซอร์แสงอาจเป็น เลเซอร์วัดระยะแบบหนึ่งมิติ (ลำแสงเดี่ยว) หรือ 2 มิติ (แบบกวาด) เลเซอร์วัดระยะแบบตรวจจับแสงความละเอียดสูง 3 มิติ ( lidar ) เลเซอร์วัดระยะแบบแฟลช 3 มิติ เซ็นเซอร์ โซนาร์ 2 มิติหรือ 3 มิติและกล้อง 2 มิติหนึ่งตัวหรือมากกว่า[ 8 ]นับตั้งแต่มีการคิดค้นคุณลักษณะเฉพาะที่ เช่นSIFTก็มีการวิจัยอย่างเข้มข้นเกี่ยวกับ Visual SLAM (VSLAM) โดยใช้เซ็นเซอร์ภาพ (กล้อง) เป็นหลัก เนื่องจากกล้องมีการใช้งานอย่างแพร่หลายมากขึ้น เช่น กล้องในอุปกรณ์เคลื่อนที่[ 9 ] การวิจัยติดตามผลรวมถึง[ 10 ]ทั้งเซ็นเซอร์ภาพและlidarมีข้อมูลเพียงพอที่จะช่วยให้สามารถแยกแลนด์มาร์คได้ในหลายกรณี รูปแบบ SLAM อื่นๆ ในปัจจุบัน ได้แก่ SLAM แบบสัมผัส[ 11 ] (การตรวจจับโดยการสัมผัสในพื้นที่เท่านั้น) SLAM แบบเรดาร์[ 12 ] SLAM แบบอะคูสติก[ 13 ]และ Wi-Fi-SLAM (การตรวจจับโดยความแรงของจุดเชื่อมต่อ Wi-Fi ใกล้เคียง) [ 14 ]แนวทางล่าสุดใช้ การวัดระยะ ไร้สาย แบบกึ่งออปติคอล สำหรับ การระบุ ตำแหน่งหลายจุด ( ระบบระบุตำแหน่งแบบเรียลไทม์ (RTLS)) หรือการวัดมุมหลายจุดร่วมกับ SLAM เพื่อแก้ไขปัญหาการวัดไร้สายที่ไม่แน่นอน SLAM สำหรับคนเดินเท้าใช้หน่วยวัดความเฉื่อย ที่ติดตั้งบนรองเท้า เป็นเซ็นเซอร์หลัก และอาศัยข้อเท็จจริงที่ว่าคนเดินเท้าสามารถหลีกเลี่ยงกำแพงเพื่อสร้างแผนผังอาคารโดยอัตโนมัติโดยใช้ระบบระบุตำแหน่งภายใน อาคาร [ 15 ]
สำหรับการใช้งานกลางแจ้งบางประเภท ความจำเป็นในการใช้ SLAM แทบจะหมดไปแล้วเนื่องจาก เซ็นเซอร์ GPS แบบดิฟเฟอเรนเชียลที่มีความแม่นยำสูง จากมุมมองของ SLAM เซ็นเซอร์เหล่านี้อาจถูกมองว่าเป็นเซ็นเซอร์ระบุตำแหน่งที่มีความน่าจะเป็นสูงมากจนสามารถครอบงำการอนุมานได้อย่างสมบูรณ์ อย่างไรก็ตาม เซ็นเซอร์ GPS อาจทำงานผิดปกติหรือหยุดทำงานโดยสิ้นเชิงได้ในบางครั้ง เช่น ในช่วงเวลาที่มีความขัดแย้งทางทหาร ซึ่งเป็นสิ่งที่น่าสนใจเป็นพิเศษสำหรับการใช้งานด้านหุ่นยนต์บางประเภท
การสร้างแบบจำลองจลศาสตร์
คำ นี้หมายถึงจลศาสตร์ของแบบจำลอง ซึ่งโดยปกติจะรวมถึงข้อมูลเกี่ยวกับคำสั่งการกระทำที่ให้กับหุ่นยนต์จลศาสตร์ของหุ่นยนต์ เป็นส่วนหนึ่งของแบบจำลอง เพื่อปรับปรุงการประมาณค่าการรับรู้ภายใต้สภาวะที่มีเสียงรบกวนภายในและภายนอก แบบจำลองพลวัตจะปรับสมดุลการมีส่วนร่วมจากเซ็นเซอร์ต่างๆ แบบจำลองข้อผิดพลาดบางส่วนต่างๆ และสุดท้ายประกอบเป็นภาพเสมือนจริงที่คมชัดในรูปแบบแผนที่ โดยมีตำแหน่งและทิศทางของหุ่นยนต์เป็นกลุ่มเมฆแห่งความน่าจะเป็น การทำแผนที่คือการแสดงผลขั้นสุดท้ายของแบบจำลองดังกล่าว แผนที่อาจเป็นการแสดงผลดังกล่าวหรือเป็นคำนามธรรมสำหรับแบบจำลองนั้น
สำหรับหุ่นยนต์ 2 มิติ การเคลื่อนที่มักจะกำหนดโดยการผสมผสานระหว่างคำสั่งการหมุนและคำสั่ง "เคลื่อนที่ไปข้างหน้า" ซึ่งถูกนำไปใช้ด้วยสัญญาณรบกวนจากมอเตอร์เพิ่มเติม น่าเสียดายที่การกระจายตัวของสัญญาณรบกวนอิสระในทิศทางเชิงมุมและเชิงเส้นนั้นไม่ใช่การกระจายแบบเกาส์เซียน แต่โดยทั่วไปมักประมาณด้วยการกระจายแบบเกาส์เซียน แนวทางอื่นคือการละเลยเทอมการเคลื่อนที่และอ่านข้อมูลระยะทางจากล้อหุ่นยนต์หลังจากแต่ละคำสั่ง—ข้อมูลดังกล่าวสามารถนำมาใช้เป็นข้อมูลจากเซ็นเซอร์ตัวใดตัวหนึ่งแทนที่จะเป็นการเคลื่อนที่
วัตถุเคลื่อนที่
สภาพแวดล้อมที่ไม่คงที่ เช่น สภาพแวดล้อมที่มีรถยนต์หรือคนเดินเท้าอื่นๆ ยังคงเป็นความท้าทายในการวิจัย[ 16 ] [ 17 ] SLAM ที่ใช้ DATMO เป็นแบบจำลองที่ติดตามวัตถุเคลื่อนที่ในลักษณะเดียวกับตัวแทน[ 18 ]
การปิดวงจร
การปิดลูปคือปัญหาของการจดจำตำแหน่งที่เคยเยี่ยมชมมาก่อนและปรับปรุงความเชื่อให้สอดคล้องกัน ซึ่งอาจเป็นปัญหาได้เนื่องจากข้อผิดพลาดของแบบจำลองหรืออัลกอริธึมอาจกำหนดค่าความน่าจะเป็นล่วงหน้า (priors) ให้กับตำแหน่งนั้นต่ำ วิธีการปิดลูปทั่วไปจะใช้อัลกอริธึมที่สองในการคำนวณความคล้ายคลึงของการวัดจากเซ็นเซอร์บางประเภท และรีเซ็ตค่าความน่าจะเป็นล่วงหน้าของตำแหน่งเมื่อตรวจพบการจับคู่ ตัวอย่างเช่น สามารถทำได้โดยการจัดเก็บและเปรียบเทียบ เวกเตอร์ Bag of Wordsของ คุณลักษณะ Scale-Invariant Feature Transform (SIFT) จากแต่ละตำแหน่งที่เคยเยี่ยมชมมาก่อน
การสำรวจ
การศึกษา Active SLAMครอบคลุมปัญหาที่ผสมผสานระหว่าง SLAM กับการตัดสินใจว่าจะเคลื่อนที่ไปยังตำแหน่งใดต่อไปเพื่อสร้างแผนที่ให้มีประสิทธิภาพมากที่สุด ความจำเป็นในการสำรวจเชิงรุกนั้นเด่นชัดเป็นพิเศษในระบบการรับรู้ที่จำกัด เช่น SLAM แบบสัมผัส โดยทั่วไปแล้ว Active SLAM จะดำเนินการโดยการประมาณค่าเอนโทรปีของแผนที่ภายใต้การกระทำสมมุติฐาน "Multi agent SLAM" ขยายปัญหานี้ไปยังกรณีของหุ่นยนต์หลายตัวที่ประสานงานกันเพื่อสำรวจอย่างเหมาะสมที่สุด
แรงบันดาลใจทางชีววิทยา
ในประสาทวิทยาศาสตร์ฮิปโปแคมปัสดูเหมือนจะมีส่วนเกี่ยวข้องกับการคำนวณแบบ SLAM [ 19 ] [ 20 ] [ 21 ]ซึ่งก่อให้เกิดเซลล์ตำแหน่งและได้วางรากฐานสำหรับระบบ SLAM ที่ได้รับแรงบันดาลใจจากชีววิทยา เช่น RatSLAM
SLAM แบบร่วมมือ
SLAM แบบร่วมมือกันจะรวมเซ็นเซอร์จากหุ่นยนต์หรือผู้ใช้หลายคนเพื่อสร้างแผนที่ 3 มิติ[ 22 ]ความสามารถนี้ได้รับการสาธิตโดยทีมจำนวนหนึ่งในการแข่งขัน DARPA Subterranean Challenge ปี 2021
วิธีการ SLAM เฉพาะทาง
อะคูสติก สแลม
การขยายปัญหา SLAM ทั่วไปได้ถูกนำไปใช้กับโดเมนเสียง โดยที่สภาพแวดล้อมจะถูกแทนด้วยตำแหน่งสามมิติ (3D) ของแหล่งกำเนิดเสียง เรียกว่า aSLAM ( Acoustic Simultaneous Localization and Mapping ) [ 23 ]การใช้งานเทคนิคนี้ในยุคแรกๆ ใช้การประมาณทิศทางการมาถึง (DoA) ของตำแหน่งแหล่งกำเนิดเสียง และอาศัยเทคนิคหลักของการระบุตำแหน่งเสียงเพื่อกำหนดตำแหน่งแหล่งกำเนิดเสียง ผู้สังเกตการณ์หรือหุ่นยนต์จะต้องติดตั้งอาร์เรย์ไมโครโฟนเพื่อให้สามารถใช้ Acoustic SLAM ได้ เพื่อให้สามารถประมาณคุณลักษณะ DoA ได้อย่างถูกต้อง Acoustic SLAM ได้วางรากฐานสำหรับการศึกษาเพิ่มเติมในการทำแผนที่ฉากเสียง และสามารถมีบทบาทสำคัญในการปฏิสัมพันธ์ระหว่างมนุษย์กับหุ่นยนต์ผ่านทางการพูด ในการทำแผนที่แหล่งกำเนิดเสียงหลายแหล่ง และบางครั้งอาจเป็นแหล่งกำเนิดเสียงที่ไม่ต่อเนื่อง ระบบ Acoustic SLAM ใช้พื้นฐานในทฤษฎีเซตจำกัดแบบสุ่มเพื่อจัดการกับการปรากฏตัวของจุดสังเกตทางเสียงที่แตกต่างกัน[ 24 ]อย่างไรก็ตาม ลักษณะของฟีเจอร์ที่ได้มาจากเสียงทำให้ Acoustic SLAM มีความเสี่ยงต่อปัญหาเสียงสะท้อน การไม่ทำงาน และเสียงรบกวนภายในสภาพแวดล้อม
สแลมภาพและเสียง
เดิมทีออกแบบมาเพื่อการปฏิสัมพันธ์ระหว่างมนุษย์กับหุ่นยนต์ SLAM แบบเสียงและภาพเป็นกรอบงานที่ให้การผสานรวมคุณลักษณะสำคัญที่ได้จากทั้งรูปแบบเสียงและภาพภายในสภาพแวดล้อม[ 25 ]การปฏิสัมพันธ์ของมนุษย์มีลักษณะเฉพาะด้วยคุณลักษณะที่รับรู้ได้ไม่เพียงแต่ในรูปแบบภาพเท่านั้น แต่ยังรวมถึงรูปแบบเสียงด้วย ดังนั้นอัลกอริธึม SLAM สำหรับหุ่นยนต์และเครื่องจักรที่เน้นมนุษย์เป็นศูนย์กลางจึงต้องคำนึงถึงคุณลักษณะทั้งสองชุด กรอบงานเสียงและภาพจะประมาณค่าและสร้างแผนที่ตำแหน่งของจุดสังเกตของมนุษย์โดยใช้คุณลักษณะทางภาพ เช่น ท่าทางของมนุษย์ และคุณลักษณะทางเสียง เช่น คำพูดของมนุษย์ และผสานความเชื่อเพื่อสร้างแผนที่สภาพแวดล้อมที่แข็งแกร่งยิ่งขึ้น สำหรับการใช้งานในหุ่นยนต์เคลื่อนที่ (เช่น โดรน หุ่นยนต์บริการ) การใช้อุปกรณ์ที่มีพลังงานต่ำและน้ำหนักเบา เช่น กล้องแบบตาเดียว หรืออาร์เรย์ไมโครโฟนไมโครอิเล็กทรอนิกส์นั้นมีคุณค่า ระบบ SLAM แบบภาพและเสียงยังช่วยให้เซ็นเซอร์ทั้งสองทำงานร่วมกันได้อย่างมีประสิทธิภาพ โดยชดเชยข้อจำกัดด้านมุมมองที่แคบ การบดบังรายละเอียด และความเสื่อมของภาพที่พบได้ทั่วไปในเซ็นเซอร์ภาพน้ำหนักเบา ด้วยมุมมองที่กว้างและภาพที่ชัดเจนของเซ็นเซอร์เสียง นอกจากนี้ ความไวของเซ็นเซอร์เสียงต่อเสียงสะท้อน การหยุดทำงานของแหล่งกำเนิดเสียง และเสียงรบกวน ยังสามารถชดเชยได้ด้วยการผสมผสานความเชื่อเกี่ยวกับจุดสังเกตจากระบบภาพ การทำงานร่วมกันระหว่างระบบเสียงและระบบภาพในสภาพแวดล้อมหนึ่งๆ สามารถพิสูจน์ได้ว่ามีคุณค่าอย่างยิ่งสำหรับการสร้างหุ่นยนต์และเครื่องจักรที่สามารถโต้ตอบกับคำพูดและการเคลื่อนไหวของมนุษย์ได้อย่างเต็มที่
วิธีการดำเนินการ
อัลกอริทึม SLAM ต่างๆ ถูกนำไปใช้ในไลบรารีซอฟต์แวร์โอเพนซอร์สRobot Operating System (ROS) ซึ่งมักใช้ร่วมกับPoint Cloud Libraryสำหรับแผนที่ 3 มิติ หรือคุณลักษณะภาพจาก OpenCV
อีเคเอฟ สแลม
ในด้านหุ่นยนต์EKF SLAMเป็นกลุ่มของอัลกอริธึมที่ใช้ตัวกรอง Kalman แบบขยาย (EKF) สำหรับ SLAM โดยทั่วไป อัลกอริธึม EKF SLAM จะใช้คุณลักษณะเป็นพื้นฐาน และใช้อัลกอริธึมความน่าจะเป็นสูงสุดสำหรับการเชื่อมโยงข้อมูล ในช่วงทศวรรษ 1990 และ 2000 EKF SLAM เป็นวิธีการมาตรฐานสำหรับ SLAM จนกระทั่งมีการนำFastSLAM มา ใช้[ 26 ]
เกี่ยวข้องกับ EKF คือสมมติฐานเรื่องสัญญาณรบกวนแบบเกาส์เซียน ซึ่งทำให้ความสามารถของ EKF SLAM ในการจัดการกับความไม่แน่นอนลดลงอย่างมาก ยิ่งความไม่แน่นอนในค่าหลังมีมากเท่าไร การทำให้เป็นเชิงเส้นใน EKF ก็ยิ่งล้มเหลวมากขึ้นเท่านั้น[ 27 ]
กราฟสแลม
ในด้านหุ่นยนต์ GraphSLAM เป็นอัลกอริธึม SLAM ที่ใช้เมทริกซ์ข้อมูลแบบเบาบางที่สร้างขึ้นโดยการสร้างกราฟปัจจัยของการพึ่งพาซึ่งกันและกันของการสังเกต (การสังเกตสองรายการมีความสัมพันธ์กันหากมีข้อมูลเกี่ยวกับจุดสังเกตเดียวกัน) [ 27 ]โดยอิงตามอัลกอริธึมการเพิ่มประสิทธิภาพ
ประวัติศาสตร์
งานวิจัยชิ้นสำคัญใน SLAM คือการวิจัยของ Smith และ Cheeseman เกี่ยวกับการแสดงและการประมาณค่าความไม่แน่นอนเชิงพื้นที่ในปี 1986 [ 28 ] [ 29 ]งานวิจัยบุกเบิกอื่นๆ ในสาขานี้ดำเนินการโดยกลุ่มวิจัยของHugh F. Durrant-Whyteในช่วงต้นทศวรรษ 1990 [ 30 ]ซึ่งแสดงให้เห็นว่ามีวิธีแก้ปัญหา SLAM อยู่ในขีดจำกัดข้อมูลอนันต์ การค้นพบนี้กระตุ้นให้เกิดการค้นหาอัลกอริทึมที่สามารถคำนวณได้ง่ายและประมาณค่าวิธีแก้ปัญหา คำย่อ SLAM ถูกบัญญัติขึ้นในบทความ "Localization of Autonomous Guided Vehicles" ซึ่งตีพิมพ์ครั้งแรกในISRในปี 1995 [ 31 ]
รถยนต์ขับเคลื่อนอัตโนมัติ STANLEY และ JUNIOR ที่นำโดยSebastian Thrunชนะการแข่งขัน DARPA Grand Challenge และได้อันดับสองในการแข่งขัน DARPA Urban Challenge ในช่วงทศวรรษ 2000 และมีระบบ SLAM ซึ่งทำให้ SLAM ได้รับความสนใจไปทั่วโลก ปัจจุบันมีการนำ SLAM ไปใช้ในตลาดมวลชนในเครื่องดูดฝุ่นหุ่นยนต์สำหรับผู้บริโภค[ 32 ]และชุดหูฟังเสมือนจริงเช่นMeta Quest 2และPICO 4สำหรับการติดตามแบบไร้เครื่องหมายจากภายในสู่ภายนอก
ดูเพิ่มเติม
- การถ่ายภาพเชิงคำนวณ
- ตัวกรองคาลมาน
- การกำหนดพารามิเตอร์ความลึกผกผัน
- ชุดเครื่องมือการเขียนโปรแกรมหุ่นยนต์เคลื่อนที่
- การหาตำแหน่งแบบมอนเตคาร์โล
- การแข่งขันระดับนานาชาติหุ่นยนต์ภาคพื้นดินอัตโนมัติหลายระบบ
- นีเอโต้ โรโบติกส์
- ตัวกรองอนุภาค
- การประมาณค่าแบบเบย์เซียนแบบเรียกซ้ำ
- การทำแผนที่ด้วยหุ่นยนต์
- สแตนลีย์ (ยานพาหนะ) , การแข่งขัน DARPA Grand Challenge
- การถ่ายภาพสามมิติ
- โครงสร้างจากการเคลื่อนไหว
- แทงโก้ (แพลตฟอร์ม)
- การวัดระยะทางด้วยภาพ
ลิงก์ภายนอก
- หนังสือ Probabilistic RoboticsโดยSebastian Thrun , Wolfram BurgardและDieter Foxนำเสนอภาพรวมที่ชัดเจนของ SLAM
- SLAM สำหรับมือใหม่ (คู่มือการสอนเกี่ยวกับการระบุตำแหน่งและการสร้างแผนที่พร้อมกัน )
- หน้าเว็บงานวิจัยของ Andrew Davisonจากภาควิชาวิทยาการคอมพิวเตอร์มหาวิทยาลัยอิมพีเรียลคอลเลจลอนดอนเกี่ยวกับการสร้าง SLAM โดยใช้ระบบวิชั่น
- openslam.orgแหล่งรวบรวมโค้ดโอเพนซอร์สและคำอธิบายเกี่ยวกับ SLAM ที่ดี
- ชุดเครื่องมือ Matlab สำหรับการกรอง Kalman ที่ประยุกต์ใช้กับการระบุตำแหน่งและการสร้างแผนที่ยานพาหนะที่เคลื่อนที่ใน 1 มิติ 2 มิติ และ 3 มิติพร้อมกัน
- หน้าเว็บวิจัย FootSLAMที่ศูนย์วิจัยอวกาศแห่งเยอรมนี (DLR) รวมถึงวิธีการ Wi-Fi SLAM และ PlaceSLAM ที่เกี่ยวข้อง
- การบรรยาย SLAMการบรรยาย SLAM ออนไลน์โดยใช้ Python
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ การระบุตำแหน่งและการสร้างแผนที่พร้อมกัน
การระบุตำแหน่งและการสร้างแผนที่พร้อมกัน ( SLAM ) คือกระบวนการที่คอมพิวเตอร์สร้างหรืออัปเดตแผนที่ของสภาพแวดล้อมที่ไม่รู้จักไปพร้อม ๆ กับการติดตามตำแหน่งของวัตถุภายในสภาพแวดล้อมนั้น...
คำอธิบายทางคณิตศาสตร์ของปัญหา
เมื่อพิจารณาชุดควบคุมและการสังเกตเซ็นเซอร์ในช่วงเวลาที่ไม่ต่อเนื่องปัญหา SLAM คือการคำนวณค่าประมาณสถานะของตัวแทนและแผนที่ของสภาพแวดล้อมปริมาณทั้งหมดมักจะเป็นความน่าจะเป็น ดังนั้นวัตถุประสงค์คือการคำนวณ [ 1 ] คุณ ที {\displaystyle u_{t}} โอ ที {\displaystyle...
อัลกอริทึม
เทคนิคทางสถิติที่ใช้ในการประมาณสมการข้างต้น ได้แก่ ตัวกรอง Kalman และ ตัวกรองอนุภาค (อัลกอริทึมที่อยู่เบื้องหลังการระบุตำแหน่งแบบ Monte Carlo) ซึ่งให้การประมาณค่า การกระจายความน่าจะเป็นภายหลัง สำหรับตำแหน่งของหุ่นยนต์และสำหรับพารามิเตอร์ของแผนที่...
การทำแผนที่
แผนที่เชิงโทโพโลยีเป็นวิธีการแสดงสภาพแวดล้อมที่บันทึกการเชื่อมต่อ (เช่น โทโพโลยี) ของสภาพแวดล้อมแทนที่จะสร้างแผนที่ที่มีความแม่นยำทางเรขาคณิต แนวทาง SLAM เชิงโทโพโลยีถูกนำมาใช้เพื่อบังคับใช้ความสอดคล้องทั่วโลกในอัลกอริธึม SLAM แบบเมตริก [ 7 ]