Bạn đang xem biểu đồ dòng thuật toán cấp cao nhất. Một số bước riêng lẻ trong biểu đồ luồng có thể xứng đáng với biểu đồ luồng chi tiết của riêng chúng. Tuy nhiên, trong các bài báo được xuất bản nhấn mạnh vào sự ngắn gọn, nhiều chi tiết thường bị bỏ qua. Chi tiết cho các vấn đề tối ưu hóa bên trong tiêu chuẩn, được coi là "mũ cũ" có thể không được cung cấp ở tất cả.
Ý tưởng chung là các thuật toán tối ưu hóa có thể yêu cầu giải pháp cho một loạt các vấn đề tối ưu hóa nói chung dễ dàng hơn. Không có gì lạ khi có 3 hoặc thậm chí 4 cấp thuật toán tối ưu hóa trong thuật toán cấp cao nhất, mặc dù một số trong số chúng là nội bộ cho tối ưu hóa tiêu chuẩn.
Ngay cả việc quyết định khi nào chấm dứt một thuật toán (ở một trong các mức phân cấp) có thể yêu cầu giải quyết vấn đề tối ưu hóa bên. Ví dụ, một vấn đề bình phương tuyến tính tối thiểu không bị ràng buộc tiêu cực có thể được giải quyết để xác định hệ số nhân Lagrange được sử dụng để đánh giá điểm tối ưu KKT được sử dụng để quyết định khi nào cần khai báo độ tối ưu.
Nếu vấn đề tối ưu hóa là ngẫu nhiên hoặc động, có thể có các mức tối ưu hóa phân cấp bổ sung.
Đây là một ví dụ. Lập trình bậc hai tuần tự (SQP). Một vấn đề tối ưu hóa ban đầu được xử lý bằng cách lặp đi lặp lại các điều kiện tối ưu Karush - Kuhn - Tucker, bắt đầu từ điểm ban đầu với mục tiêu là xấp xỉ bậc hai của Lagrangian của vấn đề và tuyến tính hóa các ràng buộc. Chương trình bậc hai kết quả (QP) được giải quyết. QP đã được giải quyết có các ràng buộc vùng tin cậy hoặc tìm kiếm dòng được thực hiện từ lần lặp hiện tại đến giải pháp của QP, đây là một vấn đề tối ưu hóa, để tìm ra lần lặp tiếp theo. Nếu phương pháp Quasi-Newton đang được sử dụng, một vấn đề tối ưu hóa phải được giải quyết để xác định bản cập nhật Quasi-Newton cho Hessian của Lagrangian - thông thường đây là tối ưu hóa dạng đóng bằng các công thức dạng đóng như BFGS hoặc SR1, nhưng nó có thể là một tối ưu hóa số. Sau đó, QP mới được giải quyết, v.v ... Nếu QP không bao giờ khả thi, bao gồm cả để bắt đầu, một vấn đề tối ưu hóa được giải quyết để tìm ra điểm khả thi. Trong khi đó, có thể có một hoặc hai cấp độ của các vấn đề tối ưu hóa nội bộ được gọi bên trong bộ giải QP. Vào cuối mỗi lần lặp, một bài toán bình phương tuyến tính nhỏ nhất không âm có thể được giải để xác định điểm tối ưu. V.v.
Nếu đây là một vấn đề số nguyên hỗn hợp, thì toàn bộ shebang này có thể được thực hiện tại mỗi nút phân nhánh, như là một phần của thuật toán cấp cao hơn. Tương tự như vậy đối với trình tối ưu hóa toàn cầu - một vấn đề tối ưu hóa cục bộ được sử dụng để tạo giới hạn trên cho giải pháp tối ưu toàn cầu, sau đó nới lỏng một số ràng buộc được thực hiện để tạo ra vấn đề tối ưu hóa ràng buộc thấp hơn. Hàng ngàn hoặc thậm chí hàng triệu vấn đề tối ưu hóa "dễ dàng" từ chi nhánh và ràng buộc có thể được giải quyết để giải quyết một vấn đề tối ưu hóa số nguyên hoặc tối ưu hỗn hợp.
Điều này sẽ bắt đầu để cung cấp cho bạn một ý tưởng.
Chỉnh sửa : Trả lời câu hỏi về con gà và quả trứng được thêm vào câu hỏi sau câu trả lời của tôi: Nếu có vấn đề về con gà và quả trứng, thì đó không phải là một thuật toán thực tế được xác định rõ. Trong các ví dụ tôi đã đưa ra, không có thịt gà và trứng. Các bước thuật toán cấp cao hơn gọi các bộ giải tối ưu hóa, được xác định hoặc đã tồn tại. SQP lặp đi lặp lại gọi một bộ giải QP để giải các bài toán con, nhưng bộ giải QP giải một bài toán dễ hơn, QP, hơn bài toán ban đầu. Nếu có một thuật toán tối ưu hóa toàn cầu ở cấp độ cao hơn nữa, nó có thể gọi một bộ giải SQP để giải các bài toán con tối ưu hóa phi tuyến cục bộ, và lần lượt bộ giải SQP gọi một bộ giải QP để giải các bài toán con QP. Không có chiicken và trứng.
Lưu ý: Cơ hội tối ưu hóa là "ở mọi nơi". Các chuyên gia tối ưu hóa, chẳng hạn như những chuyên gia phát triển thuật toán tối ưu hóa, có nhiều khả năng nhìn thấy các cơ hội tối ưu hóa này và xem chúng như vậy, so với Joe hoặc Jane trung bình. Và có khuynh hướng thuật toán, khá tự nhiên họ thấy cơ hội xây dựng các thuật toán tối ưu hóa từ các thuật toán tối ưu hóa cấp thấp hơn. Xây dựng và giải pháp cho các vấn đề tối ưu hóa đóng vai trò là các khối xây dựng cho các thuật toán tối ưu hóa (mức cao hơn) khác.
Chỉnh sửa 2 : Đáp lại yêu cầu tiền thưởng vừa được OP thêm vào. Bài viết mô tả về trình tối ưu hóa phi tuyến SNP SNOPT https://web.stanford.edu/group/SOL/reports/snopt.pdf đề cập cụ thể đến bộ giải QOP SQOPT, được ghi lại riêng, như được sử dụng để giải các bài toán con QP trong SNOPT.