คุณกำลังดูแผนภูมิลำดับขั้นตอนวิธีระดับสูงสุด บางขั้นตอนในแผนภูมิการไหลอาจได้รับรายละเอียดแผนภูมิการไหลของตนเอง อย่างไรก็ตามในเอกสารที่ตีพิมพ์โดยเน้นที่ความกระชับรายละเอียดจำนวนมากมักถูกมองข้าม รายละเอียดสำหรับปัญหาการเพิ่มประสิทธิภาพภายในมาตรฐานซึ่งถือว่าเป็น "หมวกเก่า" อาจไม่ได้ให้บริการเลย
แนวคิดทั่วไปคืออัลกอริธึมการปรับให้เหมาะสมอาจต้องการวิธีการแก้ปัญหาการเพิ่มประสิทธิภาพที่ง่ายขึ้นโดยทั่วไป ไม่ใช่เรื่องแปลกที่จะมีอัลกอริธึมการเพิ่มประสิทธิภาพ 3 หรือ 4 ระดับภายในอัลกอริทึมระดับบนสุดแม้ว่าบางอันจะอยู่ภายในกับเครื่องมือเพิ่มประสิทธิภาพมาตรฐาน
แม้แต่การตัดสินใจว่าจะยุติอัลกอริธึมเมื่อใด (หนึ่งในระดับลำดับชั้น) อาจจำเป็นต้องแก้ไขปัญหาการปรับให้เหมาะสมด้านข้าง ยกตัวอย่างเช่นปัญหากำลังสองน้อยที่สุดเชิงเส้นที่ไม่ จำกัด ในเชิงลบอาจถูกแก้ไขเพื่อกำหนดตัวคูณลากรองจ์ที่ใช้ในการประเมินคะแนนความเหมาะสม KKT ที่ใช้ในการตัดสินใจว่าจะประกาศการปรับให้เหมาะสมเมื่อใด
หากปัญหาการปรับให้เหมาะสมเป็นแบบสุ่มหรือไดนามิกอาจมีระดับของการปรับให้เหมาะสมเพิ่มเติม
นี่คือตัวอย่าง การเขียนโปรแกรมกำลังสองตามลำดับ (SQP) ปัญหาการหาค่าเหมาะที่สุดเบื้องต้นได้รับการแก้ไขโดยการทำซ้ำเงื่อนไขเงื่อนไขการหาค่าเหมาะที่สุดของ Karush-Kuhn-Tucker โดยเริ่มจากจุดเริ่มต้นโดยมีวัตถุประสงค์ซึ่งเป็นการประมาณกำลังสองของปัญหาของลากรองจ์และเชิงเส้นของข้อ จำกัด โปรแกรม Quadratic Program (QP) ที่ได้รับการแก้ไขแล้ว QP ซึ่งได้รับการแก้ไขอาจมีข้อ จำกัด ของภูมิภาคที่เชื่อถือได้หรือมีการค้นหาบรรทัดจากการทำซ้ำในปัจจุบันไปจนถึงการแก้ปัญหาของ QP ซึ่งเป็นปัญหาการเพิ่มประสิทธิภาพของตัวเองเพื่อค้นหาการทำซ้ำในครั้งต่อไป หากมีการใช้วิธี Quasi-Newton ปัญหาการปรับให้เหมาะสมจะต้องแก้ไขเพื่อพิจารณาการปรับปรุง Quasi-Newton เป็น Hessian ของ Lagrangian - โดยปกติจะเป็นการเพิ่มประสิทธิภาพของรูปแบบปิดโดยใช้สูตรปิดแบบฟอร์มเช่น BFGS หรือ SR1 แต่มันอาจเป็นการเพิ่มประสิทธิภาพเชิงตัวเลข จากนั้น QP ใหม่จะได้รับการแก้ไข ฯลฯ หาก QP ไม่สามารถทำได้รวมถึงการเริ่มต้นปัญหาการเพิ่มประสิทธิภาพจะได้รับการแก้ไขเพื่อหาจุดที่เป็นไปได้ ในขณะเดียวกันอาจมีปัญหาการปรับให้เหมาะสมภายในหนึ่งหรือสองระดับที่เรียกว่าภายในตัวแก้ไข QP ในตอนท้ายของการวนซ้ำแต่ละครั้งปัญหาเชิงเส้นกำลังสองน้อยที่ไม่เป็นลบเชิงเส้นอาจถูกแก้ไขเพื่อกำหนดคะแนนการเพิ่มประสิทธิภาพ เป็นต้น
หากนี่เป็นปัญหาจำนวนเต็มแบบผสม Shebang ทั้งหมดนี้อาจถูกดำเนินการในแต่ละโหนดการแยกซึ่งเป็นส่วนหนึ่งของอัลกอริทึมระดับสูงกว่า ในทำนองเดียวกันสำหรับเครื่องมือเพิ่มประสิทธิภาพระดับโลก - ปัญหาการปรับให้เหมาะสมในท้องถิ่นนั้นใช้เพื่อสร้างขอบเขตบนโซลูชันที่เหมาะสมที่สุดในระดับโลกจากนั้นจะมีการผ่อนคลายข้อ จำกัด บางอย่างเพื่อสร้างปัญหาการปรับให้เหมาะสมที่ต่ำกว่า ปัญหาการออปติไมซ์ "ง่าย" หลายพันหรือหลายล้านจากสาขาและขอบเขตอาจได้รับการแก้ไขเพื่อแก้ไขปัญหาจำนวนเต็มหนึ่งอย่างหรือการเพิ่มประสิทธิภาพทั่วโลก
สิ่งนี้ควรเริ่มให้แนวคิดแก่คุณ
แก้ไข : เพื่อตอบคำถามไก่และไข่ซึ่งเพิ่มลงในคำถามหลังจากคำตอบของฉัน: หากมีปัญหาไก่และไข่แสดงว่าไม่ใช่อัลกอริทึมที่ใช้งานได้จริงที่กำหนดไว้อย่างดี ในตัวอย่างที่ฉันให้ไม่มีไก่และไข่ ขั้นตอนวิธีระดับสูงกว่าเรียกใช้เครื่องมือเพิ่มประสิทธิภาพซึ่งถูกกำหนดหรือมีอยู่แล้ว SQP จะเรียกใช้ตัวแก้ปัญหา QP ซ้ำ ๆ เพื่อแก้ปัญหาย่อย แต่ตัวแก้ปัญหาแบบ QP แก้ปัญหาที่ง่ายกว่าคือ QP มากกว่าปัญหาดั้งเดิม หากมีอัลกอริธึมการเพิ่มประสิทธิภาพระดับโลกที่สูงขึ้นไปอีกมันอาจเรียกใช้ตัวแก้ปัญหา SQP เพื่อแก้ปัญหาย่อยการเพิ่มประสิทธิภาพแบบไม่เชิงเส้นในพื้นที่และตัวแก้ SQP จะเรียกตัวแก้ปัญหา QP เพื่อแก้ปัญหาย่อย QP ไม่มีไข่เจียวและไข่
หมายเหตุ: โอกาสในการเพิ่มประสิทธิภาพคือ "ทุกที่" ผู้เชี่ยวชาญด้านการเพิ่มประสิทธิภาพเช่นผู้พัฒนาอัลกอริทึมการเพิ่มประสิทธิภาพมีแนวโน้มที่จะเห็นโอกาสการเพิ่มประสิทธิภาพเหล่านี้และดูพวกเขาเป็นเช่นนี้กว่าโจหรือเจนเฉลี่ย และมีแนวโน้มที่อัลกอริธึมค่อนข้างเป็นธรรมชาติพวกเขามองเห็นโอกาสในการสร้างอัลกอริธึมการปรับให้เหมาะสมที่สุดจากอัลกอริธึมการเพิ่มประสิทธิภาพในระดับต่ำกว่า การกำหนดและการแก้ปัญหาการปรับให้เหมาะสมทำหน้าที่เป็นหน่วยการสร้างสำหรับอัลกอริธึมการเพิ่มประสิทธิภาพ (ระดับสูงกว่า) อื่น ๆ
แก้ไข 2 : เพื่อตอบสนองต่อคำขอเงินรางวัลที่เพิ่งเพิ่มโดย OP กระดาษอธิบายเครื่องมือเพิ่มประสิทธิภาพแบบไม่เชิงเส้น SQP SNOPT https://web.stanford.edu/group/SOL/reports/snopt.pdfระบุถึงตัวแก้ปัญหา QP SQOPT ซึ่งเป็นเอกสารแยกต่างหากเช่นเดียวกับที่ใช้ในการแก้ปัญหาย่อย QP ใน SNOPT