วิทยาการหุ่นยนต์เป็นส่วนผสมเฉพาะของวิทยาศาสตร์และเทคโนโลยีที่ผลิตเครื่องจักรที่เลียนแบบการกระทำของมนุษย์
ในช่วงต้นทศวรรษ 2000 หุ่นยนต์ 90% อยู่ในโรงงานผลิตรถยนต์แทนที่มนุษย์เพื่อทำงานซ้ำๆ ตอนนี้หุ่นยนต์สามารถดูดฝุ่นในบ้านและแม้กระทั่งเสิร์ฟในร้านอาหาร
หุ่นยนต์มักจะประกอบด้วยส่วนประกอบสามประเภท ตัวเครื่องกล โครงกระดูกไฟฟ้า และสุดท้ายคือสมองที่สร้างด้วยรหัส
ส่วนประกอบเหล่านี้ช่วยให้หุ่นยนต์รวบรวมข้อมูล (มักมาจากเซ็นเซอร์) ตัดสินใจผ่านตรรกะที่ตั้งโปรแกรมไว้เพื่อปรับพฤติกรรมและงานที่สมบูรณ์
หุ่นยนต์อาจมีโปรแกรมสามประเภท รีโมทคอนโทรล (RC), ปัญญาประดิษฐ์ (AI) หรือไฮบริด
โปรแกรม RC ต้องการการแทรกแซงของมนุษย์ที่สามารถให้สัญญาณเริ่มต้นและ/หรือหยุดสำหรับการดำเนินการของรหัสกับหุ่นยนต์ โปรแกรมประกอบด้วยอัลกอริธึมประเภทต่างๆ ซึ่งแต่ละโปรแกรมมีหน้าที่ต่างกัน
อัลกอริทึมคืออะไร?
อัลกอริธึมคือชุดของโค้ดที่โรบ็อตสามารถใช้เพื่อดำเนินการตามคำสั่งบางอย่างได้ มันแปลความคิดของนักพัฒนาเป็นภาษาที่หุ่นยนต์เข้าใจ
อัลกอริธึมสามารถแสดงได้หลายรูปแบบ เช่น รหัสเทียม ผังงาน การเขียนโปรแกรมภาษาหรือตารางควบคุม
ในบทความนี้ เราจะพูดถึงอัลกอริธึมทั่วไปบางประเภทที่ใช้ในโปรแกรมเหล่านี้
ประเภทของอัลกอริทึมที่ใช้ในวิทยาการหุ่นยนต์
1. ทุกเวลา A* อัลกอริธึม
อัลกอริทึม A* คืออัลกอริธึมการค้นหาเส้นทางที่ใช้เพื่อค้นหาเส้นทางที่เหมาะสมที่สุดระหว่างจุดสองจุด กล่าวคือ ด้วยต้นทุนที่น้อยที่สุด
ทุกเวลา A* Algorithm มีค่าใช้จ่ายด้านเวลาที่ยืดหยุ่นและสามารถส่งคืนเส้นทางที่สั้นที่สุดได้ แม้ว่าจะหยุดชะงักเนื่องจากจะสร้างโซลูชันที่ไม่เหมาะสมก่อนแล้วจึงปรับให้เหมาะสม
ซึ่งช่วยให้ตัดสินใจได้เร็วขึ้นเนื่องจากหุ่นยนต์สามารถสร้างขึ้นจากการคำนวณก่อนหน้านี้ แทนที่จะเริ่มต้นจากศูนย์
มันทำงานอย่างไร?
มันทำได้โดยการสร้าง 'ต้นไม้' ซึ่งขยายจากโหนดเริ่มต้นจนกระทั่งเกณฑ์สำหรับการยกเลิกถูกทริกเกอร์ ซึ่งหมายความว่ามีเส้นทางที่มีค่าใช้จ่ายน้อยกว่า
2D Grid สร้างด้วยสิ่งกีดขวาง และเซลล์เริ่มต้นและเซลล์เป้าหมายจะถูกกำหนดไว้อย่างแม่นยำ
อัลกอริทึมกำหนด 'ค่า' ของโหนดโดย f ซึ่งเป็นผลรวมของพารามิเตอร์ g (ค่าใช้จ่ายในการย้ายจากโหนดเริ่มต้นไปยังโหนดที่เป็นปัญหา) และ h (ค่าใช้จ่ายในการย้ายจากโหนดที่เป็นปัญหาไปยังโหนดเป้าหมาย)
การใช้งาน
เกมและแผนที่บนเว็บจำนวนมากใช้อัลกอริทึมนี้ในการค้นหาเส้นทางที่สั้นที่สุดอย่างมีประสิทธิภาพ สามารถใช้กับหุ่นยนต์เคลื่อนที่ได้
คุณยังสามารถแก้ปัญหาที่ซับซ้อนเช่น นิวตัน–ราฟสัน การวนซ้ำนำไปใช้ในการหารากที่สองของตัวเลข
นอกจากนี้ยังใช้ในปัญหาวิถีโคจรเพื่อทำนายการเคลื่อนที่และการชนกันของวัตถุในอวกาศ
2. D* อัลกอริธึม
D*, Focused D* และ D* Lite เป็นอัลกอริธึมการค้นหาที่เพิ่มขึ้นเพื่อค้นหาเส้นทางที่สั้นที่สุดระหว่างสองจุด
อย่างไรก็ตาม สิ่งเหล่านี้เป็นส่วนผสมของอัลกอริธึม A* และการค้นพบใหม่ๆ ที่ช่วยให้พวกเขาเพิ่มข้อมูลลงในแผนที่เพื่อหาสิ่งกีดขวางที่ไม่รู้จัก
จากนั้นพวกเขาสามารถคำนวณเส้นทางใหม่โดยอาศัยข้อมูลใหม่ เช่นเดียวกับ Mars Rover
มันทำงานอย่างไร?
การทำงานของอัลกอริธึม D* นั้นคล้ายกับของ A* โดยอัลกอริทึมแรกจะกำหนด f, h และสร้างรายการเปิดและปิด
หลังจากนี้ อัลกอริทึม D* จะกำหนดค่า g ของโหนดปัจจุบันโดยใช้ค่า g ของโหนดที่อยู่ใกล้เคียง
โหนดที่อยู่ใกล้เคียงแต่ละโหนดจะทำการคาดเดาเกี่ยวกับค่า g ในปัจจุบัน และค่า g ที่สั้นที่สุดจะถูกปรับเป็นค่า g ใหม่
การใช้งาน
D* และรุ่นต่างๆ นั้นใช้กันอย่างแพร่หลายสำหรับหุ่นยนต์เคลื่อนที่และ รถยนต์ที่เป็นอิสระ การนำทาง
ระบบนำทางดังกล่าวรวมถึงระบบต้นแบบที่ทดสอบบนยานสำรวจ Opportunity and Spirit ของดาวอังคาร และระบบนำทางที่ชนะ ความท้าทายในเมือง DARPA.
3. อัลกอริทึม PRM
PRM หรือแผนงานความน่าจะเป็นคือกราฟเครือข่ายของเส้นทางที่เป็นไปได้ตามพื้นที่ว่างและว่างบนแผนที่ที่กำหนด
ใช้ในระบบการวางแผนที่ซับซ้อนและเพื่อค้นหาเส้นทางต้นทุนต่ำรอบอุปสรรค
PRM ใช้จุดตัวอย่างแบบสุ่มบนแผนที่ซึ่งอุปกรณ์หุ่นยนต์สามารถเคลื่อนที่ได้ จากนั้นจึงคำนวณเส้นทางที่สั้นที่สุด
มันทำงานอย่างไร?
PRM ประกอบด้วยขั้นตอนการก่อสร้างและแบบสอบถาม
ในระยะแรก แผนงานจะแสดงกราฟที่ใกล้เคียงกับการเคลื่อนที่ที่เป็นไปได้ในสภาพแวดล้อม จากนั้นจะมีการสร้างการกำหนดค่าแบบสุ่มและเชื่อมต่อกับเพื่อนบ้าน
การกำหนดค่าเริ่มต้นและเป้าหมายเชื่อมต่อกับกราฟในระยะการสืบค้น จากนั้นจะได้เส้นทางโดย a เส้นทางที่สั้นที่สุดของ Dijkstra แบบสอบถาม
การใช้งาน
PRM ใช้ในนักวางแผนท้องถิ่น โดยที่อัลกอริทึมจะคำนวณเส้นทางเส้นตรงระหว่างจุดสองจุด คือจุดเริ่มต้นและจุดเป้าหมาย
อัลกอริธึมยังสามารถใช้เพื่อปรับปรุงการวางแผนเส้นทางและแอปพลิเคชันการตรวจจับการชน
4. อัลกอริธึม Zero Moment Point (ZMP)
Zero Moment Point (เทคนิค ZMP) เป็นอัลกอริธึมที่หุ่นยนต์ใช้เพื่อรักษาความเฉื่อยรวมตรงข้ามกับแรงปฏิกิริยาของพื้น
อัลกอริธึมนี้ใช้แนวคิดในการคำนวณ ZMP และนำไปใช้เพื่อสร้างสมดุลให้กับหุ่นยนต์สองเท้า การใช้อัลกอริธึมนี้บนพื้นผิวเรียบทำให้หุ่นยนต์เดินได้ราวกับไม่มีช่วงเวลา
บริษัทผู้ผลิตเช่น ASIMO (ฮอนด้า) ใช้เทคนิคนี้
มันทำงานอย่างไร?
การเคลื่อนที่ของหุ่นยนต์เดินถูกวางแผนโดยใช้สมการโมเมนตัมเชิงมุม ทำให้แน่ใจได้ว่าการเคลื่อนไหวร่วมที่สร้างขึ้นจะรับประกันความมั่นคงในการเคลื่อนไหวแบบไดนามิกของหุ่นยนต์
ความเสถียรนี้วัดจากระยะทางของจุดศูนย์โมเมนต์ (คำนวณโดยอัลกอริทึม) ภายในขอบเขตของขอบเขตความเสถียรที่กำหนดไว้ล่วงหน้า
การใช้งาน
จุดศูนย์โมเมนต์สามารถใช้เป็นตัวชี้วัดเพื่อประเมินความเสถียรจากการพลิกคว่ำของหุ่นยนต์ เช่น iRobot PackBot เมื่อนำทางบนทางลาดและสิ่งกีดขวาง
5. อัลกอริธึมการควบคุม Proportional Integral Differential (PID)
Proportional Integral Differential Control หรือ PID สร้างลูปป้อนกลับของเซ็นเซอร์เพื่อปรับการตั้งค่าสำหรับส่วนประกอบทางกลโดยการคำนวณค่าความผิดพลาด
อัลกอริธึมเหล่านี้รวมค่าสัมประสิทธิ์พื้นฐานทั้งสาม ได้แก่ สัดส่วน อินทิกรัล และอนุพันธ์เพื่อสร้างสัญญาณควบคุม
ทำงานแบบเรียลไทม์และใช้การแก้ไขเมื่อจำเป็น สามารถเห็นได้ใน รถตัวเองขับรถ.
มันทำงานอย่างไร?
ตัวควบคุม PID ใช้เงื่อนไขการควบคุมสามเงื่อนไขของสัดส่วน อิทธิพลเชิงปริพันธ์และอนุพันธ์บนเอาต์พุตเพื่อใช้การควบคุมที่แม่นยำและเหมาะสมที่สุด
ตัวควบคุมนี้จะคำนวณค่าความผิดพลาดอย่างต่อเนื่องเป็นความแตกต่างระหว่างจุดตั้งค่าที่ต้องการและตัวแปรกระบวนการที่วัดได้
จากนั้นจะใช้การแก้ไขเพื่อลดข้อผิดพลาดเมื่อเวลาผ่านไปโดยการปรับตัวแปรควบคุม
การใช้งาน
ตัวควบคุมนี้สามารถควบคุมกระบวนการใดๆ ที่มีเอาต์พุตที่วัดได้ ค่าในอุดมคติที่รู้จักสำหรับเอาต์พุตนั้น และอินพุตของกระบวนการที่จะส่งผลต่อเอาต์พุตที่วัดได้
ตัวควบคุมถูกใช้ในอุตสาหกรรมเพื่อควบคุมอุณหภูมิ ความดัน แรง น้ำหนัก ตำแหน่ง ความเร็ว และตัวแปรอื่นๆ ที่มีการวัด
สรุป
ดังนั้นนี่คืออัลกอริธึมทั่วไปบางส่วนที่ใช้ในวิทยาการหุ่นยนต์ อัลกอริธึมเหล่านี้ค่อนข้างซับซ้อนด้วยการผสมผสานระหว่างกายภาพ พีชคณิตเชิงเส้น และสถิติที่ใช้ในการแมปการกระทำและการเคลื่อนไหว
อย่างไรก็ตาม เมื่อเทคโนโลยีก้าวหน้า อัลกอริธึมของหุ่นยนต์จะพัฒนาให้ซับซ้อนยิ่งขึ้น หุ่นยนต์จะสามารถทำงานให้เสร็จได้มากขึ้นและคิดเพื่อตัวเองมากขึ้น
หากคุณชอบบทความนี้ สมัครสมาชิก HashDork's Weekly อัปเดตผ่านอีเมลที่เราแชร์ข่าวล่าสุดของ AI, ML, DL, การเขียนโปรแกรมและเทคโนโลยีแห่งอนาคต
เขียนความเห็น