Space Mission ทำไมเกม Docking ของ SpaceX ถึงยาก เหตุที่มนุษย์ต้องเรียนฟิสิกส์ และเขียนโปรแกรม
ทำไมเกม Docking ของ SpaceX ถึงยาก เหตุที่มนุษย์ต้องเรียนฟิสิกส์ และเขียนโปรแกรม

Nutn0n

ทำไมเกม Docking ของ SpaceX ถึงยาก เหตุที่มนุษย์ต้องเรียนฟิสิกส์ และเขียนโปรแกรม

May 14, 2020

หลังจากที่ SpaceX ได้ปล่อยเกมจำลองการ Docking หรือการเชื่อมยานอวกาศเข้ากับสถานีอวกาศนานาชาติน่าดีใจที่มีคนไทยเข้าไปเล่นเยอะมาก (และเราจะหาอะไรสนุก ๆ มาให้เล่นบ่อย ๆ) ซึ่งเรามองว่ามันเป็นเรื่องที่มากที่เราจะได้ใช้เกมนี้ในการทำความเข้าใจเรื่องของการเดินทางในอวกาศ เพราะจริง ๆ แล้วมันสอนให้เราคิดในมุมใหม่ ๆ จากการที่อวกาศนั้นสภาพแวดล้อมและแรงต่าง ๆ ไม่เหมือนกับบนโลก เราเติบโตมาบนโลก ร่างกายของเราถูกพัฒนามาให้รับรู้และ Sense กับสิ่งที่ผิดแปลกไป แต่พอในอวกาศ การรับรู้ของเราไม่เหมือนเดิม ทำให้เกิดอาการงง ๆ

ไปลองเล่นกันได้ที่ ISS Docking Simulator

มีบทความแนว ๆ เดียวกันที่อธิบายเรื่องนี้ไว้ สามารถเก็บไว้อ่านได้ เช่น เหตุผลทางฟิสิกส์ที่บอกว่ายังไงคุณก็แหกโค้งแน่ ๆ ในอวกาศ หรือการที่เราเคย ส่งปลาขึ้นไปว่ายน้ำในสภาวะไร้น้ำหนัก

บทความนี้เราจะมาค่อย ๆ ตอบคำถามกันว่าทำไม การเล่นเกมแนว ๆ อวกาศ หรือการควบคุมยานอวกาศที่ใช้หลักฟิสิกส์จริง ๆ ในการเขียนแล้วมันถึงได้ดูยาก

ว่าด้วยเรื่องของการ Docking ของเรากับเซเว่น

เวลาที่เราส่งยานอวกาศขึ้นไปเชื่อมต่อกับยานอวกาศ เราไม่ได้แค่ส่งขึ้นไปขับซ้ายขับขวาเหมือนขับรถไปซื้อของที่เซเว่น อะ ทีนี้ถามว่าเราขับรถไปซื้อของที่เซเว่นเราต้องรู้อะไรบ้าง ลองค่อย ๆ นึกไปพร้อมกัน ใครจะนึกมากกว่านี้ก็ได้

  • รู้ว่าเซเว่นอยู่ตรงไหน และมันจะอยู่ตรงนั้นไม่ย้ายที่ ซึ่งการรู้ก็มี 2 แบบคือแบบ Absolute กับแบบ Relative ถ้ารู้แบบ Absolute ก็คือเซเว่นอยู่ที่ไหนบนแผนที่ ปากซอยอะไร ถนนอะไร ส่วนรู้แบบ Relative คือรู้ว่าเซเว่นอยู่ตรงไหนเมื่อเทียบกับเรา เช่น อยู่ทางทิศเหนือไปสองกิโลเมตร
  • รู้ว่า เส้นทางที่จะพาเราไปเซเว่นคือทางไหน ซึ่งอันนี้จะเป็นคำถามต่อมาจากข้อแรก คือ Absolute กับ Relative ถ้าเรารู้ว่าเซเว่นอยู่ตรงไหนในแผนที่ แต่ไม่รู้ว่า “เราอยู่ที่ไหน” เราก็ไม่รู้ว่าจะออกแบบเส้นทางยังไง ในขณะเดียวกันถ้าเรารู้ว่าเราอยู่ที่ไหน แต่รู้ว่าเซเว่นอยู่ตรงไหนในทาง Relative ที่ตัวอ้างอิงหรือ Reference Point ไม่ใช่เรา เราก็ออกแบบเส้นทางไม่ได้ ลองนึกภาพเราโทรถามเพื่อนที่อยู่เชียงใหม่ว่า “ไปเซเว่นแถวบ้านเรายังไง” แล้วเพื่อนที่บ้านอยู่ข้าง ๆ เซเว่นตอบว่า “เดินออกจากบ้านเลี้ยวซ้ายถึงเลย” เราก็จะพบว่า เราทำตามวิธีของเพื่อนมันไม่เวิร์ค!
  • รู้จัก “แรง” ที่จะพาเราไปยังเซเว่น จำกฎของนิวตันได้ใช่ไหม F = ma แรงเท่ากับมวลคูณด้วยความเร่ง ถ้าเราเอามาคิดร่วมกับ V = S/T คือ อัตราเร็วเท่ากับการกระจัดคูณด้วยระยะทาง จริง ๆ เท่านี้เพียงพอแล้วที่เราจะตอบคำถามแบบง่าย ๆ ว่าไปเซเว่นยังไง ใช้เวลาเท่าไหร่ สมมติแม่ถามว่า ไปเซเว่นหน้าปากซอยกี่นาที เราอาจะตอบว่าไป 5 นาที (รู้ระยะทาง รู้อัตราเร็ว รู้มวล ซึ่งจริง ๆ เราไม่รู้หรอกแต่เราประมาณจากประสบการณ์การอยู่บนโลกจนชิน) แต่กลับอาจจะนานกว่าหน่อยเป็น 7 นาทีเพราะถือของกลับมาหนัก หรือการขับรถที่มีทางเลี้ยวไปมามากกว่าจะใช้เวลานานกว่าเพราะเราต้องเบรกไม่ให้หลุดโค้ง แปลว่าด้านบนเรารู้คอนเซปของการคำนวณทางฟิสิกส์อย่างง่าย ๆ แล้ว
  • รู้ความสัมพันธ์ของแรง การเคลื่อนที่ และเวลา ครั้งหน้าขับรถไปเซเว่นลองคิดเล่น ๆ ดูนะ ว่าเราเหยียบคันเร่งทั้งหมดกี่วินาที นานแค่ไหน เราหักเลี้ยวกี่ครั้ง เราเจอหมาตัดหน้ากี่ครั้ง ถนนวันนี้มีรถเยอะมากหรือน้อย เราจะสามารถสร้างสมการการไปเซเว่นของเราเองได้ และเราอาจจะสามารถหลับตาขับรถไปเซเว่นได้ (เพื่อไม่ให้เราโกงใช้การตัดสินใจแบบ Relative ณ แต่ละจุดของถนนที่เราอยู่)

เห็นไหมว่าจริง ๆ แล้วการไปเซเว่นหน้าปากซอยนั้นเต็มไปด้วยตัวแปรต่าง ๆ มากมาย แต่เพราะเราชิน เราก็เลยรู้สึกว่ามันไม่มีอะไร ทีนี้ลองนึกภาพว่าเราต้องเดินทางจากโลกไปยังสถานีอวกาศนานาชาติดู สถานีอวกาศนานาชาติ ไม่เหมือนกับเซเว่น เพราะมันโคจรอยู่รอบโลก ดังนั้นการคิดมันจึงมีตัวแปรเรื่องของ “เวลา” เข้ามาเกี่ยวข้องด้วย ตามแกน X แกน Y แกน Z และแกน T หมายความว่าในการปล่อยจรวดแต่ละครั้งเวลาคือสิ่งที่สำคัญมาก ๆ เราไปเซเว่นสายเซเว่นไม่หนีไปไหน แต่ถ้าเราไปสถานีอวกาศนานาชาติสาย คิดเวลาผิด เราก็ไม่เจอสถานีอวกาศ

จริง ๆ แล้วการเดินทางไปอวกาศก็ใช้กฎทางฟิสิกส์ไม่ต่างจากเราขับรถไปซื้อของเซเว่นเท่าไหร่ ที่มา – SpaceX

ดังนั้นแรงที่ปล่อยจรวดแต่ละครั้ง การจุดเครื่องดับเครื่อง องศาการตีโค้ง ความเร็ว แรงโน้มถ่วง ทั้งในเชิง Absolute และ Relative คือทั้งหมดที่เราต้องใช้ ในการเดินทางไปยังสถานีอวกาศ ซึ่งเอาง่าย ๆ แค่การ Docking ซึ่งเป็นช่วงท้ายที่สุดของกระบวนการทั้งหมดนี้เรายังเล่นเกมกันผ่านบ้างไม่ผ่านบ้างเลย สมตติว่าเราต้องมาคิดทุกอย่างเหล่านี้มันจะยากขนาดไหน ดังนั้นเราขอมอบตำแหน่งให้กับทุกคนว่าเป็นผู้เชี่ยวชาญการไปเซเว่น เพราะพวกคุณทำได้ง่าย ๆ โดยการใช้ความเคยชิน!

ปัญหาของสามัญสำนึกฟิสิกส์ในอวกาศ จากเกม ISS Docking

สิ่งที่เราทำในเกมนั้นเรียกว่า Manoeuvering ซึ่งก็ไม่รู้เหมือนกันว่าภาษาไทยเรียกอะไร เอาเป็นว่ามันคือความพยายามในการควบคุมวัตถุ (คือเราหรือตัวยาน) ให้ไปอยู่ในจุดที่ตรงกับที่เชื่อมต่อกับสถานีอวกาศ โดย Refrence Point จริง ๆ ก็คือตัวสถานี (ถึงได้บอกว่าเกมนี้จริง ๆ ง่ายโคตร ๆ ๆ ๆ ๆ แล้ว) สถานีอวกาศเคลื่อนที่รอบโลกด้วยความเร็ว 7.66 km/s เทียบกับพื้นโลก แปลว่าตอนปล่อยยาน ตัวเรากับ ISS มีความเร็วต่างกับเรา 7.66 km/s เพราะเราหยุดนิ่งบนพื้นเป็น 0 และการปล่อยยานต้องคำนวณ แรง ระยะทาง เวลา ทุกสิ่งอย่างเพื่อให้ความเร็วของยานเมื่อเทียบกับ ISS เป็น 0 km/s และความเร็วของยานเมื่อเทียบกับพื้นโลกเป็น 7.66 km/s

ในเกมนั้นเรียกได้ว่าเป็นช่วง Final ของการ Docking แบบจริง ๆ เพราะความแตกต่างของความเร็วระหว่างยานกับสถานีมีน้อยมาก ๆ (เหมือนรถสองคันขับขนาบข้างกัน แต่กว่ามันจะมาขนาบข้างกันได้ วิ่งมาจากคนละเมือง) จนเหมือนอยู่เฉย ๆ ในขณะที่เราเองมีหน้าที่ควบคุมอะไรเล็ก ๆ น้อย ๆ อย่างแกน X แกน Y แกน Z และ Orientation ให้ถูกทางคือ Pitch, Yaw, Row เท่านั้น

ยาน Dragon 2 ของ SpaceX เชื่อมต่อกับสถานีอวกาศนานาชาติ ที่มา – SpaceX

แต่!! สิ่งที่ขัดต่อสามัญสำนึกของเราคือการออกแรงต่างหาก บนอวกาศมีแรงเสียดทานน้อยมาก ๆ (ขอตีเป็น 0 เพื่อคิดง่าย ๆ) ทำให้เวลาเราออกแรงไปทางใดทางหนึ่ง เราจะเคลื่อนที่ไปทางนั้นตลอดกาล สมมติว่าเรากับเพื่อนอยู่ในอวกาศ แล้วไม่มีแรงอื่น ๆ เลย เราผลักเพื่อนไปในทาง X=+ เพื่อนเราก็จะไปในทาง X=+ ตลอดกาลเมื่อเทียบกับเรา ซึ่งในมุมของเราเราก็จะเห็นเพื่อนลอยไปในทาง X=- ตลอดกาล

แต่บนโลกมันอาจจะไม่เป็นแบบนั้น สมมติเราลากเก้าอี้ออกมาจากโต๊ะเพื่อจะนั่ง เราไม่ต้องออกแรงเบรกเก้าอี้ เพราะแรงเสียดทานของเก้าอี้กับพื้นและแรงโน้มถ่วงที่โลกดูดเก้าอี้ ทำให้เก้าอี้ที่เราดึงออกมาหยุดเมื่อเราเลิกหยุดแรง ไม่ทำให้เก้าอี้หนีจากเราไปตลอดกาล

เวลาเราเล่นเกมนี้ก็เช่นกัน สมมติว่าเราออกแรงขับยานไปข้างหน้าอย่างเดียว เป็นการเพิ่มแรงไป 10 นิวตัน เรากดเดินหน้าไป 5 ครั้ง 10 x 5 = 50 นิวตัน แปลว่าความเร็วถ้าเอามาคิดกับมวลแล้วความเร็วเราจะเพิ่มขึ้นเรื่อย ๆ เลยนะ ถ้าไม่เบรกก็คือชนสถานีอวกาศแน่นอน เราก็เลยต้องมีตัวแปรบางอย่างอยู่ในหัวเราว่า เห้ยเร็วไปแล้ว กดออกแรงไปข้างหลังหน่อยให้ช้าลง สมมติกดถอยหลังสองครั้ง 2 x 10 = 20 นิวตัน แปลว่าแรงลัพธ์ของเราคือ 50-20=30 นิวตัน

แบบนี้คิดได้กับทุกอย่าง รวมถึงการ Pitch, Yaw, Row เช่นกัน สมมติเรา Pitch แหงนขึ้น แล้วไม่กดลงเลยเราก็จะเงยหน้าแล้วก็วนวนวนแบบนั้นไปเรื่อย ๆ ดังนั้นถ้าจะเล่นให้ชนะ วิธีการอย่างนึงคืออย่ากดค้าง! ให้กดแล้วปล่อย ๆ เราจะได้รู้ว่าเราออกแรงไปมากน้อยแค่ไหน

ตรงนี้หลายคนอาจจะมีเทคนิคต่างกัน หนึ่งในเทคนิคที่หลายคนอาจจะทำก็คือ ออกแรงและออกแรงต้าน (ทำแล้วหยุด ทำแล้วหยุด) เพื่อคิดต่อว่า เอ ต่อไปจะทำอะไรดี หรืออาจจะสร้างโมเดลขึ้นมาในหัวว่าความเร็วในแนว X, Y, Z เป็นอย่างไรบ้าง นี่เป็นเหตุผลว่าเราเรียนเรื่องการแตกแรงในฟิสิกส์ไปทำไมจ้า

ทีนี้ความเจ๋งของเกมก็อยู่ตรงนี้ว่า มันสอนให้เราคิดแบบนี้นี่แหละ ด้วยการแสดงแรงในแนวแกนต่าง ๆ ออกมาให้เราเห็น

เกมนี้บอกอะไรเราบ้าง แล้วเราต้องรู้อะไรถึงจะชนะ

ก่อนอื่นเข้าใจวัตถุประสงค์ของเกมนี้ก่อน จริง ๆ แล้วมันคือเกมบวกลบเลขเฉย ๆ วิธีการก็คือ เราต้องบวกหรือลบเลขอันได้แก่ X Y Z , P Y R ทั้ง 6 ตัวซึ่งเป็นอิสระต่อกันให้เหลือ 0 เพื่อเหลือ 0 แล้วทุกอย่างแล้วเราก็จะชนะเอง ง่ายไหม เนี่ยง่าย!!!!!!!!!! ประเด็นคือเราไม่มีสมาธิพอที่จะบวกลบเลข 6 ตัวพร้อมกันได้ เราเลยอาจจะใช้วิธีข้างบนแบบที่ว่า เช่น ก็ทำไปทีละตัว เอา P, Y, R ให้ เป็น 0 ทุกตัวก่อน แล้วค่อย ๆ ตามด้วย X กับ Y ส่วน Z เอาไว้หลังสุดเพราะไม่งั้นถ้า Z เราเปลี่ยนเร็วไป Velocity เยอะเราก็จะแพ้ เพราะชนสถานี

ทำให้เลขสีเขียวในจอมีค่าเป็น 0 ให้หมด ด้วยการกดปุ่มควบคุม X, Y, Z และ P, Y, R บวกลบเลขไปเรื่อย ๆ

ทำยังไงก็ได้ให้ทุกอย่างเป็น 0 เมื่อเทียบกับตัวสถานีแล้วเราไปอยู่ตรงจุดที่มันกำหนดไว้พอดี แค่นี้ก็ชนะแล้ว

ถามว่าจริง ๆ แล้วมันมีอะไร มันก็มีเท่านี้แหละครับท่าน แต่ต้องใช้สมาธิ บวกลบเลขให้ถูก ดูเลขด้วยอย่าใช้ความรู้สึก

เหตุผลที่ AI และ Machine Learning คือเพื่อนแท้ในการสำรวจอวกาศ

อย่างที่บอก เกมนี้สามารถเขียนบอทมาเล่นให้ชนะได้ง่ายมาก ๆ เผลอ ๆ ง่ายกว่าเอาคนมานั่งเล่นอีก อัลกอริทึมก็คืออันข้างบน บวกลบเลขไปเรื่อย ๆ ให้ได้ค่าที่ต้องการ อันนี้มากเราลด อันนี้น้อยเราเพิ่ม ทำกันไปทีละหน่วย สุดท้ายก็ชนะเอง เล่นร้อยครั้งชนะร้อยครั้ง

มนุษย์นั้นเป็นสิ่งมีชีวิตที่ใช้ชีวิตตามสัญชาตญาณ เราทำหลาย ๆ สิ่งในชีวิตประจำวันของเราด้วยความเคยชิน คงไม่มีใครคิดว่า ฉันจะเดินไปเปิดตู้เย็นด้วยการเลี้ยวซ้าย 3 ครั้งเลี้ยวขวา 5 ครั้ง ออกแรง 10 นิวตันในการดึงตู้ ซึ่งการใช้ชีวิตแบบ Autopilot นี้เป็นความน่าทึ่งมาก ๆ ของเรา ในขณะที่คอมพิวเตอร์หรือโปรแกรม มันทำงานด้วย Logic เป็นหลัก มันทำงานด้วยการ Input, Process และ Output มีการเก็บค่าในตัวแปร มีการทำงานแบบ Loop ทำซ้ำไปเรื่อย ๆ จนกว่าจะได้สิ่งที่ต้องการ มีเงื่อนไข If และ Else มีการคิดแบบ Or หรือ And สิ่งนี้ทำให้มันสามารถแก้ปัญหายาก ๆ แต่มีกระบวนการการแก้ไขที่ชัดเจน ถูกนิยามไว้อย่างง่ายได้

Falcon 9 ลงจอดที่ Landing Zone 1 ณ แหลมเคอเนอเวอรัล ที่มา – SpaceX

ในโครงการ Apollo คอมพิวเตอร์จึงเป็นปัจจัยสำคัญและพิสูจน์ว่าคอมพิวเตอร์กับการสำรวจอวกาศนั้นเติบโตมาพร้อมกันและแยกออกจากกันไม่ได้ จากอัลกอริทึมใน Apollo ไปจนถึง Optimization Problem ในจรวด Falcon 9 ที่ทำให้มันสามารถลงจอดได้เอง นี่คือความน่าทึ่งของโลกแห่ง Software และ Logic, Algorithm

เทคโนโลยีปัจจุบันที่กำลังเป็นที่พูดถึงอย่าง AI หรือการเรียนรู้ของเครื่องจักร “Machine Learning” คือเพื่อนแท้ในอนาคตของเรา เพราะเราสามารถสอนให้คอมพิวเตอร์ออกแบบวิธีคิดของตัวเองได้ด้วย “ข้อมูล” ดังนั้น สมมติเราเอา ML มา Train ด้วยเกมข้างมัน เราก็บอกว่า ทำยังไงก็ได้ให้ทุกอย่างลดลงเหลือ 0 มันก็จะลองของมันเองไปเรื่อย ๆ เราไม่ต้องไปบอกว่า อันนี้ถ้ามากให้ลดนะ อันนี้ถ้าน้อยให้เพิ่ม ต้องทำแบบนี้ ๆ แต่มันจะรู้ของมันเอง มีวิธีแก้ไขปัญหาด้วยตัวเองเมื่อเวลาผ่านไป

ปัจจุบันนักบินอวกาศ กำลังจะเดินทางไปสถานีอวกาศไวกว่าคุณเดินทางไปทำงาน เพราะเรามีคอมพิวเตอร์มาช่วยในการแก้ปัญหานี่แหละ

เล่นให้เป็นแล้วเราจะคิดแบบคอมพิวเตอร์และนักฟิสิกส์ได้ รวมถึงจะได้ขับยานอวกาศได้ด้วย

เป็นเรื่องน่าตื่นเต้นที่เราจะได้เห็นอนาคตของการทำงานร่วมกับระหว่างมนุษย์กับหุ่นยนต์มากขึ้น และการที่ SpaceX ปล่อยเกมนี้ออกมา เราว่ามันก็เป็นประโยชน์มาก ๆ ในการสอนคนให้คิดแบบคอมพิวเตอร์ เพราะในความจริง ระบบ Docking แบบนี้คอมพิวเตอร์มันก็จัดการให้แหละไม่ได้เอานักบินอวกาศมาทำ แต่นักบินอวกาศก็ต้องรู้วิธีการทำงาน คิดแบบคอมพิวเตอร์ได้ เพราะถ้าเกิดระบบพังขึ้นมานักบินอวกาศก็ต้องทำ Manual Docking เช่นกัน

รู้เล่นนี้แล้ว เราก็มาลองเล่นเกมนี้ให้ชนะด้วยการค่อย ๆ คิดแบบคอมพิวเตอร์และนักฟิสิกส์และสมองของเราในการค่อย ๆ กดปุ่ม หรือถ้าใครจะเขียนโปรแกรมมาเล่นก็ไม่ว่ากัน

เรียบเรียงโดย ทีมงาน Spaceth.co





Read More

บทความอื่น ๆ ที่ควรอ่านต่อ



เรื่องราวน่าสนใจ

อัพเดทเรื่องราว ข่าว และบทวิเคราะห์เจาะลึก