Kiến thức chuyên ngành luôn yêu cầu bạn phải cập nhật và trau dồi từng ngày.Để có nền tảng kiến thức vững chắc trước các kì thi…bạn không thể thiếu các tài liệu tham khảo hay được chia sẻ trên mạng Internet.Share to be share more
Trang 132
THUẬT TOÁN CHUYỂN BÀI TOÁN QUI HOẠCH PHI TUYẾN
VỀ QUI HOẠCH TUYẾN TÍNH
Nguyễn Hữu Công (Trường ĐH Kỹ thuật Công nghiệp - ĐH Thái Nguyên)
1 Đặt vấn đề
Trong lý thuyết điều khiển tự động, khi giải bài toán tối ưu hoặc tìm thông số tối ưu cho
bộ điều chỉnh, ta thường sử dụng chỉ tiêu tích phân bình phương sai lệch Nếu ta áp dụng
phương pháp số để tìm nghiệm tối ưu, thường dẫn tới việc giải bài toán qui hoạch phi tuyến sau:
Tìm min của ( )
2
*
i i ij j
∑ ∑ (1) Với ràng buộc A1≤ wj≤ A2 (j = 0,1, ,m) (2)
Trong đó wj là Nn cần tìm, qi*, aij, ci là các hằng số dương đã biết
Như vậy, bài toán được đặt ra là hãy tìm cực tiểu hàm (1) phụ thuộc vào m+1 biến wj
tuân theo ràng buộc (2)
Rõ ràng (1) là bài toán qui hoạch phi tuyến của các biến wj và các ràng buộc (2) là tuyến
tính Với bài toán này có thể tìm nghiệm đúng bằng phương pháp số sau một số hữu hạn phép
lặp[2], [3]
Mặc dù nghiệm của bài toán qui hoạch bậc hai có thể thu được sau một số hữu hạn phép
lặp nhưng thuật toán của nó phức tạp hơn và thời gian tính toán lâu hơn so với thuật toán của
phương pháp đơn hình cho bài toán quy hoạch tuyến tính
2 Nội dung của thuật toán
Thay vì việc sử dụng chỉ tiêu tích phân bình phương sai lệch, ta đặt chỉ tiêu là tích phân
trị tuyệt đối của sai lệch Như vậy, thay vì tìm min của (1) với ràng buộc (2), ta tìm min của bài
toán tương đương sau: ( ) *
i i ij j
Để giải bài toán tìm min (3) với các ràng buộc (2), ta có thể đưa về bài toán quy hoạch
tuyến tính bằng cách dùng các kỹ thuật như sau[1]:
Ta đưa ra 2(n+1) biến phụ không âm là y và i z (i = 0,1, n) Ta sẽ chứng minh rằng i
min của (3) với ràng buộc (2) tương đương với min của
n
i
i y z c
L=∑ +
= 0
với ràng buộc:
*
0 0,1, ,
0, 0
m
ij j i i i
j
a w q y z
=
=
∑
(5)
Trang 2và A1≤w j ≤ A2với j = 0, 1, 2,…, m
Khi đó với bất kỳ [wj, yi, zi] nào là phương án tối ưu của bài toán (4), (5) thì zi , yi phải thoả mãn điều kiện:
0
i
0
m
ij j i j
a w q
=
−
0
i
0
m
ij j i j
a w q
=
−
Với cách đặt biến phụ như vậy, ta sẽ có:
Ta có thể chứng minh các kết luận trên như sau
Bổ đề 1: Giả sử (w z y là một phương án tối ưu của bài toán (4), (5) khi đó ta phải có: , , )
a, y z i i =0 với ∀i = 0, 1, , n (tức là 1 trong 2 biến y i hoặc z i phải = 0)
b, L ( w ) = L'( w , z , y )
Chứng minh:
a, Giả sử trái lại zi yi ≠ 0 Do y i ≥0 và z i ≥0 nên lúc đó ta phải có zi > 0, yi > 0
Ta đặt :
h = min { zi, yi }; ta thấy h > 0 (7)
lại đặt : y'i = yi − h
và z'i= zi − h
Rõ ràng: z'i≥ 0 ; y'i ≥ 0 và với mỗi i thì hoặc yi’ = 0 hoặc zi’ = 0 nghĩa là y z'i 'i =0 với mọi i
Mặt khác ta thấy: y'i− z'i = yi − zi Vì thế wj, y'i, z'i vẫn thoả mãn điều kiện (5) nghĩa là [wj, y'i, z'i] cũng là phương án của bài toán (4),(5)
Song ( ' ') ( ' ')
0 ' , ,
n
j i i i i i
i
=
= n
i
i i i
i y z c h c
0
) 2
ở đây chú ý : h>0 , ci > 0 với ∀ i=0,1….n
n
L w z y <∑c y +z =L w y z (9)
Trang 334
Điều này trái với giả thiết ( wj, zi, yi) là phương án tối ưu của (4), (5)
Tóm lại ta phải có yi zi = 0 với ∀i = 0,1 , n
b, Do (w , y , z) là phương án tối ưu của bài toán (4), (5) nên phải thoả mãn ràng buộc (5) Theo chứng minh ở phần a, với mỗi i = 0,1,2,…n thì hoặc
0
i
y = hoặc z i =0
- Nếu z i =0 thì *i
m 0 j
j
a −
∑
=
= yi ≥ 0
=
− m
0 j
j ij
*
- Nếu y i =0 thì *i
m 0 j
j
a −
∑
=
= -zi ≤ 0
từ đó *
0
m
i ij j i i j
=
−∑ = = (11) Tóm lại ta luôn có:
ij j
(w) w ( ( , , )
Vậy L ( w ) = L'( w , z , y ) (đpcm) (13)
Mệnh đề 1: Giả sử ( w , y , z) là phương án tối ưu của bài toán (4) ,(5) Khi đó w chính là
phương án tối ưu của bài toán (3) với ràng buộc (2)
Chứng minh: Thật vậy, giả sử trái lại, ∃ ˆw là phương án của bài toán (3), (2) với L( )wˆ =L( )w Từ ˆw ta sẽ xây dựng phương án [w ˆ ,yˆ , zˆ] của bài toán (4), (5) như sau:
0
ˆ ˆ
m
j
j
=
=∑ − và ˆz i=0
nếu *
0
ˆ 0
m
j
ij i j
a w q
=
Trang 4Đặt *
0
ˆ
ˆ
m
i ij j i
j
=
∑ và ˆy i =0
nếu ∑
= − <
m
j ij i
q a
0
Khi đó ta có :
a) Bộ tham số ˆ ˆ ˆw y z, ,
cũng là phương án của bài toán (4), (5)
0
ˆ ˆ ˆ
m
i i ij j i
j
=
+ = −∑ , nghĩa là ( ) '
L L w y z
Theo giả thiết, theo (14) và theo bổ đề 1 (13) ta có :
'
0
ˆ ˆ, ,ˆ (ˆ ˆ)
n
i i i i
L w y z c y z
=
ˆ ˆ ( ) ( ) ( , , )
i i ij j
c q a w L w L w L w y z
trái với giả thiết (w y z là phương án tối ưu của bài toán (4), (5) (đpcm) , , )
3 Kết luận
Qua các chứng minh trên ta có kết luận:
Có thể thay thế việc tìm lời giải cho bài toán (1), (2) bằng việc cực tiểu hoá bài toán (4) với ràng buộc (5)
Dùng phương pháp đơn hình giải bài toán (4), (5), ta sẽ nhận được phương án tối ưu của bài toán sau một số hữu hạn phép lặp
Dễ thấy việc tìm lời giải cho bài toán (4), (5) sẽ đơn giản hơn nhiều so với bài toán (1), (2)
TÓM TẮT Bài báo nghiên cứu việc chuyển bài toán qui hoạch phi tuyến về bài toán qui hoạch tuyến tính Việc đưa ra thuật toán này sẽ làm cho việc lập trình đơn giản hơn, thời gian tính toán ngắn hơn Điều này rất có ý nghĩa trong khoa học nói chung và trong lĩnh vực Điều khiển Tự động nói riêng và mở ra khả năng áp dụng vào thực tế
Mọi sự quan tâm xin liên hệ:
TS Nguyễn Hữu Công; Khoa Điện tử, Trường Đại học Kĩ thuật Công nghiệp - Đại học Thái Nguyên
ĐT: 0913589758 Email: huucongdk55@yahoo.com
Trang 536
Summary
This paper proposes a method used to convert nonlinear programming problem into linear programming problem A new algorithm used in this paper can support for programming more easily, and calculating time is shorter This is very significant in science in general and in automation control in special and open the applying capabilities in practice
Further information, please contact Dr Nguyen Huu Cong, Electronics Engineering Faculty, Thainguyen University of Technology Tel: 0913589758 Email: huucongdk55@
yahoo.com
TÀI LIỆU THAM KHẢO
[1] Nguyễn Hữu Công (2003), “Điều khiển tối ưu cho đối tượng có tham số phân bố, biến đổi chậm”, Luận án Tiến sỹ kỹ thuật
[2] Jinghao Zhu (2006), A Numerical Method of the Optimal Control Approach to Nonlinear Programming, Problems
[3] Bùi Minh Trí (1999), Qui hoạch toán học, Nxb Khoa học Kĩ thuật, Hà Nội