OpenAI ได้เปิดซอร์สโค้ดไลบรารี Python ประสิทธิภาพสูงสำหรับจำลองหุ่นยนต์ โดยใช้เอนจิ้น MuJoCo ซึ่งพัฒนาขึ้นจากการวิจัยด้านหุ่นยนต์ของพวกเขาในปีที่ผ่านมา
ไลบรารีนี้รองรับการเรนเดอร์แบบ headless GPU ซึ่งช่วยเพิ่มความเร็วได้ถึงประมาณ 40 เท่า เมื่อเทียบกับการเรนเดอร์บน CPU ทำให้สามารถสร้างข้อมูลภาพสังเคราะห์ได้หลายร้อยเฟรมต่อวินาที
นอกจากนี้ ยังมีการพอร์ตตัวอย่าง VR ของ MuJoCo จาก C++ มาเป็น Python ทำให้สามารถใช้งานร่วมกับอุปกรณ์ VR เช่น HTC Vive ได้ด้วย
การเริ่มต้นใช้งานที่ง่ายที่สุดคือการใช้คลาส MjSim ซึ่งเป็นตัวห่อหุ้ม (wrapper) สำหรับโมเดลและการจำลอง ทำให้สามารถควบคุมการจำลองและเรนเดอร์ภาพจากเซ็นเซอร์กล้องได้อย่างง่ายดาย
การสุ่มพื้นผิวประสิทธิภาพสูง
ฉบับล่าสุดของ mujoco-py รองรับการเรนเดอร์ GPU แบบ headless ซึ่งให้ความเร็วเพิ่มขึ้นประมาณ 40 เท่าเมื่อเทียบกับการเรนเดอร์ด้วย CPU ทำให้สามารถสร้างข้อมูลภาพสังเคราะห์ได้หลายร้อยเฟรมต่อวินาที
ความเป็นจริงเสมือนกับ mujoco-py
API ที่เปิดเผยของ mujoco-py เพียงพอสำหรับการโต้ตอบในโลกเสมือนจริงโดยไม่ต้องใช้โค้ด C++ เพิ่มเติม และมีการพอร์ตตัวอย่าง VR ของ MuJoCo จาก C++ มาเป็น Python แล้ว
API และการใช้งาน
วิธีที่ง่ายที่สุดในการเริ่มต้นคือการใช้คลาส MjSim ซึ่งเป็นตัวห่อหุ้มสำหรับโมเดลและการจำลอง ทำให้สามารถควบคุมการจำลองและเรนเดอร์ภาพจากเซ็นเซอร์กล้องได้อย่างง่ายดาย
ศัพท์ที่ควรรู้
- Domain randomization – เทคนิคการสุ่มพารามิเตอร์ของสภาพแวดล้อมเพื่อเพิ่มความแข็งแกร่งของโมเดล
- MuJoCo – เอนจิ้นที่ใช้ในการจำลองทางฟิสิกส์สำหรับงานด้านหุ่นยนต์
- Headless GPU rendering – การเรนเดอร์กราฟิกโดยไม่ต้องมีหน้าจอแสดงผลจริง ทำให้เพิ่มความเร็วในการประมวลผล
- MjSim class – คลาสที่ทำหน้าที่เป็นตัวห่อหุ้ม (wrapper) สำหรับโมเดลและการจำลอง ทำให้การใช้งานง่ายขึ้น
ที่มา: OpenAI