[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"_public_topic_publications_thu%E1%BA%ADt%20to%C3%A1n%20sqp{\"limit\":5}":3,"_public_topic_byId_thuật toán sqp":11},{"code":4,"data":5,"meta":10},"SUCCESS",{"latest":6,"mostCited":7,"vietnamFeatured":8,"vietnamLatest":9},[],[],[],[],null,{"code":4,"data":12,"meta":10},{"id":13,"title":14,"description":15,"content":16,"term":17,"englishTitle":18,"synonyms":19,"definition":23,"discipline":24,"references":25,"faqs":58,"createUser":71,"publishUser":75,"keywords":79,"keywordCount":90,"enrichTopicLink":91,"status":92,"createTime":93,"updateTime":94,"publishTime":95,"linkEnrichedTime":96,"publicationScanTime":10,"contentErrorMessage":10,"viewCount":97,"relateTopics":98},"thuật toán sqp","Thuật toán SQP là gì? Quy hoạch toàn phương tuần tự","Thuật toán SQP (quy hoạch toàn phương tuần tự) là phương pháp tối ưu hóa số lặp giải các bài toán phi tuyến có ràng buộc bằng chuỗi bài toán con QP.","\u003Cp>Thuật toán SQP (quy hoạch toàn phương tuần tự, tiếng Anh: Sequential Quadratic Programming) là một phương pháp tối ưu hóa số phi tuyến lặp, giải các bài toán tối ưu hóa có ràng buộc phi tuyến bằng cách giải liên tiếp một chuỗi các bài toán quy hoạch toàn phương xấp xỉ, sử dụng xấp xỉ bậc hai của hàm Lagrange và tuyến tính hóa các ràng buộc tại mỗi bước lặp. Trong lý thuyết tối ưu hóa toán học, SQP được đánh giá là một trong những phương pháp tiêu biểu đối với các bài toán phi tuyến trơn có kích thước từ nhỏ đến lớn, nhờ khả năng đạt được tốc độ hội tụ tiệm cận siêu tuyến tính.\u003C\u002Fp>\n\n\u003Ch2>Cơ sở lý thuyết và dẫn xuất bài toán con quy hoạch toàn phương\u003C\u002Fh2>\n\u003Cp>Xem xét bài toán quy hoạch phi tuyến tổng quát trong không gian hữu hạn chiều:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">\\min_{x \\in \\mathbb{R}^n} f(x) \\quad \\text{s.t.} \\quad c_i(x) = 0 \\quad (i \\in \\mathcal{E}), \\quad c_j(x) \\ge 0 \\quad (j \\in \\mathcal{I})\u003C\u002Fscript>\n\n\u003Cp>Trong đó \u003Cscript type=\"math\u002Ftex\">f: \\mathbb{R}^n \\rightarrow \\mathbb{R}\u003C\u002Fscript> là hàm mục tiêu, \u003Cscript type=\"math\u002Ftex\">c_i(x)\u003C\u002Fscript> là các hàm ràng buộc đẳng thức biểu diễn tập chỉ số \u003Cscript type=\"math\u002Ftex\">\\mathcal{E}\u003C\u002Fscript>, và \u003Cscript type=\"math\u002Ftex\">c_j(x)\u003C\u002Fscript> là các hàm ràng buộc bất đẳng thức biểu diễn tập chỉ số \u003Cscript type=\"math\u002Ftex\">\\mathcal{I}\u003C\u002Fscript>. Hàm Lagrange liên kết với bài toán được định nghĩa:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">\\mathcal{L}(x, \\lambda) = f(x) - \\sum_{i \\in \\mathcal{E} \\cup \\mathcal{I}} \\lambda_i c_i(x)\u003C\u002Fscript>\n\n\u003Cp>Ý tưởng nền tảng của SQP khởi nguồn từ việc áp dụng phương pháp Newton giải hệ điều kiện dừng Karush-Kuhn-Tucker (KKT) đối với bài toán có ràng buộc đẳng thức, sau đó mở rộng sang bài toán có ràng buộc bất đẳng thức. Tại mỗi bước lặp \u003Cscript type=\"math\u002Ftex\">x_k\u003C\u002Fscript>, thuật toán thiết lập một bài toán con quy hoạch toàn phương (QP subproblem) để tìm hướng dịch chuyển \u003Cscript type=\"math\u002Ftex\">d \\in \\mathbb{R}^n\u003C\u002Fscript>:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">\\min_{d \\in \\mathbb{R}^n} \\nabla f(x_k)^T d + \\frac{1}{2} d^T B_k d\u003C\u002Fscript>\n\n\u003Cp>thỏa mãn các ràng buộc tuyến tính hóa:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">c_i(x_k) + \\nabla c_i(x_k)^T d = 0 \\quad (i \\in \\mathcal{E})\u003C\u002Fscript>\n\u003Cscript type=\"math\u002Ftex; mode=display\">c_j(x_k) + \\nabla c_j(x_k)^T d \\ge 0 \\quad (j \\in \\mathcal{I})\u003C\u002Fscript>\n\n\u003Cp>Ở đây, \u003Cscript type=\"math\u002Ftex\">B_k\u003C\u002Fscript> là ma trận đối xứng xác định dương đóng vai trò xấp xỉ ma trận Hessian của hàm Lagrange theo biến \u003Cscript type=\"math\u002Ftex\">x\u003C\u002Fscript>, ký hiệu là \u003Cscript type=\"math\u002Ftex\">\\nabla_{xx}^2 \\mathcal{L}(x_k, \\lambda_k)\u003C\u002Fscript>. Nghiệm của bài toán con QP cung cấp hướng tìm kiếm \u003Cscript type=\"math\u002Ftex\">d_k\u003C\u002Fscript>, đồng thời các nhân tử Lagrange liên kết với các ràng buộc của bài toán con QP đóng vai trò là ước lượng trực tiếp cho vector nhân tử tối ưu \u003Cscript type=\"math\u002Ftex\">\\lambda_{k+1}\u003C\u002Fscript> của bài toán gốc.\u003C\u002Fp>\n\n\u003Ch2>Xấp xỉ Quasi-Newton và công thức cập nhật BFGS sửa đổi của Powell\u003C\u002Fh2>\n\u003Cp>Trong thực tế tính toán, việc tính toán chính xác ma trận đạo hàm riêng bậc hai \u003Cscript type=\"math\u002Ftex\">\\nabla_{xx}^2 \\mathcal{L}(x_k, \\lambda_k)\u003C\u002Fscript> đòi hỏi chi phí giải tích và thời gian xử lý lớn. Do đó, các thuật toán SQP thực hành thường áp dụng kỹ thuật Quasi-Newton để cập nhật ma trận xấp xỉ \u003Cscript type=\"math\u002Ftex\">B_k\u003C\u002Fscript> qua từng bước lặp mà chỉ cần dùng thông tin gradient bậc nhất.\u003C\u002Fp>\n\n\u003Cp>Tuy nhiên, do sự hiện diện của các ràng buộc phi tuyến, ma trận Hessian thực sự của hàm Lagrange có thể không xác định dương trên toàn bộ không gian ngay cả ở lân cận nghiệm tối ưu. Nếu áp dụng công thức BFGS tiêu chuẩn, điều kiện cong \u003Cscript type=\"math\u002Ftex\">s_k^T y_k > 0\u003C\u002Fscript> (với \u003Cscript type=\"math\u002Ftex\">s_k = x_{k+1} - x_k\u003C\u002Fscript> và \u003Cscript type=\"math\u002Ftex\">y_k = \\nabla_x \\mathcal{L}(x_{k+1}, \\lambda_{k+1}) - \\nabla_x \\mathcal{L}(x_k, \\lambda_{k+1})\u003C\u002Fscript>) có thể bị vi phạm, làm mất tính xác định dương của ma trận \u003Cscript type=\"math\u002Ftex\">B_{k+1}\u003C\u002Fscript>.\u003C\u002Fp>\n\n\u003Cp>Vào năm 1978, M. J. D. Powell đã đề xuất công thức cập nhật BFGS sửa đổi (damped BFGS update) nhằm khắc phục hiện tượng này. Powell (1978) định nghĩa một vector biến đổi \u003Cscript type=\"math\u002Ftex\">r_k\u003C\u002Fscript> là tổ hợp tuyến tính lồi giữa vector sai phân gradient \u003Cscript type=\"math\u002Ftex\">y_k\u003C\u002Fscript> và tích \u003Cscript type=\"math\u002Ftex\">B_k s_k\u003C\u002Fscript>:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">r_k = \\theta_k y_k + (1 - \\theta_k) B_k s_k\u003C\u002Fscript>\n\n\u003Cp>Trong đó hệ số suy giảm \u003Cscript type=\"math\u002Ftex\">\\theta_k \\in (0, 1]\u003C\u002Fscript> được xác định theo quy tắc ngưỡng:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">\\theta_k = \\begin{cases} 1 & \\text{nếu } s_k^T y_k \\ge 0.2 \\, s_k^T B_k s_k \\\\ \\frac{0.8 \\, s_k^T B_k s_k}{s_k^T B_k s_k - s_k^T y_k} & \\text{nếu } s_k^T y_k \u003C 0.2 \\, s_k^T B_k s_k \\end{cases}\u003C\u002Fscript>\n\n\u003Cp>Quy tắc này bảo đảm bất đẳng thức \u003Cscript type=\"math\u002Ftex\">s_k^T r_k \\ge 0.2 \\, s_k^T B_k s_k > 0\u003C\u002Fscript> luôn được duy trì một cách nghiêm ngặt. Ma trận xấp xỉ tại bước tiếp theo được cập nhật theo công thức:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">B_{k+1} = B_k - \\frac{B_k s_k s_k^T B_k}{s_k^T B_k s_k} + \\frac{r_k r_k^T}{s_k^T r_k}\u003C\u002Fscript>\n\n\u003Cp>Nhờ cấu trúc này, ma trận \u003Cscript type=\"math\u002Ftex\">B_{k+1}\u003C\u002Fscript> luôn duy trì tính đối xứng xác định dương, bảo đảm bài toán con quy hoạch toàn phương luôn lồi và có nghiệm duy nhất.\u003C\u002Fp>\n\n\u003Ch2>Chiến lược hội tụ toàn cục và hàm đánh giá\u003C\u002Fh2>\n\u003Cp>Để đảm bảo thuật toán có thể hội tụ về nghiệm tối ưu cục bộ từ một điểm xuất phát bất kỳ ở xa nghiệm, SQP cần kết hợp một cơ chế toàn cục hóa (globalization strategy), thường là tìm kiếm theo đường (line search) hoặc vùng tin cậy (trust region), dựa trên một hàm đánh giá (merit function).\u003C\u002Fp>\n\n\u003Cp>Nghiên cứu của S. P. Han vào năm 1977 đã thiết lập nền tảng lý thuyết cho việc toàn cục hóa thuật toán SQP bằng cách sử dụng hàm phạt chuẩn tắc L1 chính xác (exact L1 penalty function):\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">\\phi_1(x; \\mu) = f(x) + \\mu \\left( \\sum_{i \\in \\mathcal{E}} |c_i(x)| + \\sum_{j \\in \\mathcal{I}} \\max(0, -c_j(x)) \\right)\u003C\u002Fscript>\n\n\u003Cp>Han (1977) đã chứng minh rằng nếu tham số phạt \u003Cscript type=\"math\u002Ftex\">\\mu\u003C\u002Fscript> tại bước lặp \u003Cscript type=\"math\u002Ftex\">k\u003C\u002Fscript> được chọn đủ lớn, cụ thể là lớn hơn chuẩn cực đại của vector nhân tử Lagrange thu được từ nghiệm của bài toán con QP tại bước hiện tại (\u003Cscript type=\"math\u002Ftex\">\\mu_k > \\|\\lambda_{k+1}\\|_\\infty\u003C\u002Fscript>), thì nghiệm \u003Cscript type=\"math\u002Ftex\">d_k\u003C\u002Fscript> của bài toán con QP luôn là một hướng giảm ngặt của hàm đánh giá \u003Cscript type=\"math\u002Ftex\">\\phi_1(x; \\mu)\u003C\u002Fscript>. Thuật toán sau đó tìm độ dài bước lặp \u003Cscript type=\"math\u002Ftex\">\\alpha_k \\in (0, 1]\u003C\u002Fscript> thỏa mãn điều kiện giảm đủ Armijo để cập nhật điểm mới \u003Cscript type=\"math\u002Ftex\">x_{k+1} = x_k + \\alpha_k d_k\u003C\u002Fscript>.\u003C\u002Fp>\n\n\u003Ch2>Hiệu ứng Maratos và bước hiệu chỉnh bậc hai\u003C\u002Fh2>\n\u003Cp>Một thách thức lý thuyết quan trọng phát sinh khi kết hợp SQP với hàm đánh giá là hiệu ứng Maratos. Hiện tượng này xảy ra khi một bước lặp đầy đủ \u003Cscript type=\"math\u002Ftex\">d_k\u003C\u002Fscript> (với \u003Cscript type=\"math\u002Ftex\">\\alpha_k = 1\u003C\u002Fscript>) mang lại bước tiến tốt về phía nghiệm tối ưu nhưng lại làm tăng nhẹ mức độ vi phạm ràng buộc phi tuyến tỷ lệ với bình phương độ dài bước lặp do độ cong của mặt ràng buộc. Kết quả là hàm đánh giá từ chối bước lặp đơn vị, buộc thuật toán phải thu nhỏ độ dài bước lặp và làm suy giảm {{topic|%7B%22topic%22%3A%22t%E1%BB%91c%20%C4%91%E1%BB%99%20h%E1%BB%99i%20t%E1%BB%A5%22%7D}} tiệm cận siêu tuyến tính.\u003C\u002Fp>\n\n\u003Cp>Trong khảo sát hệ thống vào năm 1995, Boggs và Tolle đã phân tích sâu sắc bản chất giải tích của hiệu ứng Maratos và các phương pháp xử lý chuẩn mực. Giải pháp tiêu biểu nhất là kỹ thuật hiệu chỉnh bậc hai (Second-Order Correction - SOC). Sau khi tính được hướng chính \u003Cscript type=\"math\u002Ftex\">d_k\u003C\u002Fscript>, thuật toán giải thêm một bài toán con bổ sung để tìm vector hiệu chỉnh \u003Cscript type=\"math\u002Ftex\">\\hat{d}_k\u003C\u002Fscript>:\u003C\u002Fp>\n\n\u003Cscript type=\"math\u002Ftex; mode=display\">c_i(x_k + d_k) + \\nabla c_i(x_k)^T \\hat{d} = 0 \\quad (i \\in \\mathcal{E})\u003C\u002Fscript>\n\n\u003Cp>Bước hiệu chỉnh \u003Cscript type=\"math\u002Ftex\">\\hat{d}_k\u003C\u002Fscript> uốn cong quỹ đạo tìm kiếm quay trở lại bề mặt khả thi phi tuyến, giúp hàm đánh giá chấp nhận bước lặp kép \u003Cscript type=\"math\u002Ftex\">d_k + \\hat{d}_k\u003C\u002Fscript> với độ dài bước lặp bằng đơn vị, bảo toàn tốc độ hội tụ nhanh của thuật toán.\u003C\u002Fp>\n\n\u003Ch2>Đặc tính hội tụ và phân tích tiệm cận\u003C\u002Fh2>\n\u003Cp>Tốc độ hội tụ của thuật toán SQP phụ thuộc vào độ chính xác của xấp xỉ ma trận Hessian:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Thuật toán Newton SQP:\u003C\u002Fstrong> Khi ma trận Hessian thực sự của hàm Lagrange \u003Cscript type=\"math\u002Ftex\">\\nabla_{xx}^2 \\mathcal{L}(x_k, \\lambda_k)\u003C\u002Fscript> được tính toán chính xác tại mỗi bước lặp, thuật toán đạt tốc độ hội tụ bậc hai cục bộ ở lân cận nghiệm KKT thỏa mãn điều kiện đủ bậc hai (Boggs và Tolle, 1995).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Thuật toán Quasi-Newton SQP:\u003C\u002Fstrong> Khi sử dụng ma trận xấp xỉ \u003Cscript type=\"math\u002Ftex\">B_k\u003C\u002Fscript> cập nhật bằng công thức damped BFGS của Powell (1978), thuật toán đạt tốc độ hội tụ siêu tuyến tính cục bộ nếu thỏa mãn điều kiện Dennis-Moré mở rộng trên không gian con không gian rỗng của ma trận Jacobian các ràng buộc tích cực. Đáng chú ý, lý thuyết giải tích số chỉ ra rằng ma trận \u003Cscript type=\"math\u002Ftex\">B_k\u003C\u002Fscript> không cần hội tụ về ma trận Hessian thực sự trên toàn không gian để đảm bảo tốc độ hội tụ siêu tuyến tính này.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Ch2>Tối ưu hóa quy mô lớn và phần mềm SNOPT\u003C\u002Fh2>\n\u003Cp>Khi áp dụng SQP cho các bài toán công nghiệp quy mô lớn, việc lưu trữ và phân rã các ma trận dày đặc trở nên không khả thi. Vào năm 2002, Philip E. Gill, Walter Murray và Michael A. Saunders đã công bố gói phần mềm SNOPT trên tạp chí SIAM Journal on Optimization, đánh dấu một bước tiến quan trọng trong việc triển khai SQP cho các {{topic|%7B%22topic%22%3A%22b%C3%A0i%20to%C3%A1n%20t%E1%BB%91i%20%C6%B0u%22%7D}} hóa ràng buộc phi tuyến quy mô lớn.\u003C\u002Fp>\n\n\u003Cp>SNOPT kết hợp cấu trúc ma trận thưa, phương pháp không gian rỗng (null-space method), và kỹ thuật xấp xỉ Quasi-Newton bộ nhớ hữu hạn đối với ma trận Hessian rút gọn của hàm Lagrange. Bên cạnh đó, SNOPT sử dụng hàm đánh giá Lagrange mở rộng trơn (smooth augmented Lagrangian merit function), giúp nâng cao tính ổn định số học khi xử lý các ràng buộc bất khả thi cục bộ thông qua cơ chế quy hoạch đàn hồi (elastic programming).\u003C\u002Fp>\n\n\u003Ch2>So sánh SQP với các phương pháp quy hoạch phi tuyến khác\u003C\u002Fh2>\n\u003Cp>Bảng dưới đây tổng hợp các đặc tính so sánh giữa thuật toán SQP, {{topic|%7B%22topic%22%3A%22ph%C6%B0%C6%A1ng%20ph%C3%A1p%20%C4%91i%E1%BB%83m%20trong%22%7D}} (Interior-Point), và phương pháp Lagrange mở rộng (Augmented Lagrangian):\u003C\u002Fp>\n\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Tiêu chí so sánh\u003C\u002Fth>\n\u003Cth>Thuật toán SQP\u003C\u002Fth>\n\u003Cth>Phương pháp điểm trong (Interior-Point)\u003C\u002Fth>\n\u003Cth>Phương pháp Lagrange mở rộng\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>Cơ chế xử lý ràng buộc\u003C\u002Ftd>\n\u003Ctd>Tuyến tính hóa ràng buộc tại mỗi bước, giải bài toán con QP\u003C\u002Ftd>\n\u003Ctd>Chuyển ràng buộc bất đẳng thức thành hàm phạt rào cản logarit\u003C\u002Ftd>\n\u003Ctd>Đưa ràng buộc vào hàm mục tiêu kèm số hạng phạt bậc hai\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Khả năng khởi động ấm (Warm-start)\u003C\u002Ftd>\n\u003Ctd>Rất thuận lợi do duy trì tập tích cực giữa các lần giải kế tiếp\u003C\u002Ftd>\n\u003Ctd>Khó khởi động ấm vì điểm bắt đầu phải nằm sâu trong miền khả thi\u003C\u002Ftd>\n\u003Ctd>Trung bình, phụ thuộc vào ước lượng nhân tử Lagrange ban đầu\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Số lần gọi hàm mục tiêu và gradient\u003C\u002Ftd>\n\u003Ctd>Ít, phù hợp khi việc đánh giá hàm tốn kém chi phí tính toán\u003C\u002Ftd>\n\u003Ctd>Trung bình, cần nhiều bước lặp rào cản khi tiến gần biên\u003C\u002Ftd>\n\u003Ctd>Nhiều, do cần giải tối ưu hóa không ràng buộc ở vòng lặp trong\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Khả năng mở rộng quy mô biến số\u003C\u002Ftd>\n\u003Ctd>Phù hợp từ quy mô vừa đến lớn (với triển khai ma trận thưa SNOPT)\u003C\u002Ftd>\n\u003Ctd>Rất mạnh cho các bài toán cực lớn nhờ cấu trúc hệ phương trình đối xứng\u003C\u002Ftd>\n\u003Ctd>Tốt cho các bài toán có cấu trúc tách biến đặc thù\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Tốc độ hội tụ tiệm cận\u003C\u002Ftd>\n\u003Ctd>Siêu tuyến tính (Quasi-Newton) hoặc bậc hai (Newton SQP)\u003C\u002Ftd>\n\u003Ctd>Siêu tuyến tính hoặc bậc hai cục bộ\u003C\u002Ftd>\n\u003Ctd>Tuyến tính hoặc siêu tuyến tính bậc thấp\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\n\u003Ch2>Ứng dụng nghiên cứu và triển khai thực tiễn\u003C\u002Fh2>\n\u003Cp>Thuật toán SQP được ứng dụng rộng rãi trong nhiều nhánh kỹ thuật tính toán và khoa học ứng dụng hiện đại:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Điều khiển dự báo {{topic|%7B%22topic%22%3A%22m%C3%B4%20h%C3%ACnh%20phi%20tuy%E1%BA%BFn%22%7D}} (Nonlinear Model Predictive Control - NMPC):\u003C\u002Fstrong> Nhờ khả năng khởi động ấm hiệu quả giữa các chu kỳ lấy mẫu liên tiếp, SQP là thuật toán trung tâm trong các bộ điều khiển tự động hóa cho hệ thống robot chuyển động, xe tự hành, và các quá trình công nghệ hóa chất.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Tối ưu hóa quỹ đạo hàng không vũ trụ:\u003C\u002Fstrong> SQP được sử dụng để tính toán quỹ đạo phóng tên lửa, hạ cánh tàu vũ trụ, và đường bay tối ưu tiêu hao nhiên liệu tối thiểu của máy bay dân dụng.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bài toán {{topic|%7B%22topic%22%3A%22tr%C3%A0o%20l%C6%B0u%20c%C3%B4ng%20su%E1%BA%A5t%22%7D}} tối ưu (Optimal Power Flow - OPF):\u003C\u002Fstrong> Trong kỹ thuật hệ thống điện, SQP được nghiên cứu để giải quyết bài toán vận hành kinh tế và phân bố trào lưu công suất trong lưới điện truyền tải có xét đến các giới hạn điện áp và công suất máy phát.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Nghiên cứu ứng dụng tại Việt Nam:\u003C\u002Fstrong> Các nhà khoa học và kỹ sư tại các trường đại học kỹ thuật và viện nghiên cứu chuyên ngành ở Việt Nam đã ứng dụng thuật toán SQP vào việc mô phỏng quá trình truyền nhiệt, {{topic|%7B%22topic%22%3A%22t%E1%BB%91i%20%C6%B0u%20h%C3%B3a%20k%E1%BA%BFt%20c%E1%BA%A5u%22%7D}} công trình xây dựng, và phát triển các thuật toán {{topic|%7B%22topic%22%3A%22%C4%91i%E1%BB%81u%20khi%E1%BB%83n%20phi%20tuy%E1%BA%BFn%22%7D}} cho các hệ thống {{topic|%7B%22topic%22%3A%22n%C4%83ng%20l%C6%B0%E1%BB%A3ng%20t%C3%A1i%20t%E1%BA%A1o%22%7D}}.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Ch2>Đánh giá ưu điểm và hạn chế kỹ thuật\u003C\u002Fh2>\n\u003Cp>Việc lựa chọn thuật toán SQP cho các bài toán kỹ thuật cần cân nhắc các đặc điểm kỹ thuật sau:\u003C\u002Fp>\n\n\u003Ch3>Ưu điểm\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Hiệu quả tính toán số lần gọi hàm: SQP đòi hỏi tương đối ít số lần đánh giá hàm mục tiêu và gradient để đạt được độ chính xác cao, đặc biệt có lợi thế khi hàm mục tiêu liên quan đến việc chạy các {{topic|%7B%22topic%22%3A%22m%C3%B4%20h%C3%ACnh%20m%C3%B4%20ph%E1%BB%8Fng%22%7D}} vật lý kéo dài.\u003C\u002Fli>\n\u003Cli>Độ chính xác nghiệm: Nghiệm thu được thỏa mãn điều kiện KKT với dung sai số học nhỏ nhờ việc kết hợp thông tin độ cong bậc hai.\u003C\u002Fli>\n\u003Cli>Xử lý linh hoạt cả ràng buộc đẳng thức và bất đẳng thức thông qua cơ chế nhận diện tập ràng buộc tích cực của bài toán con QP.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Ch3>Hạn chế\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Chi phí giải bài toán con QP: Ở các bài toán có ma trận dày đặc kích thước rất lớn, việc giải bài toán con QP tại mỗi bước lặp đòi hỏi khối lượng tính toán {{topic|%7B%22topic%22%3A%22%C4%91%E1%BA%A1i%20s%E1%BB%91%20tuy%E1%BA%BFn%20t%C3%ADnh%22%7D}} đáng kể.\u003C\u002Fli>\n\u003Cli>Khả năng không khả thi của bài toán con: Do việc tuyến tính hóa các ràng buộc phi tuyến, bài toán con QP tại một số bước lặp có thể rơi vào tình trạng vô nghiệm, đòi hỏi thuật toán phải tích hợp các cơ chế đàn hồi hoặc kỹ thuật biến phụ linh hoạt để khôi phục tính khả thi.\u003C\u002Fli>\n\u003C\u002Ful>\n","Thuật toán SQP","sequential quadratic programming",[20,21,18,22],"quy hoạch toàn phương tuần tự","thuật toán quy hoạch toàn phương liên tiếp","SQP","Thuật toán SQP (quy hoạch toàn phương tuần tự) là một phương pháp tối ưu hóa số phi tuyến lặp, giải các bài toán tối ưu hóa có ràng buộc phi tuyến bằng cách giải liên tiếp một chuỗi các bài toán quy hoạch toàn phương xấp xỉ, sử dụng xấp xỉ bậc hai của hàm Lagrange và tuyến tính hóa các ràng buộc tại mỗi bước lặp.","ENGINEERING_TECHNOLOGY",[26,34,42,50],{"citationText":27,"title":28,"authors":29,"source":30,"year":31,"doi":32,"url":33},"Boggs, P. T., & Tolle, J. W. (1995). Sequential Quadratic Programming. Acta Numerica, 4, 1-51.","Sequential Quadratic Programming","Boggs, P. T., Tolle, J. W.","Acta Numerica",1995,"10.1017\u002Fs0962492900002518","https:\u002F\u002Fdoi.org\u002F10.1017\u002Fs0962492900002518",{"citationText":35,"title":36,"authors":37,"source":38,"year":39,"doi":40,"url":41},"Powell, M. J. D. (1978). A fast algorithm for nonlinearly constrained optimization calculations. Numerical Analysis, Lecture Notes in Mathematics, vol 630, 144-157.","A fast algorithm for nonlinearly constrained optimization calculations","Powell, M. J. D.","Numerical Analysis, Lecture Notes in Mathematics",1978,"10.1007\u002Fbfb0067703","https:\u002F\u002Fdoi.org\u002F10.1007\u002Fbfb0067703",{"citationText":43,"title":44,"authors":45,"source":46,"year":47,"doi":48,"url":49},"Han, S. P. (1977). A globally convergent method for nonlinear programming. Journal of Optimization Theory and Applications, 22(3), 297-309.","A globally convergent method for nonlinear programming","Han, S. P.","Journal of Optimization Theory and Applications",1977,"10.1007\u002Fbf00932858","https:\u002F\u002Fdoi.org\u002F10.1007\u002Fbf00932858",{"citationText":51,"title":52,"authors":53,"source":54,"year":55,"doi":56,"url":57},"Gill, P. E., Murray, W., & Saunders, M. A. (2002). SNOPT: An SQP Algorithm for Large-Scale Constrained Optimization. SIAM Journal on Optimization, 12(4), 979-1006.","SNOPT: An SQP Algorithm for Large-Scale Constrained Optimization","Gill, P. E., Murray, W., Saunders, M. A.","SIAM Journal on Optimization",2002,"10.1137\u002Fs1052623499350013","https:\u002F\u002Fdoi.org\u002F10.1137\u002Fs1052623499350013",[59,62,65,68],{"question":60,"answer":61},"Ý tưởng cốt lõi của thuật toán quy hoạch toàn phương tuần tự (SQP) là gì?","SQP giải bài toán tối ưu hóa phi tuyến có ràng buộc bằng cách giải lặp một chuỗi các bài toán con quy hoạch toàn phương (QP), trong đó hàm mục tiêu của bài toán con là xấp xỉ bậc hai của hàm Lagrange và các ràng buộc phi tuyến được tuyến tính hóa tại điểm lặp hiện tại.",{"question":63,"answer":64},"Hiệu ứng Maratos là gì và vì sao cần bước hiệu chỉnh bậc hai (SOC)?","Hiệu ứng Maratos xảy ra khi một bước lặp đơn vị đầy đủ có xu hướng tiến gần nghiệm nhưng bị hàm đánh giá từ chối do vi phạm ràng buộc phi tuyến tăng nhẹ tỷ lệ với độ cong. Bước hiệu chỉnh bậc hai (SOC) tính thêm một vector phụ để uốn cong quỹ đạo về mặt khả thi, giúp bước lặp được chấp nhận và bảo toàn tốc độ hội tụ nhanh.",{"question":66,"answer":67},"Khi nào nên ưu tiên dùng SQP thay vì phương pháp điểm trong (Interior-Point)?","SQP đặc biệt phù hợp cho các bài toán yêu cầu khởi động ấm thường xuyên như trong điều khiển dự báo mô hình (NMPC), hoặc khi chi phí đánh giá hàm mục tiêu và gradient rất tốn kém, vì SQP thường chỉ đòi hỏi tương đối ít số lần gọi hàm để đạt nghiệm chính xác.",{"question":69,"answer":70},"Làm thế nào để ma trận xấp xỉ Hessian luôn xác định dương trong SQP?","Thuật toán thường áp dụng công thức cập nhật damped BFGS của Powell (1978). Khi điều kiện cong bị vi phạm do độ cong của ràng buộc, hệ số suy giảm sẽ biến đổi vector gradient sai phân thành tổ hợp lồi với ma trận hiện tại, bảo đảm tích vô hướng luôn dương và duy trì tính xác định dương của ma trận xấp xỉ.",{"id":72,"researcherId":10,"name":73,"imageUrl":74},2681,"Cuong Ta","https:\u002F\u002Flh3.googleusercontent.com\u002Fa\u002FACg8ocKFuWh0ZD601Hp0_V_2xAK3kIOs20Kyv3V5ZLBo6fwfjyymJYzE=s96-c",{"id":76,"researcherId":10,"name":77,"imageUrl":78},1,"Nguyễn Ngọc Sơn","https:\u002F\u002Flh3.googleusercontent.com\u002Fa\u002FACg8ocLGfGsF1nYQqYK5BasTLhNu1dBrBXg2fcEgBNPXJ0p2gqLQnO7i=s96-c",[80,81,82,83,84,85,86,87,88,89],"tốc độ hội tụ","bài toán tối ưu","phương pháp điểm trong","mô hình phi tuyến","trào lưu công suất","tối ưu hóa kết cấu","điều khiển phi tuyến","năng lượng tái tạo","mô hình mô phỏng","đại số tuyến tính",10,true,"PUBLISHED","2025-12-01T09:43:10.563+00:00","2026-09-07T11:06:46.549+00:00","2026-09-07T10:43:04.552+00:00","2026-09-07T11:06:46.152+00:00",0,[99,102,105,108,111,114,117,120,123,126],{"id":100,"title":101,"term":100,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"điều khiển trượt","Điều khiển trượt là gì? Các nghiên cứu khoa học về Điều khiển trượt",{"id":103,"title":104,"term":103,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"tối ưu hoá","Tối ưu hoá là gì? Các nghiên cứu khoa học về Tối ưu hoá",{"id":106,"title":107,"term":106,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"bộ lọc kalman","Bộ lọc kalman là gì? Các nghiên cứu khoa học về Bộ lọc kalman",{"id":109,"title":110,"term":109,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"năng suất lúa","Năng suất lúa là gì? Các công bố khoa học về Năng suất lúa",{"id":112,"title":113,"term":112,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"hiệu suất nhiệt","Hiệu suất nhiệt là gì? Các nghiên cứu khoa học liên quan",{"id":115,"title":116,"term":115,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"optimization","Optimization là gì? Các nghiên cứu khoa học về Optimization",{"id":118,"title":119,"term":118,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"mật độ trồng","Mật độ trồng là gì? Các nghiên cứu khoa học về Mật độ trồng",{"id":121,"title":122,"term":121,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"thuật toán xấp xỉ","Thuật toán xấp xỉ là gì? Các bài nghiên cứu khoa học",{"id":124,"title":125,"term":124,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"stochastic","Stochastic là gì? Các nghiên cứu khoa học về Stochastic",{"id":127,"title":128,"term":127,"englishTitle":10,"definition":10,"discipline":10,"disciplineCode":10,"disciplineLabel":10,"disciplineColor":10,"disciplineIcon":10},"trung đông","Trung đông là gì? Các nghiên cứu khoa học về Trung đông"]