Moodle Academy Moodle Admin Basics

ปัญญาเชิงกลุ่ม (Swarm Intelligence)


ในบทความนี้ตั้งใจเขียนให้เป็นพื้นฐานของการศึกษาเรื่องของ Swarm Intelligence หรือปัญญาเชิงกลุ่ม ซึ่งจัดอยู่ในกลุ่มทฤษฎีการคำนวนเชิงวิวัฒนาการ (Evolutionary Computation) เป็นเรื่องที่ผู้เขียนสนใจเป็นการส่วนตัว วิธีการเชิงกลุ่มนี้ส่วนมากจะนำมาใช้กับ การหาค่าเหมาะสมที่สุด (Optimization) โดยเฉพาะกับปัญหาที่แก้ได้ยาก ซึ่งในอดีตการหาคำตอบของปัญหาจะวัดกันที่ความเร็วและประสิทธิภาพของการแก้ปัญหานั้นๆ แต่ปัญหาเหล่านี้มันไม่สามารถการันตีว่าจะเป็นคำตอบที่ดีที่สุดหรือไม่

..........

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

สมมุติเรากำลังหาเส้นทางที่สั้นที่สุดของการเดินทางปยังเมือง 5 เมืองที่มีเส้นทางที่เชื่อมโยงกันทุกเมือง โดยที่ในแต่ละเมืองที่เชื่อมกันจะมีเส้นทางเดียวและการเดินทางจะไม่มีการเดินไปซ้ำกัน ในกรณีนี้เส้นทางที่เป็นไปได้จะมีจำนวนเท่ากับ 4! หรือ (n-1)! ซึ่งเป็นจำนวนที่ไม่มาก จึงสามารถเปรียบเทียบกับทุกเส้นทางได้ แต่ถ้าในกรณีที่จำนวนเมืองเท่ากับ 100 (n=100) เส้นทางเดินทางจะมีจำนวนทั้งสิ้น 99! จะทำให้การเปรียบเทียบเส้นทางทั้งหมดทำได้ช้ามาก จึงมีแนวคิดของการแก้ปัญหาที่มีความซับซ้อนแบบนี้โดยใช้ วิธีการประมาณการ หรือ ฮิวริสติก (Heuristic)

วิธีการของ ฮิวริสติก (Heuristic) เป็นการแก้ปัญหาแบบหนึ่งๆ เท่านั้น แต่เมื่อมีปัญหาประเภทใหม่ก็ต้องออกแบบวิธีการแก้ปัญหาแบบฮิวริสติกใหม่ทุกครั้ง ซึ่งมันไม่สามารถนำไปใช้แก้ปัญหาที่ต่างชนิดกันได้ ดังนั้นจึงมีการคิดค้นวิธีการค้นหาคำตอบที่เรียกว่า เมต้าฮิวริสติก (Meta heuristic) ขึ้นมา โดยวิธีการของเมต้าฮิวริสติกจะให้ทั้งประสิทธิภาพที่สูงขึ้นและมีประสิทธิผลที่ดี โดยวิธีการของเมต้าฮิวริสติกนั้นจะให้คำตอบได้ใกล้เคียงกับค่าที่ดีที่สุดมาก โดยใช้เวลาในการคำนวนแบบเหมาะสม ทั้งนี้ผู้อ่านสามารถศึกษาเพิ่มเติมได้จากหนังสือหรือเว็บไซต์ที่เกี่ยวข้องกับ Swarm Intelligence อื่นๆ ได้ครับ ผมคงแนะนำได้เบื้องต้น

เอาล่ะครับ เข้าเรื่องกันดีกว่าเกริ่นมาซะยืดยาว...

ปัญญาเชิงกลุ่ม หรือ Swarm Intelligence เป็นเรื่องที่เกี่ยวกับการศึกษาถึงพฤติกรรมที่มีการติดต่อหรือปฏิสัมพันธ์กันของสิ่งมีชีวิตเช่น สัตว์หรือแมลงที่อาศัยอยู่ร่วมกันเป็นกลุ่ม ตัวอย่างเช่น นก ค้างคาว มด หรือผึ้ง โดยที่สัตว์พวกนี้มักถูกเรียกกันว่า "สัตว์สังคม" การทำงานร่วมกันของสัตว์หรือแมลงภายในฝูงมีความน่าสนใจ เช่น นก หรือค้างคาว บินไปเป็นฝูงด้วยความเร็วและไม่ว่าจะไปในทิศทางใด ก็ไม่เคยที่จะชนกันเลย เพราะแต่ละตัวจะกำหนดระยะห่างระหว่างกันของตัวเอง โดยที่ไม่มีหัวหน้าฝูงมากำหนดให้ โดยแต่ละตัวในฝูงจะรักษากฎเกณฑ์ง่ายๆ ซึ่งการศึกษาเรื่องของ Swarm Intelligence อาจเรียกอีกอย่างหนึ่งว่า เซลฟ์ออกาไนเซชัน (Self-Organization)

สำหรับตอนต่อไปคงจะพูดถึง Particle Swamp Optimization (PSO) ซึ่งเป็นเทคนิคในการค้นหาคำตอบด้วยกลุ่มอนุภาค ซึ่งจัดอยู่ในกลุ่มการค้นหาแบบวิธีเมต้าฮิวริสติก (Meta-heuristic) ซึ่งใช้หลักการค้นหาผลลัพธ์โดยอาศัยวนซ้ำสุ่มค่าพารามิเตอร์เพื่อหาผลลัพธ์ที่ดีที่สุด โดยที่ผลลัพธ์ในการค้นหาจะไม่ซ้ำกัน แล้วพบกันตอนต่อไปครับ :)

แหล่งอ้างอิง:
[1] บุญเจริญ ศิริเนาวกุล. ปัญญาประดิษฐ์ : ปัญญาเชิงกลุ่ม = Artificial Intelligence : Swarm Intelligence. -- กรุงเทพฯ : ท้อป, 2555.

ความคิดเห็น