มีวิธีการที่หลากหลายอยู่ พวกเขาสามารถแบ่งส่วนใหญ่ในวิธีการค้นหาแบบสุ่ม / ไม่ได้บอกทิศทาง (เช่นการค้นหากริดหรือการค้นหาแบบสุ่ม) และวิธีการโดยตรง อย่างไรก็ตามโปรดทราบว่าพวกเขาทุกคนต้องการการทดสอบการตั้งค่าพารามิเตอร์จำนวนมากเว้นแต่คุณจะได้รับรางวัล (อย่างน้อยนับร้อยขึ้นอยู่กับจำนวนพารามิเตอร์)
ในชั้นเรียนของวิธีการโดยตรงสามารถระบุวิธีการได้หลายวิธี:
- วิธีที่ไม่มีอนุพันธ์เช่น Nelder-Mead simplex หรือ DIRECT
- วิธีการวิวัฒนาการเช่น CMA-ES และฝูงอนุภาค
- แนวทางแบบจำลองเช่น EGO และ Kriging ตามลำดับ
คุณอาจต้องการดูOptunityซึ่งเป็นแพคเกจ Python ซึ่งมีตัวแก้ปัญหาที่หลากหลายสำหรับการปรับจูนพารามิเตอร์ (ทุกอย่างที่ฉันพูดถึงยกเว้น EGO และ Kriging สำหรับตอนนี้) MATLAB และ R จะสามารถใช้งาน Optunity ได้ในเร็ว ๆ นี้ คำเตือน: ฉันเป็นผู้พัฒนาหลักของแพคเกจนี้
จากประสบการณ์ส่วนตัวของฉันวิธีการวิวัฒนาการมีประสิทธิภาพมากสำหรับปัญหาประเภทนี้