ในบทเรียนที่แล้ว ระบบวิวัฒนาการสะสมความสามารถอย่างต่อเนื่องผ่านวงจรปิด "สร้าง—ประเมิน—คัดเลือก—สืบทอด" บทเรียนนี้จะผลักแนวคิดนี้ให้ลึกไปอีกหนึ่งชั้น ไม่ใช่เพียงให้อัลกอริทึมแก้ปัญหา แต่ให้อัลกอริทึมปรับปรุงอัลกอริทึมเสียเองMetaDE ก็คือสถาปัตยกรรมวิวัฒนาการแบบซ้อนเช่นนี้เอง โดยแยก Differential Evolution (DE) ออกเป็นสองชั้น คือชั้นในและชั้นนอก ทำให้ "อัลกอริทึมที่ปรับแต่งอัลกอริทึม" กลายเป็นกระบวนการคำนวณที่นำไปปฏิบัติได้จริง
1. การแบ่งงานสองชั้น: ใครแก้ปัญหา ใครวิวัฒนาการ
MetaDE จัดระเบียบ DE เป็นสองชั้น คือชั้นในและชั้นนอก โดยทั้งสองชั้นมีเป้าหมายการทำงานที่แตกต่างกันโดยสิ้นเชิง:
- DE ชั้นใน (ชั้นงาน): มุ่งเน้นงานปรับให้เหมาะสมจริง ดูแลประชากรคำตอบที่เป็นตัวเลือก ดำเนินการกลายพันธุ์ ครอสโอเวอร์ และคัดเลือกซ้ำแล้วซ้ำเล่า เพื่อค่อย ๆ เข้าใกล้คำตอบที่มีคุณภาพบนงานนั้น ๆ มันตอบคำถามว่า "แก้โจทย์ข้อนี้ได้ดีแค่ไหน"
- DE ชั้นนอก (ชั้นเมตา): มุ่งเน้นที่ตัวอัลกอริทึมเอง แต่ละปัจเจกในประชากรไม่ใช่คำตอบของงาน แต่เป็นชุดการตั้งค่า "กลยุทธ์การกลายพันธุ์ + พารามิเตอร์" ทั้งชุด เช่น ใช้วิธีกลายพันธุ์แบบใด ค่าตัวคูณสเกลและความน่าจะเป็นครอสโอเวอร์เป็นเท่าใด มันตอบคำถามว่า "การตั้งค่าอัลกอริทึมชุดนี้ใช้งานได้ดีหรือไม่"
ดังนั้นชั้นนอกจึงไม่ได้ปรับแต่งตัวแปรของงานโดยตรง ตัวแปรของงานจะถูกจัดการโดยชั้นในเสมอ สิ่งที่ชั้นนอกเปลี่ยนแปลงก็คือ "คู่มือการทำงาน" ของชั้นในเท่านั้น
2. วงจรปิดเชิงโต้ตอบ: การส่งการตั้งค่าลงไปและการส่งผลประสิทธิภาพกลับ
ทั้งสองชั้นเชื่อมโยงกันด้วยช่องทางสองทิศทาง ก่อตัวเป็นวงจรปิด: ชั้นนอกผลิตชุดการตั้งค่าอัลกอริทึมหนึ่งชุดก่อน แล้วส่งลงไป (→) ให้ชั้นใน; ชั้นในทำงานบนงานตามการตั้งค่านั้น เมื่อเสร็จแล้วจึงส่งประสิทธิภาพของงาน (→) กลับไปยังชั้นนอก; ชั้นนอกอาศัยข้อมูลนี้เก็บรักษาและรวมการตั้งค่าที่ดีกว่าใหม่ แล้วผลิตการตั้งค่ารอบถัดไป กระบวนการทั้งหมดสรุปได้ว่า: การตั้งค่าชั้นนอก → การแก้ปัญหาชั้นใน → ประสิทธิภาพของงาน → การอัปเดตชั้นนอก วนซ้ำไปเรื่อย ๆ
วงจรปิดนี้นำมาซึ่งคุณสมบัติสำคัญอย่างหนึ่ง: กลยุทธ์การกลายพันธุ์และพารามิเตอร์ของอัลกอริทึมชั้นในไม่ได้ถูกกำหนดโดยมนุษย์เพียงครั้งเดียวแล้วคงที่อีกต่อไป แต่ถูกเขียนใหม่อย่างต่อเนื่องตามการค้นหาของชั้นนอก อัลกอริทึมจึงได้รับช่องทางในการปรับปรุงตนเอง
3. เงื่อนไขที่นำไปปฏิบัติได้: การประมวลผลขนานและการ权衡ต้นทุน
โครงสร้างแบบซ้อนไม่ได้ไม่มีค่าใช้จ่าย ทุกครั้งที่ชั้นนอกประเมิน จะต้องรันชุดการตั้งค่าหนึ่งชุดบนงานอย่างสมบูรณ์หนึ่งรอบ ต้นทุนการประเมินจึงถูกขยายขึ้นอย่างชัดเจน ยิ่งประชากรชั้นนอกมีขนาดใหญ่ ค่าใช้จ่ายรวมก็ยิ่งสูงขึ้น นี่คือเหตุผลที่ MetaDE ต้องพึ่งพาการประมวลผลขนานด้วย GPU: การตั้งค่าชั้นในหลายชุดสามารถประเมินพร้อมกันได้ เวลาที่ชั้นนอกใช้ต่อการวนซ้ำหนึ่งรอบจึงถูกบีบอัดลงอย่างมีนัยสำคัญ การวิวัฒนาการเมตาแบบซ้อนจึงมีความสามารถในการนำไปปฏิบัติเชิงวิศวกรรม ในทางกลับกัน หากทรัพยากรการประมวลผลขนานที่มีอยู่ไม่เพียงพอ การลดขนาดชั้นนอกหรือลดความละเอียดในการประเมินชั้นใน มักเป็นทางเลือกที่สมจริงกว่าการขยายขอบเขตการค้นหาอย่างไม่ลืมหูลืมตา
