6

กลไกวิวัฒนาการสองชั้นภายใน-ภายนอกและการปรับตัวอัตโนมัติ

AI999第5课:方法演化:从优化解到优化算法本身
00:00

วิวัฒนาการสองชั้นภายใน-ภายนอกแยก “การแก้ปัญหางานเฉพาะเจาะจง” ออกจาก “การปรับปรุงวิธีแก้ปัญหา” ให้เป็นสองวงจรวิวัฒนาการที่โต้ตอบกัน:ชั้นในมุ่งเน้นการแก้ปัญหางานและสร้างผลการดำเนินงาน ส่วนชั้นนอกจะวิวัฒนาการการตั้งค่าและกลยุทธ์ของอัลกอริทึมชั้นในโดยอิงจากผลการดำเนินงานเหล่านี้ จึงเกิดเป็นกลไกปรับปรุงอัลกอริทึมที่สามารถปรับตัวอัตโนมัติได้ ไม่ใช่แค่การนำอัลกอริทึมสองตัวมาต่อกันแบบง่าย ๆ แต่เป็นการเพิ่มชั้นควบคุมเมตา (meta-layer) ที่วิวัฒนาการได้ไว้เหนือชั้นการแก้ปัญหางาน ทำให้ระบบเปลี่ยนจาก “การกำหนดอัลกอริทึมด้วยมือ” ไปสู่ “อัลกอริทึมที่ปรับให้เข้ากับงานได้เอง”

วิวัฒนาการสองชั้นภายใน-ภายนอก: วงจรป้อนกลับระหว่างการแก้ปัญหางานและวิวัฒนาการของวิธีการชั้นใน: ชั้นการแก้ปัญหางานดำเนินการงานเฉพาะจำนวนมากแบบขนาน ให้ผลลัพธ์เป็นคำตอบที่เป็นไปได้และผลการดำเนินงานงาน T1งาน T2งาน T3งาน Tnเอาต์พุต: คำตอบที่เป็นไปได้ · ค่าฟังก์ชันเป้าหมาย f · ผลการดำเนินงานเวลาที่ใช้ทรัพยากร · จำนวนขั้นตอนลู่เข้า · อัตราความสำเร็จใช้เป็นเกณฑ์ประเมินค่าความเหมาะสมของชั้นนอกการดำเนินการแบบกลุ่มด้วยเทนเซอร์การกลายพันธุ์ การประเมิน และการอัปเดตสถานะเข้าสู่กราฟการคำนวณหน้าที่ชั้นใน: ทำโจทย์ให้สำเร็จส่งออกคำตอบและผลการดำเนินงานให้ชั้นนอกประเมินชั้นนอก: ชั้นวิวัฒนาการของวิธีการไม่แก้ปัญหางานต้นทางโดยตรง แต่วิวัฒนาการการตั้งค่าและกลยุทธ์ของชั้นในกลไกปรับตัวอัตโนมัติ: ปรับกลยุทธ์ชั้นในอย่างต่อเนื่องตามการเปลี่ยนแปลงของงานและสภาพแวดล้อมใช้วิวัฒนาการปรับปรุงวิวัฒนาการประเมินคัดเลือกกลายพันธุ์อัปเดตหน้าที่ชั้นนอก: ทำให้วิธีการทำโจทย์ดีขึ้นปรับตัวอัตโนมัติ: ปรับกลยุทธ์ชั้นในอย่างต่อเนื่องตามงานและสภาพแวดล้อมผลการดำเนินงานของชั้นในรวมเป็นสัญญาณค่าความเหมาะสมอัปเดตย้อนกลับการตั้งค่าและกลยุทธ์ของชั้นในการประมวลผลขนานด้วย GPU: รันงานชั้นในแบบกลุ่ม ให้ข้อมูลป้อนกลับทางสถิติที่เพียงพอต่อชั้นนอกยิ่งขึ้น และลดต้นทุนการรอคอยระหว่างการค้นหาวัตถุประสงค์การเรียนรู้: เข้าใจความร่วมมือระหว่างการแก้ปัญหาของชั้นในและการปรับกลยุทธ์ของชั้นนอก

การแบ่งหน้าที่ระหว่างชั้นในและชั้นนอก

  • หน้าที่ชั้นใน: แก้ปัญหางานจริง สร้างคำตอบที่เป็นไปได้ ค่าฟังก์ชันเป้าหมาย และข้อมูลผลการดำเนินงาน รับหน้าที่ “ทำโจทย์ให้สำเร็จ”
  • หน้าที่ชั้นนอก: ไม่แก้ปัญหางานต้นทางโดยตรง แต่วิวัฒนาการการตั้งค่า กลยุทธ์ และพารามิเตอร์ของอัลกอริทึมชั้นใน รับหน้าที่ “ทำให้วิธีการทำโจทย์ดีขึ้น”
  • วงจรป้อนกลับ: ผลการประเมินของงานชั้นในถูกรวมเป็นสัญญาณค่าความเหมาะสมของชั้นนอก ใช้สำหรับคัดเลือก กลายพันธุ์ และอัปเดตการตั้งค่าชั้นในที่ดีขึ้น
  • กลไกปรับตัวอัตโนมัติ: ชั้นนอกปรับกลยุทธ์ชั้นในอย่างต่อเนื่องตามการเปลี่ยนแปลงของงานและสภาพแวดล้อม
  • การสนับสนุนแบบขนาน: GPU สามารถรันงานชั้นในจำนวนมากแบบขนาน ให้ข้อมูลป้อนกลับทางสถิติที่เพียงพอต่อวิวัฒนาการชั้นนอกยิ่งขึ้น และลดต้นทุนการรอคอยระหว่างการค้นหา

MetaDE: ใช้วิวัฒนาการปรับปรุงวิวัฒนาการ

ยกตัวอย่าง MetaDE ชั้นใน DE รับผิดชอบงานปรับให้เหมาะสมเฉพาะเจาะจง ส่วนอัลกอริทึมวิวัฒนาการชั้นนอกจะคัดเลือกและปรับการตั้งค่าและกลยุทธ์ของ DE ตามผลการดำเนินงานของชั้นใน ผลลัพธ์จากงานชั้นในจำนวนมากจะย้อนกลับมาชี้แนะการเลือกการตั้งค่าของชั้นนอก เกิดเป็นวงจรป้อนกลับสองชั้นแบบ “ใช้วิวัฒนาการปรับปรุงวิวัฒนาการ”

ข้อแตกต่างสำคัญ
ชั้นในส่งออก “คำตอบ” ส่วนชั้นนอกส่งออก “วิธีการที่ดีกว่าในการสร้างคำตอบ” ค่าความเหมาะสมของชั้นนอกไม่ใช่ค่าที่ดีที่สุดของงานต้นทาง แต่เป็นการประเมินผลการดำเนินงานของการตั้งค่าชั้นในบนงานแบบกลุ่ม

วัตถุประสงค์การเรียนรู้

เข้าใจความสัมพันธ์เชิงความร่วมมือระหว่างการแก้ปัญหางานของชั้นในและการปรับกลยุทธ์ของชั้นนอก เข้าใจว่าวิวัฒนาการของวิธีการคือการเพิ่มชั้นควบคุมเมตาที่วิวัฒนาการได้ไว้เหนือชั้นใน และสามารถอธิบายได้ว่าการประมวลผลขนานด้วย GPU ให้ข้อมูลป้อนกลับทางสถิติที่เชื่อถือได้มากกว่าต่อชั้นนอกได้อย่างไร