1. Trang chủ
  2. » Giáo án - Bài giảng

Tối ưu hóa nguyễn thị vinh

103 183 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 103
Dung lượng 1,39 MB

Nội dung

TR NG T I I H C TH Y L I U HÓA [Tài li u gi ng d y b c đ i h c] Nguy n Th Vinh HÀ N I 2010 M CL C CH NG 1: BÀI TOÁN T I U VÀ CÁC KHÁI NI M 1.1 BÀI TOÁN T I U VÀ VI C PHÂN LO I 1.1.1 Bài toán t i u t ng quát m t s thu t ng 1.1.2 Phân lo i toán t i u 1.1.3 B c c a ph ng pháp gi i toán t i u X p x b c hai X p x c s toán h c n sau ph n l n ph ng pháp t i u Nó d a khai tri n Taylor c a hàm f(x) lân c n m x0 nh m t chu i lu th a: 1.2 M t s khái ni m gi i tích l i 1.2.1 T p l i 1.2.2 Hàm l i 1.3 Bài t p ch ng 1: CH NG 2: QUI HO CH TUY N TÍNH (QHTT) 10 2.1 Các toán n hình c a QHTT 10 2.1.1 Bài toán v ch đ dinh d ng 10 2.1.2 Bài toán s d ng nguyên v t li u 11 2.1.3 Bài toán v n t i (t nh) 11 2.1.4 Bài toán tr ng 12 2.2 M t s ví d v cách thi t l p toán QHTT 12 2.2.1 Bài toán n kiêng: 12 Ch t dinh 13 d ng 13 Nhu c u t i 13 thi u hàng ngày 13 2.2.2 Bài toán s n xu t: 13 2.3 Ph ng pháp hình h c gi i toán QHTT 14 2.3.1 Ví d 1: Minh ho ph ng pháp hình h c 14 2.3.2 Ví d 2: Minh ho ph ng pháp hình h c 15 2.4 Bài toán QHTT d ng chu n khái ni m 16 2.4.1 Bài toán QHTT d ng chu n vi c chu n hóa toán QHTT 16 2.4.2 Ví d minh h a 17 2.4.3 Các ph ng án c a toán QHTT chu n 18 2.4.4 i u ki n t n t i nghi m t i u 19 2.5 Ph ng pháp đ n hình (PP H) gi i toán QHTT chu n 20 2.5.1 ng l i chung c s c a thu t toán 20 2.5.2 Tìm hi u PP H qua vi c gi i toán s n xu t 20 2.5.3 Thu t toán đ n hình 22 2.5.4 Ví d 23 2.5.5 M t s v n đ th ng g p 25 2.5.6 S đ kh i ch ng trình tính 31 2.6 Bài t p ch ng 2: 36 CH NG 3: CÁC BÀI TOÁN KHÁC C A QHTT 38 3.1 Bài toán đ i ng u (BT N) 38 3.1.1 Khái ni m BT N 38 3.1.2 nh ngh a: 39 3.1.3 Các tính ch t c a hai BT N 40 3.2 Bài toán v n t i 42 3.2.1 Bài toán v n t i (BTVT) s t n t i nghi m t i u 42 3.2.3 BTVT không cân b ng: đ a v BTVT cân b ng r i gi i 47 3.2.4 S đ kh i ch ng trình tính 47 3.3 Qui ho ch tham s n tính (QHTSTT) 49 3.3.1 Tr ng h p hàm m c tiêu ph thu c n tính vào m t tham s 50 3.3.3 Vài m r ng c a toán QHTSTT 56 3.4 Bài toán qui ho ch nguyên n tính (QHNTT) 56 3.4.1 Bài toán QHNTT t ng quát 56 3.4.2 Ph ng pháp nhánh c n gi i toán QHNTT 57 3.5 Bài t p ch ng 3: 61 CH NG 4: GI I THI U BÀI TOÁN QUI HO CH NG (QH ) 64 4.1 Bài toán tìm đ ng (l trình) ng n nh t ho c dài nh t 64 4.2 Các nguyên t c c b n c a QH 65 4.3 Thi t l p toán theo QH ph ng trình truy h i c a Bellmann 66 4.3.1 Thi t l p m t toán theo QH 66 4.3.2 Các ph ng trình truy h i c a R.Bellmann 67 4.4 Ph ng pháp th c hành QH 70 4.5 M t s ví d 70 4.6 Bài t p ch ng 4: 76 4.7 77 4.8 Ph ng án 77 4.8.1 I 77 CH NG 5: QUY HO CH PHI TUY N (QHPT) 78 5.1 Ph ng pháp dò tìm c c tr đ a ph ng c a hàm m t bi n 78 5.1.1 N i dung ph ng pháp lát c t vàng (ph ng pháp b c không) 78 5.1.2 Thu t toán 79 5.1.3 Ví d : nh v m c c t u c a hàm f(x) = x − x bi t ε = 0,15 79 5.2 Các ph ng pháp t t d c dò tìm c c tr đ a ph ng c a toán QHPT không ràng bu c nhi u chi u 82 5.2.1 t v n đ : 82 5.2.2 Ph ng pháp đ ng d c nh t (Steepest Descents) 82 5.3 Ph ng pháp gradient dò tìm c c tr đ a ph ng c a toán QHPT ràng bu c nhi u chi u 88 5.3.1 M t s khái ni m 88 5.3.2 Ph ng pháp Gradient 91 5.4 Bài t p ch ng 5: 94 CH NG 6: H NG D N S D NG CÔNG C SOLVER TRONG MSEXCEL GI I CÁC BÀI TOÁN T I U 95 6.1 Gi i thi u b công c SOLVER chu n MS-EXCEL 95 6.1.1 M t s khái ni m SOLVER chu n 95 6.1.2 Xây d ng mô hình SOLVER 97 6.2 Ví d : 97 CH NG 1: BÀI TOÁN T I U VÀ CÁC KHÁI NI M 1.1 BÀI TOÁN T I U VÀ VI C PHÂN LO I 1.1.1 Bài toán t i u t ng quát m t s thu t ng Bài toán t i u t ng quát: Tìm giá tr l n nh t (hay giá tr nh nh t) c a hàm đ n tr f(x) (1.1) tho mãn u ki n: gi(x) ≥ (≤, =) bi, i = 1, m (1.2) x ∈X ⊂ Rn (1.3) Bài toán (1), (2), (3) đ c g i toán t i u t ng quát, hàm f(x) đ c g i hàm m c tiêu, hàm gi(x) đ c g i hàm ràng bu c, t p h p D = {x ∈ X : g i ( x ) ≥ (≤, =) b i , i = 1, m} (1.4) đ c g i mi n ràng bu c (mi n ch p nh n đ c) M t ph ng án x*ε D làm t i u hàm m c tiêu đ c g i m t ph ng án t i u hay m t nghi m t i u; f(x*) đ c g i giá tr t i u c a toán t i u t ng quát M t s thu t ng - Bài toán t i u t ng quát đ c g i toán t i u không ràng bu c n u m t h n ch mi n X (không có h ràng bu c (2) hay D = X) - Giá tr f(x*) t i nghi m t i u x*∈ D đ c g i c c tr t đ i (hay toàn c c) c a toán (1), (2), (3) N u có m t ph ng án x ∈ D: f(x) ch giá tr t i u m t lân c n c a x f(x) đ c g i c c tr t ng đ i (hay đ a ph ng) V y đ tìm giá tr t i u c a hàm m c tiêu f(x) mi n, ng i ta th ng tìm c c tr t ng đ i, sau so sánh v i giá tr biên đ xác đ nh giá tr t i u M t s tính ch t quan tr ng c a c c tr c a hàm tr n - i v i hàm m t bi n m c c tr (t ng đ i) x ∈ D, ta có df ( x ) = 0, đ i v i dx hàm nhi u bi n, véct gradientf c a hàm m c tiêu f(x) b ng không, t c ⎛ ∂f ⎞ ⎜ ⎟ ⎜ ∂x ⎟ ⎜ ∂f ⎟ ⎜ ∂x ⎟ ⎜ 2⎟ gradientf ( x ) = ⎜ ⎟ = ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ∂f ⎟ ⎜ ∂x ⎟ ⎝ n ⎠x Nh ng m x ε D tho mãn u ki n (5) đ (1.5) c g i m d ng Hình d - i cho ta m d ng c a hàm m t bi n y = f(x) i v i hàm m t bi n, nh ng m c c đ i, đ cong c a đ d 2f s âm, t c (x) < , dx ng y = f(x) m t (1.6) Còn nh ng m c c ti u b t đ ng th c (1.6) có chi u ng c l i i v i hàm nhi u bi n, u ki n (1.6) t ng đ ng v i ma tr n Hessian H(x) đ o hàm riêng c p hai c a f(x) xác đ nh âm (d ng), t c yT H(x) y < (> 0) ∀x ∈ D, ∀y ∈ R n ⎛ ∂ 2f ⎞ ⎟ H(x) = ⎜⎜ ⎟ x x ∂ ∂ j ⎠ ⎝ i x ⎞ ⎛ ∂ 2f ∂ 2f ∂ 2f ⎟ ⎜ ∂ x1∂ x ∂ x1∂ x n ⎟ ⎜ ∂ xi ⎜ ∂ 2f ∂ 2f ∂ 2f ⎟⎟ ⎜ = ⎜ ∂ x 2∂ x1 ∂ x 22 ∂ x 2∂ x n ⎟ ⎟ ⎜ ⎟ ⎜ 2 ⎜ ∂ 2f ∂ f ∂ f ⎟ ⎟ ⎜ ∂ xn∂ x2 ∂ x 2n ⎠ x ⎝ ∂ x n ∂x1 (1.7) Hình cho ta nh ng m d ng c a m t hàm hai bi n f(x1, x2) ây m t hình v chu n, nh ng m có giá tr d c n i v i b i m t đ ng cong Trong hình có m t m yên ng a (saddle points) 1.1.2 Phân lo i toán t i u D a tính ch t c a thành ph n c a toán t i u (1), (2), (3), ng i ta phân toán t i u thành lo i sau: Qui ho ch n tính (QHTT): hàm m c tiêu hàm ràng bu c đ u hàm n tính Qui ho ch tham s : h s c a hàm m c tiêu c a hàm ràng bu c ph thu c vào tham s Qui ho ch đ ng: đ i t ng xét t i u trình có nhi u giai đo n (phát tri n theo th i gian) Qui ho ch phi n: n u hàm m c tiêu ho c có nh t m t hàm ràng bu c phi n ho c c hai tr ng h p x y Qui ho ch r i r c (tr ng h p riêng qui ho ch nguyên): mi n ràng bu c r i r c (hay nguyên) Qui ho ch đa m c tiêu: xét nhi u hàm m c tiêu mi n ràng bu c 1.1.3 B c c a ph ng pháp gi i toán t i u Cách thu n ti n đ phân lo i ph ng pháp t i u b c c a ph ng pháp gi i ó b c cao nh t c a đ o hàm hàm m c tiêu mà ph ng pháp s d ng a- Ph ng pháp b c không: ch c n đ n giá tr c a hàm m c tiêu Ch ng h n ph ng pháp đ n hình gi i toán QHTT ph ng pháp b c không b- Ph ng pháp b c nh t: đòi h i c giá tr c a hàm l n véct đ o hàm (riêng) Ví d c a ph ng pháp b c nh t ph ng pháp gradient liên h p c- Ph ng pháp b c hai: đòi h i c giá tr c a hàm l n véct đ o hàm (riêng) c p m t ma tr n đ o hàm riêng c p hai Ví d c a ph ng pháp b c hai ph ng pháp Newton X p x b c hai X p x c s toán h c n sau ph n l n ph ng pháp t i u Nó d a khai tri n Taylor c a hàm f(x) lân c n m x0 nh m t chu i lu th a: df Δx d f f ( x + Δx ) = f ( x ) + Δx ( x ) + ( x ) + dx dx Hoàn toàn t ng t , khai tri n Taylor đ c m r ng cho hàm nhi u bi n: f ( x + Δx ) = f ( x ) + Δx T gradientf ( x ) + T Δx H.Δx ( x ) + (1.8) đ o hàm b c nh t đ c thay th b i gradientf ( x ) đ o hàm b c hai đ thay th b i ma tr n Hessian H(x0) c N u x0 m c c tr c a hàm f(x) (8) tr thành: f ( x + Δx ) = f ( x ) + T Δx H.Δx ( x ) + O(Δx ) (1.9) đ o hàm (riêng) b c nh t t i m c c tr đ u b ng không S h ng O(∆x3) n đ nh sai s b c ∆x3 Do ∆x 0, s h ng s tr nên nh so v i s h ng b c hai V y m t hàm kh vi b c hai b t kì luôn x p x đ c b i khai tri n Taylor đ n c p hai c a i u d n đ n h qu h u h t ph ng pháp t i u đ c thi t k đ tìm giá tr t i u c a hàm b c hai Trong th c hành, hi m ta g p toán t i u mà hàm m c tiêu hàm b c hai Tuy nhiên ch ng trình tính h i t đ n giá tr t i u m t cong y = f(x) s d n v m t b c hai i u có ngh a m t thu t toán x p x h i t t t n u có th ch r ng h i t m t b c hai ó c s toán h c c a ph ng pháp Newton 1.2 M t s khái ni m gi i tích l i 1.2.1 T p l i T h p l i: Cho m vect { xi Rn, i=1,…,m }; vect x ∈ Rn đ c g i t h p l i c a vect n u : L u ý: x đ c g i t h p l i th t s c a {xi} n u ràng bu c ta có ∃ α i ∈ [0,1] T p h p l i: + S ∈ Rn t p l i n u { ∀ x ∈ S , y ∈ S , λ ∈ [0,1] ⇒ λ x + (1-λ) y ∈ S } Nh v y n u S ⊂ R m t t p l i nó ch a tr n đo n th ng n i hai m b t kì c a Ví d v t p h p l i: o n th ng M t ph ng Siêu ph ng n {x=(x1 , …, xn)∈Rn : ∑a x i i =1 i = b, ∀a i , b ∈ R} N a không gian {x=(x1 , …, xn)∈Rn: n ∑a x i =1 i i ≤ ( hoÆc ≥ hoÆc < hoÆc >) b∀a i , b ∈ R} nh c c biên : Cho m x*∈S (v i S t p l i): ∃ x1, x2 ∈S đ x* = λ x1 +( 1-λ )x2 ; λ ∈[0,1] Khi x* m t đ nh c c biên c a S a di n l i : Là t p l i S v i s đ nh c c biên h u h n Ví d v đa di n l i R2 đa giác l i nh lí 1: Các t p l i đóng đ i v i phép giao, phép c ng, phép nhân v i m t s phép l y t h p n tính, t c n u A B hai t p l i Rn t p h p sau c ng l i: A ∩ B = {x : x ∈ A, x ∈ B} λA + βB = {x = λa + βb : a ∈ A, b ∈ B, λ, β ∈ R} H qu 1: Mi n ch a nghi m c a h ph di n l i ng trình đ i s n tính m t đa 1.2.2 Hàm l i nh ngh a: - Hàm s f(x) xác đ nh t p l i S ⊂ R n đ c g i hàm l i S n u ∀x, y ∈ S, ≤ λ ≤ ta có: f( x +(1 – )y) ≤ f(x) + (1 – )f(y) - Hàm s f(x) đ c g i l i ch t S n u ∀x, y ∈ S, < λ < ta có: f( x +(1 – )y) < f(x) + (1 – )f(y) - Hàm s f(x) đ c g i lõm (ch t) t p l i S n u hàm –f(x) l i (ch t) S Các tính ch t c a hàm l i - i u ki n đ m t hàm kh vi l i nh lí 2: Cho hàm f: X R m t hàm kh vi t p l i m X c n đ đ f m t hàm l i X i u ki n f(x) + gradientf(x) (y-x) ≤ f(y) ∀x, y ∈ X N u f kh vi hai l n u ki n c n đ đ f l i X ma tr n Hessian H(x) c a f(x) xác đ nh không âm X, t c yT H(x) y ≥0 ∀x ∈ X, ∀y ∈ R n - Tính ch t c b n v c c tr c a m t hàm l i nh lí 3: B t kì c c ti u đ a ph c c ti u t đ i ng c a m t hàm l i t p l i c ng H qu 2: B t kì c c đ i đ a ph đ i t đói ng c a hàm lõm t p l i c ng c c nh lí 4: C c đ i c a m t hàm l i (n u có) m t t p l i có m c c biên bao gi c ng đ t t i m c c biên 1.3 Bài t p ch ng 1: 1> Xác đ nh mi n mà hàm sau l i (lõm): y = x2 y = ex y=x y=sn 2> V mi n gi i h n b i ràng bu c sau xét xem mi n mi n l i x22 – x1 + < x22 – x1 + < x1 + x2 – < x12 + x22 – 16 < 5.3 Ph ng pháp gradient dò tìm c c tr đ a ph bu c nhi u chi u ng c a toán QHPT ràng Trong gi i tích c n, ph ng pháp nhân t Lagrange đ c s d ng đ gi i toán tìm c c tr đ a ph ng v i ràng bu c đ ng th c c a hàm nhi u bi n Trong ph n ta s gi i quy t toán QHPT v i ràng bu c b t đ ng th c theo h ng s d ng ph ng pháp gradient dò tìm m t i u H ng u vi t s bi n s ràng bu c nhi u lên, công vi c tìm ki m s đ c th c hi n máy tính 5.3.1 M t s khái ni m Ví d m đ u Tìm c c ti u c a hàm C(x, y) = (x – 4)2 + (y – 4)2 th a mãn ràng bu c sau: ⎧ x + 3y ≥ ⎪ ⎨− 3x − y ≥ − 12 ⎪ x, y ≥ ⎩ B ng tr c quan hình h c, ta th y r ng: i v i toán c c tr t tâm (4, 4) m c c ti u Cmin = i v i toán c c tr v i ràng bu c d ng đ ng th c, ch ng h n 3x + 2y =12, ta có th s d ng ph ng pháp nhân t Lagrange ho c đ a v toán tìm c c tr t c a hàm m t bi n C(x, y(x)) = (x – 4)2 + (y – 4)2 v i y( x ) = − x + 64 ⎛ 28 36 ⎞ tìm đ c m c c ti u (x*, y*) = ⎜ , ⎟ , t i Cmin = 13 ⎝ 13 13 ⎠ i v i toán trên, hàm m c tiêu phi n nên thay dò tìm giá tr nh nh t c a C(x, y) mi n ràng bu c b ng cách di chuy n đ ng th ng song 88 song nh đ i v i toán QHTT, ta xét h đ ng tròn đ ng tâm liên quan đ n hàm C(x, y) Vòng tròn có bán kính nh nh t ti p xúc v i biên c a mi n ràng bu c t i ⎛ 28 36 ⎞ m (x*, y*) = ⎜ , ⎟ n m đ ng biên c a u ki n ràng buôc th hai ⎝ 13 13 ⎠ V y giá tr c c ti u c a toán Cmin = C ⎛⎜ 28 , 36 ⎞⎟ = 64 ⎝ 13 13 ⎠ 13 Nh n xét: i> i u ki n đ tìm vòng tròn có bán kính nh nh t, ti p xúc v i biên nói ti p n c a vòng tròn t i ti p m ph i có đ nghiêng (h s góc) b ng đ nghiêng c a đ ng biên 3x + 2y = 12 (b ng − ) (5.10) tính đ nghiêng c a ti p n v i h vòng tròn trên, ta s d ng công th c đ o hàm c a hàm n y theo đ i x c a F(x, y) = (x – 4)2 + (y – 4)2 – C ( C h ng s ) → ∂F/∂x dy x−4 =− =− =− ∂F/∂y dx y−4 (5.11) ⎛ 28 36 ⎞ c m c c ti u ⎜ , ⎟ nói ⎝ 13 13 ⎠ ii> Nghi m t i u c a toán không n m đ nh c c biên mà n m ph n biên c a mi n ch p nh n đ c ng v i m t ràng bu c nh t đ nh Gi i h (5.10) (5.11) ta nh n đ Bài toán QHPT có ràng bu c t ng quát: Tìm (ho c max) c a hàm f(X), X Rn (5.12) tho mãn ràng bu c sau: gi(Xi) ≥0 (≤0) ∀i = 1, m (5.13) Nh n xét: T tính ch t c a m t hàm l i, toán tìm (max) ch c ch n có nghi m f(X) hàm l i (lõm) mi n ràng bu c l i Vi c tìm c a m t hàm lõm (ho c max c a m t hàm l i) mi n l i th ng ph c t p h n H ng dò tìm ch p nh n đ c Cho X* m t m thu c mi n ràng bu c (mi n ch p nh n đ c) = {X ∈ R n : g i ( X ) ≥ 0, i = 1, m} H ng D đ c g i h ng ch p nh n đ c t i X* n u tho mãn u ki n D ∇g i (X*) ≥ 0, ∀i = 1, m T i u ki n (5.14) đ ki n sau: (5.14) c th c hi n hàm ràng bu c tho mãn m t u - Các hàm ràng bu c n tính - Các hàm ràng bu c l i t n t i m X: gi(X)≤0 - Các hàm ràng bu c phi n ∇g i (X*) đ c l p n tính 89 Hàm Lagrange u ki n c n c a c c tr đ a ph ng m - nh ngh a: Hàm L(X,Y) = f (X) + ∑ y i g i ( X) c a toán (5.12), (5.13) đ c g i i =1 hàm Lagrange c a toán - i u ki n c n (b c nh t) c a c c tr đ a ph ng đ c phát bi u d i d ng u ki n Kuhn-Tucker nh sau: Cho f(X), gi(X) hàm kh vi, X Ω m c c tr c a toán (5.12), (5.13) đ c dò tìm theo h ng ch p nh n đ c Khi t n t i vect nhân t ⎛ y1 ⎞ ⎜ ⎟ ⎜y ⎟ Y = ⎜ ⎟ c a hàm Lagrange L(X, Y) cho ⎜ ⎟ ⎜y ⎟ ⎝ m⎠ ∂L ⎧ ∂L v x ≥ ≥ = ∀j = 1, n (bài toán min) x j j ⎪⎪ ∂x ∂ x j j (5.15) ⎨ L L ∂ ∂ ⎪ ≤ y i ≥ y i = ∀i = 1, m ⎪⎩ ∂y i ∂y i ho c ∂L ⎧ ∂L x x ≤ ≥ = ∀j = 1, n (bài toán max) j j ⎪⎪ ∂x x ∂ j j ⎨ ∂ ∂ L L ⎪ ≥ y i ≥ y i = ∀i = 1, m ⎪⎩ ∂y i ∂y i (5.15’) Ý ngh a c a u ki n Kuhn-Tucker: u ki n c n c a hàm Lagrange vi c gi i toán c c tr ràng bu c b ng ph ng pháp gi i tích c n i v i ví d trên, u ki n Kuhn-Tucker đ c vi t cho hàm Lagrange L(X, Y) = (x – 4)2 + (y – 4)2 + z [6 – 2x – 3y] + t [–12 + 3x + 2y] b n u ki n biên u ki n không âm c a bi n ban đ u bi n ph tr i (các nhân t Lagrange) ⎧ ∂L ⎪ ∂x = 2( x − 4) − 2z + 3t ≥ ⎪ ⎪ ∂L = 2( y − 4) − 3z + t ≥ ⎪ ∂y ⎪ ⎪ ∂L = − x − 3y ≤ ⎨ z ∂ ⎪ ⎪ ∂L ⎪ ∂t = −12 + 3x + y ≤ ⎪ ⎪ x , y, z , t ≥ ⎪ ⎩ 90 ⎛ 28 36 ⎞ ⎛ 48 32 ⎞ D th y nghi m (x*, y*) = ⎜ , ⎟ th a mãn h v i (z*, t*) = ⎜ , ⎟ ⎝ 13 13 ⎠ ⎝ 13 13 ⎠ Nh n xét: Tu vào đ c m c a t ng toán mà u ki n Kuhn-Tucker có th tr thành u ki n c n đ 5.3.2 Ph ng pháp Gradient N i dung ph ng pháp Ph ng pháp ph thu c vào gradient c a hàm ràng bu c ho c gradient c a hàm m c tiêu ho c c hai nh h ng dò tìm có t l bi n đ i l n nh t đ t i u hóa hàm m c tiêu Gi s b ng phép th , ta tìm đ c m xu t phát thu c mi n ràng bu c Vi c dò tìm đ c ti n hành theo h ng d c nh t c a hàm m c tiêu v i b c di chuy n đ c xác đ nh tr c cho đ n có m t ràng bu c gi ≥ b vi ph m ho c giá tr c a hàm m c tiêu t i đi, ta ph i quay l i mi n Ω đ c i thi n giá tr c a hàm ràng bu c hay c a hàm m c tiêu t ng ng N u giá tr c a hàm m c tiêu t i đi, vect đ i c a gradient c a hàm m c tiêu m dò tìm thành công cu i đ c l y làm h ng dò tìm ti p theo v i b c d ch chuy n N u có nh t m t ràng bu c b vi ph m, ta ph i di chuy n v m mi n ch p nh n đ c nh ng g n biên t t Khi h ng d ch chuy n không theo qui t c đ ng d c nh t n a mà vuông góc v i chu n c a ràng bu c b vi ph m v i b c d ch chuy n s cho gi > Khi m dò tìm n m mi n ch p nh n đ c, vi c dò tìm theo h ng d c nh t l i đ c ti n hành Vi c dò tìm k t thúc m dò tìm ch m vào ph n biên gi = c a mi n Ω vect ∇f ∇g i t i song song v i nhau, t c ∇f T ∇g i =1 ∇f ∇ g i (5.16) Thu t toán B c 1: Ch n m X1 b t kì mi n ràng bu c Ω, gán i = 1, = 0,5 B c 2: Tính ∇f (X i ) , n u ∇f (X i ) = d ng, Xi nghi m, ng c l i Di = − B B ∇f (X i ) h ∇f (X i ) ng dò tìm m i c 3: Tính Xi+1 = Xi + i Di c 4: Ki m tra xem Xi+1 có n m mi n ràng bu c Ω hay không - N u Xi+1 thu c mi n Ω hàm m c tiêu gi m, quay l i b c đ l p l i vi c dò tìm v i i+1 t ng lên - N u Xi+1 ch m vào ph n biên c a Ω ng v i ràng bu c gk(Xi+1) = ki m tra xem hai vect ∇f ∇g k t i Xi+1 có song song không + N u trình tìm ki m d ng, Xi+1 nghi m + N u không, ta lùi l i mi n Ω theo h ng ∇g k (X i +1 ) tìm Xi+1 m i = Xi+1 + s ∇g k (X i +1 ) v i s đ c ch n cho gk(Xi+1 m i) > r i l p l i b c v i i+1 gi m 91 - N u Xi+1 n m mi n Ω ng v i ràng bu c th k, gk ≥ b vi ph m, ta lùi l i mi n Ω theo h ng ∇g k (X i+1 ) tìm Xi+1 m i = Xi+1 + s ∇g k (X i +1 ) v i s đ c ch n cho gk(Xi+1 m i) > r i l p l i b c v i i+1 gi m Ví d Gi i l i toán nêu ph n đ u b ng ph ng pháp gradient v i sai s = 0,05 Vi t lai toán d i d ng t ng quát: Tìm c c ti u c a hàm f(x, y) = (x – 4)2 + (y – 4)2 th a mãn ràng bu c sau: ⎧ x + 3y − ≥ (1' ) ⎪ ⎨− 3x − y + 12 ≥ (2' ) ⎪ x, y ≥ ⎩ B ⎛1⎞ c 1: Ch n m X1 = ⎜⎜ ⎟⎟ mi n ràng bu c Ω ⎝ 3⎠ B c 2: Tính ∇f (X1 ) = ⎜⎜ f(X1) = 10, 1=0,5 ⎛ − 6⎞ ⎟⎟ → ∇f (X1 ) = 10 = 6,32 > ε ⎝ − 2⎠ Ch n D1= − ∇f ( X1 ) ⎛ / 10 ⎞ ⎛ 0,95 ⎞ ⎟=⎜ ⎟ =⎜ ∇f ( X1 ) ⎜⎝ / 10 ⎟⎠ ⎜⎝ 0,16 ⎟⎠ ⎛1⎞ ⎛ 0,95 ⎞ ⎝ ⎠ ⎝ ⎛ 1,48 ⎞ ⎟=⎜ ⎟ D1 = ⎜⎜ ⎟⎟ + 0,5⎜⎜ 0,16 ⎟ ⎜ 3,08 ⎟ B c 3: Tính X2 = X1 + B f(X2) = f(X1+ D1) = f(1,48, 3,08) = 7,2 V y f(X2) < f(X1) c 4: Ki m tra th y X2 Ω g2(X2) = 1,4 > Quay l i b ⎠ ⎝ ⎠ ⎛ − 5,04 ⎞ ⎟⎟ → ∇f (X1 ) = 28,79 = 5,37 > ε ⎝ − 1,84 ⎠ c 2: tính ∇f (X ) = ⎜⎜ ∇f ( X ) ⎛ 5,04 / 5,37 ⎞ ⎛ 0,94 ⎞ ⎟ ⎟=⎜ =⎜ ∇f ( X ) ⎜⎝ 1,84 / 5,37 ⎟⎠ ⎜⎝ 0,34 ⎟⎠ Tính X3 = X2 + D2 v i = 1,2 = 0,6 Ch n D2= − ⎛ 1,48 ⎞ ⎛ 0,94 ⎞ ⎛ 2,04 ⎞ ⎟⎟ + 0,6⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ , f(X3) = 4,36 < f(X2) ⎝ 3,08 ⎠ ⎝ 0,34 ⎠ ⎝ 3,28 ⎠ X3 = ⎜⎜ Ω g2(X3) = - 0,7 < Ki m tra th y X3 ∇g (X ) vuông góc v i ràng bu c b vi ph m g2 Ph i lùi l i mi n Ω theo h ng ∇g ( X ) ⎛ 2,04 ⎞ ⎛ − / 3,61⎞ ⎛ 2,04 − 0,83s ⎞ ⎟ ⎟=⎜ ⎟ + s⎜ =⎜ ∇g ( X ) ⎜⎝ 3,28 ⎟⎠ ⎜⎝ − / 3,61⎟⎠ ⎜⎝ 3,28 − 0,55s ⎟⎠ c ch n cho g2(X3 m i) > s > 0,195, ch n s = 0,20 X3 m i = X3 +s v isđ X3 m i = X3 +s ∇g (X ) ⎛ 2,04 − 0,83s ⎞ ⎛ 1,87 ⎞ ⎟=⎜ ⎟, f(X3 m i) = 5,23 =⎜ ∇g (X ) ⎜⎝ 3,28 − 0,55s ⎟⎠ ⎜⎝ 3,17 ⎟⎠ Ki m tra th y X3 m i n m ph n biên g2 c a mi n Ω g2(X3 m i) = 0,05 ≈ 92 ⎛ − 4,26 ⎞ ⎟⎟ → ∇f (X míi ) = 20,91 = 4,57 > ε , 66 − ⎠ ⎝ Tính ∇f (X ) = ⎜⎜ ⎛ − 3⎞ ∇g = ⎜⎜ ⎟⎟, ∇g = 13 = 3,61 ∀X ∈ Ω ⎝ − 2⎠ Còn ∇f T ∇g 16,1 16,1 = = = 0,98 ≈ ∇f ∇g 4,57.3,61 16,5 V y ∇f ∇g2 đ ng ph ng, d ng trình l p đ (x*, y*) = (1,87; 3,17) t i fmin = 5,23 Các k t qu dò tìm đ c ghi l i b ng sau: i x y g2 1,48 2,04 1,87 3,08 3,28 3,17 1,4 –0,7 0,05 |g2| < N N N Y s c nghi m t i u fx’ fy’ ∇f 10 7,2 –6 –5,04 –2 –1,84 6,32 5,37 N N 5,23 –4,26 –1,66 4,57 N f ∇f < 0,5 0,6 0,2 93 5.4 Bài t p ch ng 5: 1> Dùng ph ng pháp lát c t vàng dò tìm m c c ti u c a hàm f(x) = (x – 100)2 v i đ xác = 0,1 2> Dùng ph ng pháp đ ng d c nh t tìm m (x, y) cho hàm m c tiêu 1 f(x, y) = x + y + + → x y v i đ xác = 0,1và (x1; y1) = (1; 3) 3> Dùng ph ng pháp hình h c tìm c c ti u c a hàm f(x, y) = 4(x – a)2 + 5(y – b)2 cho u ki n sau đ c tho mãn: x + y ≥ 1, x, y≥0 (v i a, b h ng s cho) 4> Dùng ph ng pháp hình h c tìm c c đ i c a hàm f(x, y) = 2x + y cho u ki n sau đ c tho mãn: ⎧− x + x − y ≤ ⎪ ⎨2 x + 3y ≤ 12 ⎪x , y ≥ ⎩ ng pháp gradient dò tìm m c c ti u c a hàm f(x, y) = 3x2 – 2x – 5y2 + 10y th a mãn u ki n sau ⎧2 x + 3y ≤ ⎪ ⎨3x + y ≥ ⎪x, y ≥ ⎩ 5> Dùng ph v i đ xác = 0,1và m xu t phát (x1; y1) = (1; 2) 94 CH NG 6: H NG D N S D NG CÔNG C MS- EXCEL GI I CÁC BÀI TOÁN T I U SOLVER TRONG SOLVER công c ph n m m gi i toán t i u Frontline Systems, Inc (USA) phát tri n SOLVER chu n đ c cài đ t s n Microsoft Excel theo s tho thu n gi a Microsof Corporation Frontline Systems, Inc V i SOLVER ng i dùng có th gi i toán sau thông qua b ng tính EXCEL • Gi i h ph ng trình n tính, phi n, ph ng trình đ i s b c cao, siêu vi t, hàm m • Tìm tham s c a hàm gi i tích x p x c a t p d li u th ng kê, quan sát nh m ph c v cho vi c tính toán d báo • Gi i toán t i u: QHTT, QHPT, QHN, … 6.1 Gi i thi u b công c SOLVER chu n MS-EXCEL 6.1.1 M t s khái ni m SOLVER chu n SOLVER chu n kh n ng gi i toán t i u SOLVER chu n g m nh ng công c c b n nh ph ng pháp đ n hình gi i tóan QHTT, ph ng pháp nhánh & c n gi i toán QHN ph ng pháp GRG (Generalized Reduced Gradient) gi i tóan QHPT tr n SOLVER chu n gi i h n cho nh ng toán đ n 200 bi n u n (B K) c ng thêm 100 ràng bu c đ i v i toán QHPT Trong SOLVER chu n có ba lo i báo cáo: báo cáo l i gi i, báo cáo đ nh y báo cáo gi i h n Nh ng đ nh ngh a c b n mô hình SOLVER M c đích c a SOLVER tìm nghi m, ngh a tìm giá tr cho bi n mà SOLVER đ t tên “Changing Cells” mô hình Các giá tr tho mãn ràng bu c (constraints) làm c c đ i ho c c c ti u hàm m c tiêu (objective function) mà SOLVER đ t tên “Set Target Cell” Mô hình thi t l p đ dùng v i SOLVER không khác so v i mô hình b ng tính EXCEL ngh a g m có giá tr đ u vào “input”, công th c đ tính toán d a input, đ nh d ng (formatting), … Bi n u n tham s (Decision Variables and Parameters) M t s giá tr đ u vào có th h ng s , không thay đ i trình tìm nghi m, ch ng h n lãi su t, giá s n ph m Ta g i nh ng giá tr tham s c a mô hình Nh ng giá tr đ u vào khác có th thay đ i ho c ta mu n u n thay đ i trình tìm nghi m g i B K hay “Changing Cells” SOLVER s tìm giá tr t i u cho nh ng bi n Hàm m c tiêu (Objective Function): Hàm m c tiêu (HMT) công th c n m ô ta mu n c c đ i ho c c c ti u Ô s đ c ch đ nh khung Set Cell 95 c a h p tho i “Solver Parameters” Hàm m c tiêu có th l i nhu n nhi u nh t (tìm max) hay chi phí nh t (tìm min) Có c mô hình SOLVER HMT đ tìm c c tr Khi khung Set Target Cell h p tho i “Solver Parameters” tham chi u đ n ô có công th c =0 Trong tr ng h p SOLVER ch đ n gi n tìm nghi m tho mãn ràng bu c Ràng bu c (Constraints) Ràng bu c quan h ch ng h n nh A1 >= M t ràng bu c đ c tho mãn n u u ki n qui đ nh m t ph m vi sai s nh Có s khác bi t nh gi a đánh giá s h c công th c lôgic TRUE FALSE ta đ a vào ô Trong thí d này, n u A1 –0,0000001, công th c lôgic s đánh giá FALSE, nh ng v i đ xác m c đ nh c a Solver (default SOLVER Precision setting), ràng bu c s đ c tho mãn Trong SOLVER, ràng bu c đ c đ nh rõ b ng cách cho ô ho c ô tham chiéu v trái ví d A1 ho c A1:A5, m t d u quan h (=) m t bi u th c v ph i M c dù SOLVER cho phép đ a b t k bi u th c s h c vào v ph i nh ng ta ch nên đ a vào h ng s ho c tham chi u đ n ô có giá tr h ng s M t giá tr h ng s đ i v i SOLVER m t giá tr không ph thu c vào b t c B K Ví d : - M t ràng bu c nh A1:A5

Ngày đăng: 16/03/2017, 21:31

w