อรุณสวัสดิ์ครับ
ผมมาที่นี่เพื่อเล่าถึง
ลูกบอลที่บินได้ด้วยตนเอง
ไม่ใช่ครับ เป็นหุ่นยนต์ที่บินได้คล่องแคล่ว แบบนี้ครับ
ผมอยากจะเล่าถึงความท้าทายในการสร้างสิ่งนี้
และโอกาสที่น่าสนใจ
เกี่ยวกับการนำเทคโนโลยีนี้ไปใช้
หุ่นยนต์เหล่านี้
เกี่ยวข้องกับเครื่องบินไร้คนขับ
แต่เครื่องบินพวกนี้มันใหญ่มาก
หนักหลายพันปอนด์
และไม่คล่องแคล่วเอาซะเลย
มันบินด้วยตนเองไม่ได้ด้วยซ้ำ
ส่วนใหญ่พาหนะเหล่านี้
ต้องใช้ผู้บังคับหลายคน
มีนักบินหลายคน
มีผู้คุมเซ็นเซอร์
และผู้อำนวยการภารกิจ
สิ่งที่พวกเราสนใจ คือการสร้างหุ่นยนต์พวกนี้ --
อย่างที่เห็นในสองรูปนี้ --
หุ่นยนต์ที่สามารถหาซื้อได้ทั่วไป
นี่คือเฮลิคอปเตอร์สี่ใบพัด
มีขนาดประมาณหนึ่งเมตร
น้ำหนักหลายปอนด์
เราประกอบเซ็นเซอร์และหน่วยประมวลผลเข้าไป
ให้หุ่นยนต์เหล่านี้บินภายในห้องได้
โดยไม่มี GPS
หุ่นยนต์ที่ผมถืออยู่
คือสิ่งนี้
ซึ่งสร้างโดยนักเรียนสองคน
อเล็กซ์ และแดเนียล
น้ำหนักของมัน
ประมาณ 1 ส่วน 10 ปอนด์
ใช้ไฟฟ้า 15 วัตต์
และอย่างที่เห็น
ความยาวประมาณ 8 นิ้ว
ผมจะแสดงตัวอย่างสั้นๆ
ว่ามันทำงานอย่างไร
มันมีสี่ใบพัด
ถ้ามันหมุนด้วยความเร็วเท่ากัน
มันจะบินอยู่กับที่
ถ้าคุณเพิ่มความเร็วในการหมุน
มันจะบินสูงขึ้น
ถ้าเราทำให้มันเอียง
ไปในแนวนอน
มันจะเลี้ยวไปทางนั้น
จะทำให้มันเอียงได้ มีอยู่สองวิธี
ในรูปนี้
ใบพัดที่ 4 หมุนเร็วขึ้น
ในขณะที่ใบพัด 2 หมุนช้าลง
สิ่งที่เกิดขึ้นคือ
มันจะม้วนตัวเล็กน้อย
ในอีกทางหนึ่ง
ถ้าคุณเร่งใบพัดที่ 3
และให้ใบพัดที่ 1 หมุนช้าลง
มันจะเคลื่อนตัวไปข้างหน้า
และท้ายสุด
ถ้าคุณปรับให้ใบพัดที่อยู่คู่กัน
หมุนเร็วกว่าอีกคู่หนึ่ง
มันก็จะหมุนตัวรอบแกนดิ่ง
หน่วยประมวลผลที่อยู่บนตัวมัน
จะคำนวนว่าต้องเคลื่อนที่แบบใด
เพื่อคำนวนรวมกัน
แล้วประมวลว่าจะต้องส่งคำสั่งอะไรไปยังมอเตอร์
600 ครั้งต่อวินาที
นี่คือการทำงานคร่าวๆ ครับ
ข้อดีของระบบแบบนี้คือ
เมื่อคุณย่อชิ้นงานลง
คุณได้ความคล่องแคล่วกลับมา
นี่คือ R
หรือความยาวของหุ่นยนต์
มีขนาดครึ่งหนึ่งของเส้นผ่านศูนย์กลาง
ซึ่งจะกระทบตัวแปรหลายอย่าง
เมื่อคุณใช้ R ที่เล็กลง
ที่สำคัญคือ
ความเฉื่อยหรือแรงต้านทานต่อการเคลื่อนไหว
ผลปรากฎว่า
แรงเฉื่อย ซึ่งควบคุมการเคลื่อนที่แบบหมุน
มีค่าเป็น R ยกกำลัง 5
แปลว่ายิ่งเราทำให้ R เล็กได้เท่าไหร่
แรงเฉื่อยก็ยิ่งน้อยลง
ผลลัพธ์คือ ความเร่งเชิงมุม
ซึ่งแทนที่ด้วยตัวอักษรอัลฟ่า
เท่ากับ 1 ส่วน R
มันมีสัดส่วนผกผันกับ R
ยิ่ง R น้อยลงเท่าไหร่ ยิ่งเลี้ยวได้เร็วขึ้นเท่านั้น
จะเห็นได้ชัดในวีดีโอนี้
ที่มุมซ้ายล่างคุณจะเห็นหุ่นยนต์
ตีลังกา 360 องศา
ภายในครึ่งวินาที
ตีลังกาหลายรอบ ใช้เวลามากขึ้นเล็กน้อย
ในที่นี้หน่วยประมวลผล
ได้รับข้อมูลจากมาตรความเร่ง
และมาตรการหมุนที่อยู่บนเครื่อง
เพื่อนำมาคำนวนคำสั่ง
600 ครั้งต่อวินาที
เพื่อทรงตัวหุ่นยนต์
ด้านซ้ายมือคุณจะเห็นแดเนียลโยนมันขึ้นฟ้า
เห็นความแม่นยำของการควบคุมไหมครับ
ไม่ว่าคุณจะโยนมันอย่างไร
มันจะทรงตัวด้วยตนเอง แล้วบินกลับมาหาเขา
ทำไมต้องสร้างหุ่นยนต์แบบนี้ล่ะ
เราสามารถนำไปใช้ได้หลายวิธีครับ
ส่งมันเข้าไปในตึกแบบนี้
เพื่อค้นหาผู้บุกรุก
หรือหาการรั่วไหลของสารเคมี
หรือแก๊สพิษ
นอกจากนั้นยังสามารถ
ใช้ในการก่อสร้างอีกด้วย
นี่คือตัวอย่างการขนย้ายคาน เสา
เพื่อก่อสร้างโครงสร้างจตุรัส
ผมจะอธิบายต่ออีกสักหน่อยครับ
เราสามารถใช้มันเพื่อขนย้ายสิ่งของ
แต่ปัญหาหนึ่งคือ
มันรับน้ำหนักได้ไม่มาก
ซึ่งเราสามารถใช้หุ่นยนต์หลายๆตัว
เพื่อขนย้ายสิ่งของที่หนักขึ้นได้
นี่คือการทดลองล่าสุด --
ซึ่งไม่ใช่ล่าสุดอีกต่อไปแล้ว --
ไม่นานหลังจากแผ่นดินไหวที่เซนได
เราสามารถส่งหุ่นยนต์เข้าไปในซากปรักหักพัง
เพื่อประเมินความเสียหาย
หรือส่งไปในเตาปฏิกรณ์
เพื่อวัดกัมมันตภาพรังสี
หนึ่งในปัญหาพื้นฐาน
เกี่ยวกับการทำงานโดยไร้ผู้คุม
นั่นคือการคำนวนวิธีการ
เดินทางจากจุด A ไปยังจุด B ให้ได้
ซึ่งค่อนข้างท้าทายครับ
เพราะการเคลื่อนไหวมีความซับซ้อน
มันมีพื้นที่ 12 มิติ
เราใช้กลเล็กน้อย
เราใช้พื้นที่ 12 มิตินี้
นำมาแปลงรูป
ให้กลายเป็นพื้นที่ 4 มิติ
และพื้นที่ 4 มิตินั้น
มีแกน X Y Z และมุมหัน
สิ่งที่หุ่นยนต์พวกนี้ทำ
คือการวางแผนวิถีแบบ minimum snap trajectory
รื้อฟื้นวิชาฟิสิกส์เล็กน้อยครับ
คุณมีตำแหน่ง อนุพันธ์ ความเร็ว
และความเร่ง
แรงกระตุก
และแรงกระชาก
มันลดแรงกระชากให้เหลือน้อยที่สุด
ซึ่งทำให้
เกิดการเคลื่อนไหวที่นุ่มนวล
เพื่อหลบหลีกสิ่งกีดขวาง
วีถีการกระชากที่น้อยที่สุดแบบนี้
ถูกแปลงรูปให้กลับไป
เป็นพื้นที่ 12 มิติที่ซับซ้อน
ที่หุ่นพวกนี้ต้องทำ
เพื่อการควบคุม และการปฏิบัติหน้าที่
ผมจะยกตัวอย่างให้ดู
ว่ามันทำงานอย่างไร
ในวีดีโอแรกนี้
คุณจะเห็นหุ่นยนต์บินจากจุด A ไปจุด B
ผ่านจุดระหว่างทาง
หุ่นยนต์ตัวนี้สามารถ
เคลื่อนไหวในวิถีโค้งแบบใดก็ได้
นี่คือวิถีโค้งหนึ่ง
มีแรงดึงประมาณ 2G
ในรูปนี้เรามีกล้องจับการเคลื่อนไหวอยู่ด้านบน
ที่บอกตำแหน่งของหุ่นยนต์ 100 ครั้งต่อวินาที
พร้อมทั้งบอกหุ่นพวกนี้ให้ทราบถึงสิ่งกีดขวาง
และสิ่งกีดขวางอาจเคลื่อนที่อยู่ก็เป็นได้
ในที่นี้คุณจะเห็นแดเนียลโยนห่วงขึ้นกลางอากาศ
ในขณะที่หุ่นยนต์คำนวนตำแหน่งของห่วง
เพื่อหาวิธีลอดห่วงที่ดีที่สุด
ในฐานะนักวิชาการ
เราถูกสอนให้กระโดดลอดห่วงเสมอ เพื่อหาทุนทำการทดลอง
เราเลยสอนหุ่นยนต์เราตามนั้น
(เสียงปรบมือ)
อีกความสามารถหนึ่งของหุ่นยนต์นี้
มันสามารถจดจำวิถี
ซึ่งมันได้เรียนรู้ หรือถูกตั้งให้มัน
คุณจะเห็นมัน
รวมการเคลื่อนไหว
ที่สร้างโมเมนตัม
เพื่อเปลี่ยนการทรงตัว แล้วคืนรูปเดิม
มันต้องทำเพราะความกว้างของช่องทาง
กว้างกว่าความยาวของมันเพียงเล็กน้อย
เหมือนนักโดดน้ำที่ยืนบนแผ่นกระดาน
ต้องกระโดดขึ้นเพื่อสร้างโมเมนตัม
ตีลังกาสองรอบครึ่ง
แล้วคืนสู่สภาวะปกติ
มันกำลังทำตามนั้นเลยครับ
มันรู้ว่าต้องดัดแปลงวิถีต่างๆอย่างไร
เพื่อปฏิบัติในสิ่งที่ยากขึ้น
ในอีกมุมหนึ่ง
ข้อเสียของหุ่นยนต์พวกนี้คือขนาดของมัน
ดังที่ผมบอกข้างต้น
เราอาจต้องใช้หุ่นยนต์หลายๆ ตัว
เพื่อแก้ปัญหาเรื่องขนาด
ความยากอย่างหนึ่งคือ
เราจะประสานงานมันอย่างไร
เราเลยหันไปหาธรรมชาติ
นี่คือคลิป
มดทะเลทรายที่กำลังขนย้ายสิ่งของ
ภายใต้ห้องทดลองของศาสตราจารย์ Stephen Pratt
นี่คือผลมะเดื่อ
คุณสามารถทาอะไรก็ได้ด้วยน้ำมะเดื่อ
มดเหล่านี้จะนำมันกลับไปที่รัง
มดเหล่านี้ไม่มีศูนย์กลางประสานงาน
มันใช้ความรู้สึกเพื่อรับรู้
ไม่มีการสื่อสารตายตัว
แต่การใช้ประสาทสัมผัสกับมดตัวอื่นๆ
และใช้ประสาทสัมผัสกับสิ่งของ
มันสามารถประสานงานภายในกลุ่มได้
นี่คือการประสานงาน
ที่เราต้องการให้หุ่นของเราทำได้
เมื่อเรามีหุ่นยนต์
ที่รายล้อมด้วยหุ่นตัวอื่นๆ --
ลองดูหุ่นยนต์ I กับ J นะครับ --
สิ่งที่เราต้องการคือ
ให้มันคอยสอดส่องระยะห่าง
ในขณะที่มันบินเป็นฝูง
และคุณต้องการมั่นใจว่า
ระยะห่างอยู่ในระดับที่ปลอดภัย
มันจะคอยควบคุมระยะคลาดเคลื่อน
แล้วคำนวนการเคลื่อนไหว
100 ครั้งต่อวินาที
ซึ่งถูกแปลงเป็น 600 คำสั่งต่อวินาที ไปยังมอเตอร์
ซึ่งทั้งหมดนี้ต้องทำ
โดยไร้ศูนย์กลาง
แน่นอนว่าถ้าคุณมีหุ่นยนต์จำนวนมาก
คุณไม่สามารถใช้ศูนย์กลาง
เพื่อประสานงานที่เร็วพอได้
หุ่นยนต์เหล่านี้ต้องขับเคลื่อน
ด้วยข้อมูลจากตัวมันเอง
เกี่ยวกับที่อยู่ของหุ่นรอบๆ ตัว
และสุดท้าย
เราต้องการให้มันเป็นอิสระ
ไม่จำเป็นต้องรู้ว่าสิ่งรอบตัวคืออะไร
ซึ่งเราเรียกว่า สภาวะนิรนาม
สิ่งที่ผมอยากแสดงต่อไป
คือวีดีโอ
หุ่นยนต์จำนวน 20 ตัว
บินในลักษณะฝูง
มันกำลังเฝ้าดูตำแหน่งของเพื่อนๆ
คงตำแหน่งของตัวเองในฝูง
เราสามารถเปลี่ยนรูปแบบได้
ไม่ว่าจะเป็นในแนวระนาบ
หรือในระดับสามมิติ
คุณจะเห็นได้ว่า
มันสามารถแปรขบวนจากสามมิติ กลายเป็นสองมิติ
และสามารถปรับเปลี่ยนขบวน
เพื่อบินผ่านสิ่งกีดขวาง
หุ่นยนต์พวกนี้บินใกล้ชิดกันมาก
ดังที่เห็นในการบินเป็นเลขแปด
เข้าใกล้กันในระดับนิ้วเลยทีเดียว
ทั้งๆ ที่มีผลทางกลศาสตร์
ระหว่างใบพัดของแต่ละลำ
มันก็ยังสามารถทรงตัวและเคลื่อนที่ได้
(เสียงปรบมือ)
เมื่อคุณสามารถบินเป็นฝูงได้
คุณก็สามารถจับให้มันยกสิ่งของร่วมกันได้
นี่แสดงให้เห็นว่า
เราสามารถเพิ่มความแข็งแรงเป็นสอง สาม หรือสี่เท่า
ในการยกของได้
เพียงแค่จับมันประสานงานกัน
แต่ข้อเสียหนึ่งคือ
เมื่อคุณทำให้ขอบเขตใหญ่ขึ้น --
คุณต้องใช้หุ่นยนต์หลายตัวเพื่อขนย้ายของชิ้นเดียว
ซึ่งคุณกำลังเพิ่มแรงเฉื่อย
ทำให้สูญเสียความคล่องแคล่วไป
แต่คุณก็ได้รับการขนย้ายน้ำหนักที่มากขึ้นกลับมา
อีกหนึ่งการใช้งานคือ
ในห้องทดลองของเรา
นักเรียนปริญญาโทชื่อว่า Quentin Lindsey
ได้สร้างอัลกอริทึมที่สอนหุ่นยนต์เหล่านี้
ให้สร้างสิ่งก่อสร้าง
ทรงลูกเต๋าขึ้น
ด้วยเสาค้ำแบบนี้
อัลกอริทึมของเขาสอนหุ่นยนต์
ว่าต้องหยิบอะไรขึ้น
หยิบเมื่อไหร่ และวางที่ไหน
ในวีดีโอนี้ --
เราเร่งความเร็ว 10 เท่า 14 เท่า --
คุณจะเห็นสิ่งก่อสร้างรูปแบบต่างๆ สร้างโดยหุ่นยนต์
และแน่นอน ทุกอย่างเกิดขึ้นโดยอัตโนมัติ
สิ่งที่ Quentin ต้องทำ
คือป้อนพิมพ์เขียว
สิ่งที่เขาต้องการสร้างเท่านั้น
การทดลองที่คุณเห็นทั้งหมด
ตัวอย่างที่ผมได้แสดง
ได้การช่วยเหลือจากระบบจับการเคลื่อนไหว
แต่ถ้าเราลองนำไปทดลองข้างนอก
ในโลกแห่งความเป็นจริง
และถ้าไม่มี GPS
หุ่นยนต์เหล่านี้
ถูกติดตั้งด้วยกล้อง
และเครื่องสแกนเลเซอร์
มันใช้เซ็นเซอร์เหล่านี้
เพื่อวาดผังของสิ่งแวดล้อมรอบตัว
มันสามารถสร้างแผนที่
ประกอบไปด้วยประตู หน้าต่าง
ผู้คน เฟอร์นิเจอร์
และคำนวนตำแหน่งของตนเอง
จากสิ่งรอบๆ ตัว
มันไม่จำเป็นต้องมีระบบพิกัดกลาง
ระบบพิกัดถูกกำหนดโดยตัวมันเอง
โดยที่ที่มันอยู่ และสิ่งที่มันเห็น
และมันเคลื่อนที่ไปตามสิ่งที่มันเห็น
ผมอยากแสดงคลิปหนึ่ง
ของอัลกอริทึมที่สร้างโดย Frank Shen
และศาสตราจารย์ Nathan Micheal
ขณะที่หุ่นยนต์เข้าสู่ตึกแห่งหนึ่งเป็นครั้งแรก
และสร้างแผนที่นี้ขึ้นมาทันที
มันสามารถคำนวนสิ่งต่างๆรอบตัว
แล้วสร้างแผนที่ขึ้น
คำนวนว่ามันอยู่ใกล้กับอะไร
เพื่อคำนวนที่ตั้งของมัน
100 ครั้งต่อวินาที
ซึ่งทำให้เราสามารถใช้อัลกอริทึมควบคุม
ดังที่ผมอธิบายก่อนหน้านี้
หุ่นยนต์ตัวนี้ถูกควบคุมทางไกล
โดย Frank
แต่มันยังสามารถคำนวนเองได้
หากต้องการให้มันเดินทางเอง
ถ้าผมจะส่งหุ่นยนต์เข้าไปในสิ่งก่อสร้างหนึ่ง
แต่ผมไม่รู้ว่าข้างในเป็นอย่างไร
ผมสามารถสั่งให้มันเข้าไป
สร้างแผนที่
แล้วกลับมาบอกว่าภายในของตึกนั้นเป็นอย่างไร
มันไม่ได้แก้โจทย์เพียงแค่ว่า
จะเดินทางจากจุด A ไปจุด B ได้อย่างไร
แต่มันยังสามารถ
คำนวนว่า B อยู่ที่ไหนได้ตลอดเวลา
มันรู้ว่าที่ไหน
ที่มันรู้จักน้อยที่สุด
และนั่นคือวิธีที่มันสร้างแผนที่
ท้ายสุดนี้
ผมมีการใช้งานสุดท้าย
จากหลายๆ การประยุกต์ใช้จากเทคโนโลยีนี้
ผมเป็นศาสตราจารย์ และเราหลงใหลในการศึกษา
หุ่นยนต์เหล่านี้สามารถเปลี่ยน
การเรียนการสอนจากอนุบาลถึงมัธยมได้
แต่เราอยู่ในแคลิฟอร์เนียตอนใต้
ใกล้ลอสแองเจลีส
ผมเลยต้องทิ้งท้าย
ด้วยสิ่งที่เกี่ยวกับความบันเทิง
ผมอยากจบด้วยมิวสิควีดีโอ
ผมขอแนะนำผู้กำกับ อเล็กซ์และแดเนียล
ผู้สร้างวีดีโอนี้ขึ้น
(เสียงปรบมือ)
ก่อนที่ผมจะเปิดวีดีโอ
ผมต้องบอกว่าพวกเขาทำขึ้นภายในสามวัน
หลังจากที่ผมได้คำเชิญจากคริส
และหุ่นยนต์ในวีดีโอนี้
ทำงานอัตโนมัติทั้งหมด
คุณจะเห็นหุ่นยนต์ 9 ตัว เล่นเครื่องดนตรี 6 ชนิด
แน่นอน เราทำเพื่อ TED2012 โดยเฉพาะ
เรามาดูกันครับ
(เสียงดนตรี)
(เสียงปรบมือ)