Các phương pháp số cho điều khiển tối ưu Điều khiển tối ưu

Các bài toán điều khiển tối ưu thường là phi tuyến và do đó, thường không có giải thuật nghiên cứu và phân tích ( ví dụ như bài toán điều khiển tối ưu tuyến tính bậc hai ). Kết quả là, cần phải vận dụng những giải pháp số để giải những bài toán điều khiển tối ưu. Trong những năm đầu của điều khiển tối ưu ( khoảng chừng những năm 1950 tới 1980 ) hướng tiếp cận ưa thích so với những bài toán điều khiển tối ưu là những chiêu thức gián tiếp. Trong một giải pháp gián tiếp, phép tính biến phân được sử dụng để có được những điều kiện kèm theo tối ưu bậc nhất. Những điều kiện kèm theo này đạt được trong một bài toán giá trị-biên hai điểm ( hoặc, trong trường hợp của một bài toán phức, đa điểm ). Bài toán giá trị-biên này thực sự có một cấu trúc đặc biệt quan trọng do tại nó phát sinh từ việc lấy đạo hàm của một hàm Hamilton. Vì vậy, tác dụng là mạng lưới hệ thống động học là một mạng lưới hệ thống Hamilton có dạng x ˙ = ∂ H / ∂ λ λ ˙ = − ∂ H / ∂ x {\displaystyle {\begin{array}{lcl}{\dot {\textbf {x}}}&=&\partial H/\partial {\boldsymbol {\lambda }}\\{\dot {\boldsymbol {\lambda }}}&=&-\partial H/\partial {\textbf {x}}\end{array}}} x ˙ = ∂ H / ∂ λ λ ˙ = − ∂ H / ∂ x { \ displaystyle { \ begin { array } { lcl } { \ dot { \ textbf { x } } } và = và \ partial H / \ partial { \ boldsymbol { \ lambda } } \ \ { \ dot { \ boldsymbol { \ lambda } } } và = và – \ partial H / \ partial { \ textbf { x } } \ end { array } } }Trong đó H = L + λ T a − μ T b {\displaystyle H={\mathcal {L}}+{\boldsymbol {\lambda }}^{\text{T}}{\textbf {a}}-{\boldsymbol {\mu }}^{\text{T}}{\textbf {b}}}

H = L + λ T a − μ T b {\displaystyle H={\mathcal {L}}+{\boldsymbol {\lambda }}^{\text{T}}{\textbf {a}}-{\boldsymbol {\mu }}^{\text{T}}{\textbf {b}}}

là Hamilton tăng cường và trong một giải pháp gián tiếp, bài toán giá trị-biên sẽ được giải ( sử dụng biên thích hợp hoặc những điều kiện kèm theo gác ngang ). Vẻ đẹp của việc sử dụng một chiêu thức gián tiếp là trạng thái và phối hợp ( đơn cử, λ { \ displaystyle { \ boldsymbol { \ lambda } } } ) sẽ được giải và giải thuật sau cuối sẽ được kiểm tra để trở thành quỹ đạo cực trị. Nhược điểm của những giải pháp gián tiếp là bài toán giá trị-biên thường rất khó để giải ( đặc biệt quan trọng so với những bài toán lan rộng ra trong khoảng chừng thời gian lớn hoặc những bài toán với những số lượng giới hạn điểm bên trong ). Một chương trình ứng dụng nổi tiếng triển khai những giải pháp gián tiếp đó là BNDSCO. [ 4 ]

Cách tiếp cận này đã làm tăng sự nổi bật trong điều khiển tối ưu phương pháp số hơn hai thập kỷ qua (tức là, từ những năm 1980 đến nay) của cái gọi là các phương pháp trực tiếp. Trong một phương pháp trực tiếp, trạng thái và/hoặc điều khiển được xấp xỉ bằng cách sử dụng một xấp xỉ hàm thích hợp (ví dụ, xấp xỉ đa thức hoặc thông số hóa hằng số từng mảnh). Đồng thời, chi phí chức năng được xấp xỉ như là một hàm chi phí. Sau đó, các hệ số của các xấp xỉ hàm được xử lý như các biến tối ưu hóa và bài toán này được “sao chép lại” cho một bài toán tối ưu hóa phi tuyến có dạng:

Cực tiểu hóa F ( z ) {\displaystyle F({\textbf {z}})\,}

F ( z ) {\displaystyle F({\textbf {z}})\,}

tùy theo những ràng buộc đại số g ( z ) = 0 h ( z ) ≤ 0 {\displaystyle {\begin{array}{lcl}{\textbf {g}}({\textbf {z}})&=&{\textbf {0}}\\{\textbf {h}}({\textbf {z}})&\leq &{\textbf {0}}\end{array}}} g ( z ) = 0 h ( z ) ≤ 0 { \ displaystyle { \ begin { array } { lcl } { \ textbf { g } } ( { \ textbf { z } } ) và = và { \ textbf { 0 } } \ \ { \ textbf { h } } ( { \ textbf { z } } ) và \ leq và { \ textbf { 0 } } \ end { array } } }Tùy thuộc vào loại chiêu thức trực tiếp nào được áp. vận dụng, kích cỡ của bài toán tối ưu hóa phi tuyến hoàn toàn có thể khá nhỏ ( ví dụ, trong giải pháp xê dịch tuyến tính hóa hoặc direct shooting ), trung bình ( ví dụ điều khiển tối ưu pseudospectral [ 5 ] ) hoặc có hoàn toàn có thể khá lớn ( Ví dụ, giải pháp sắp xếp trực tiếp [ 6 ] ). Trong trường hợp ở đầu cuối ( ví dụ, là một giải pháp sắp xếp ), bài toán tối ưu hóa phi tuyến có nghĩa là hàng ngàn đến hàng chục ngàn biến và hạn chế. Do kích cỡ của nhiều NLP phát sinh từ một chiêu thức trực tiếp, có vẻ như phần nào khác thường để giải bài toán tối ưu hóa phi tuyến là dễ hơn so với giải bài toán giá trị-biên. Tuy nhiên, trong thực tiễn NLP dễ giải hơn bài toán giá trị-biên. Để giảm bớt đo lường và thống kê, đặc biệt quan trọng là giải pháp sắp xếp trực tiếp, NLP là rất ít và rất nhiều những chương trình ứng dụng nổi tiếng sống sót ( ví dụ, SNOPT [ 7 ] ) để giải những bài toán NLP lớn. Kết quả là khoanh vùng phạm vi của những bài toán hoàn toàn có thể được xử lý trải qua những giải pháp trực tiếp ( đặc biệt quan trọng là những chiêu thức sắp xếp trực tiếp là rất thông dụng lúc bấy giờ ) là lớn hơn đáng kể so với khoanh vùng phạm vi của những bài toán hoàn toàn có thể được giải bằng những chiêu thức gián tiếp. Trong thực tiễn, những giải pháp trực tiếp đã trở nên quá phổ cập lúc bấy giờ đến nỗi nhiều người đã viết những chương trình ứng dụng phức tạp sử dụng những giải pháp này. Đặc biệt, rất nhiều những chương trình như vậy gồm có DIRCOL, [ 8 ] SOCS, [ 9 ] OTIS, [ 10 ] GESOP / ASTOS, [ 11 ] DITAN. [ 12 ] và PyGMO / PyKEP. [ 13 ] Những năm gần đây, do sự sinh ra của ngôn từ lập trình MATLAB, ứng dụng điều khiển tối ưu trong MATLAB đã trở nên thông dụng hơn. Ví dụ về tăng trưởng hàn lâm những công cụ cho ứng dụng MATLAB đang tiến hành triển khai những giải pháp trực tiếp gồm có RIOTS, [ 14 ] DIDO, [ 15 ] DIRECT, [ 16 ] và GPOPS Lưu trữ 2011 – 07-24 tại Wayback Machine, [ 17 ] một ví dụ công cụ công nghiệp được tăng trưởng cho MATLAB là PROPT. [ 18 ] Những công cụ ứng dụng này đã tăng đáng kể thời cơ cho mọi người tò mò những bài toán điều khiển tối ưu phức tạp cả cho nghiên cứu và điều tra hàn lâm và cả công nghiệp. Cuối cùng, cần ghi nhận rằng những môi trường tự nhiên tối ưu hóa MATLAB đa năng như TOMLAB đã thực thi mã hóa bài toán điều khiển tối ưu phức tạp thuận tiện hơn đáng kể so với những ngôn từ như C, FORTRAN trước đây .

Alternate Text Gọi ngay