![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Turbo C nâng cao P14
Số trang: 20
Loại file: pdf
Dung lượng: 115.82 KB
Lượt xem: 17
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tối ưu hóaTrong chương 8 chúng ta đã xét bài toán tìm nghiệm của phương trình phi tuyến tức là tìm giá trị của X mà tại đó là hàm triệt tiêu
Nội dung trích xuất từ tài liệu:
Turbo C nâng cao P14 Ch−¬ng 14 : tèi −u ho¸ §1.Ph−¬ng ph¸p tØ lÖ vµng Trong ch−¬ng 8 chóng ta ®· xÐt bµi to¸n t×m nghiÖm cña ph−¬ng tr×nh phi tuyÕn tøclµ t×m gi¸ trÞ cña x mµ t¹i ®ã hµm triÖt tiªu.Trong phÇn nµy chóng ta sÏ ®Æt vÊn ®Ò t×m gi¸ trÞcña x mµ t¹i ®ã hµm ®¹t gi¸ trÞ cùc trÞ(cùc ®¹i hay cùc tiÓu).Ph−¬ng ph¸p tiÕt diÖn vµng lµmét ph−¬ng ph¸p ®¬n gi¶n vµ hiÖu qu¶ ®Ó t×m gi¸ trÞ cùc trÞ cña hµm. Gi¶ sö ta cã hµm y = f(x) vµ cÇn t×m gi¸ trÞ cùc trÞ trong kho¶ng [a,b].Khi t×m nghiÖmchØ cÇn biÕt 2 gi¸ trÞ cña hµm lµ ta kh¼ng ®Þnh ®−îc nghiÖm cã n»m trong kho¶ng ®· cho haykh«ng b»ng c¸ch xÐt dÊu cña hµm.Khi t×m gi¸ trÞ cùc trÞ ta ph¶i biÕt thªm mét gi¸ trÞ n÷a cñahµm trong kho¶ng [a,b] th× míi kh¼ng ®Þnh ®−îc hµm cã ®¹t cùc trÞ trong ®o¹n ®· cho haykh«ng.Sau ®ã ta chän thªm mét ®iÓm thø t− vµ x¸c ®Þnh xem gi¸ trÞ cùc trÞ cña hµm sÏ n»mtrong ®o¹n nµo.Theo h×nh vÏ,khi chän ®iÓm trung gian c ta cã : l1 + l2 = l0 (1)vµ ®Ó tiÖn tÝnh to¸n ta chän : l1 l 2 = (2) l 0 l1Thay thÕ (1) vµo (2) ta cã : l1 l a c b = 2 (3) l1 + l 2 l1 l0 l1 l2 l2Gäi r = ,ta nhËn ®−îc ph−¬ng tr×nh : l1 1 1+ r = (4) rhay : r2 + r - 1 = 0 (5)NghiÖm cña ph−¬ng tr×nh (5) lµ : − 1 + 1 − 4(−1) 5 −1 r= = = 0.61803... (6) 2 2Gi¸ trÞ nµy ®· ®−îc biÕt tõ thêi cæ ®¹i vµ ®−îc gäi lµ “tØ lÖ vµng”.Nh− trªn ®· nãi,ph−¬ngph¸p tØ lÖ vµng ®−îc b¾t ®Çu b»ng 2 gi¸ trÞ ®· cho cña biÕn x lµ a vµ b.Sau ®ã ta chän 2 ®iÓmx1 vµ x bªn trong kho¶ng [a,b] theo tØ lÖ vµng: 5 −1 d= = 0.61803... 2218 y y a x a x2 x1 b x d x1 x2 d b x1 cò x2 cò a bTa tÝnh gi¸ trÞ cña hµm t¹i c¸c ®iÓm bªn trong ®o¹n [a,b].KÕt qu¶ cã thÓ lµ mét trong c¸c kh¶n¨ng sau : 1. NÕu,nh− tr−êng hîp h×nh a,f(x1) > f(x2) th× gi¸ trÞ cùc trÞ cña hµm n»m trong [x2,b] vµ x2 trë thµnh a vµ ta tÝnh tiÕp. 2. NÕu f(x1) < f(x2) th× th× gi¸ trÞ cùc trÞ cña hµm n»m trong [a,x1] vµ x1 trë thµnh b vµ ta tÝnh tiÕp.C¸i lîi cña ph−¬ng ph¸p tØ lÖ vµng theo h×nh a lµ gi¸ trÞ x1 cò trë thµnh gi¸ trÞ x2 míi nªn gi¸trÞ f(x2) míi chÝnh lµ gi¸ trÞ f(x1) cò nªn ta kh«ng cÇn tÝnh l¹i nã.Ch−¬ng tr×nh m« t¶ thuËtto¸n trªn nh− sau:Ch−¬ng tr×nh 14-1//tiet_dien_vang;#include #include #include float eps=1e-6;float f(float x) { float a=2*sin(x)-x*x/10; return(a); };float max(float xlow,float xhigh) { float xl,xu,r,d,x1,x2,f1,f2,xopt,s; int lap; xl=xlow; xu=xhigh; lap=1; 219 r=(sqrt(5.0)-1.0)/2.0; d=r*(xu-xl); x1=xl+d; x2=xu-d; f1=f(x1); f2=f(x2); if (f1>f2) xopt=x1; else xopt=x2; do { d=r*d; if (f1>f2) { xl=x2; x2=x1; x1=xl+d; f2=f1; f1=f(x1); } else { xu=x1; x1=x2; x2=xu-d; f1=f2; f2=f(x2); } lap=lap+1; if (f1>f2) xopt=x1; else xopt=x2; if (xopt!=0) s=(1.0-r)*fabs((xu-xl)/xopt)*100; } while((s>eps)&&(lap xu=xhigh; lap=1; r=(sqrt(5.0)-1.0)/2,0; d=r*(xu-xl); x1=xl+d; x2=xu-d; f1=f(x1); f2=f(x2); if (f1 clrscr(); printf(TIM CUC TRI CUA HAM BANG PHUONG PHAP TIET DIEN VANG ); printf( ); ...
Nội dung trích xuất từ tài liệu:
Turbo C nâng cao P14 Ch−¬ng 14 : tèi −u ho¸ §1.Ph−¬ng ph¸p tØ lÖ vµng Trong ch−¬ng 8 chóng ta ®· xÐt bµi to¸n t×m nghiÖm cña ph−¬ng tr×nh phi tuyÕn tøclµ t×m gi¸ trÞ cña x mµ t¹i ®ã hµm triÖt tiªu.Trong phÇn nµy chóng ta sÏ ®Æt vÊn ®Ò t×m gi¸ trÞcña x mµ t¹i ®ã hµm ®¹t gi¸ trÞ cùc trÞ(cùc ®¹i hay cùc tiÓu).Ph−¬ng ph¸p tiÕt diÖn vµng lµmét ph−¬ng ph¸p ®¬n gi¶n vµ hiÖu qu¶ ®Ó t×m gi¸ trÞ cùc trÞ cña hµm. Gi¶ sö ta cã hµm y = f(x) vµ cÇn t×m gi¸ trÞ cùc trÞ trong kho¶ng [a,b].Khi t×m nghiÖmchØ cÇn biÕt 2 gi¸ trÞ cña hµm lµ ta kh¼ng ®Þnh ®−îc nghiÖm cã n»m trong kho¶ng ®· cho haykh«ng b»ng c¸ch xÐt dÊu cña hµm.Khi t×m gi¸ trÞ cùc trÞ ta ph¶i biÕt thªm mét gi¸ trÞ n÷a cñahµm trong kho¶ng [a,b] th× míi kh¼ng ®Þnh ®−îc hµm cã ®¹t cùc trÞ trong ®o¹n ®· cho haykh«ng.Sau ®ã ta chän thªm mét ®iÓm thø t− vµ x¸c ®Þnh xem gi¸ trÞ cùc trÞ cña hµm sÏ n»mtrong ®o¹n nµo.Theo h×nh vÏ,khi chän ®iÓm trung gian c ta cã : l1 + l2 = l0 (1)vµ ®Ó tiÖn tÝnh to¸n ta chän : l1 l 2 = (2) l 0 l1Thay thÕ (1) vµo (2) ta cã : l1 l a c b = 2 (3) l1 + l 2 l1 l0 l1 l2 l2Gäi r = ,ta nhËn ®−îc ph−¬ng tr×nh : l1 1 1+ r = (4) rhay : r2 + r - 1 = 0 (5)NghiÖm cña ph−¬ng tr×nh (5) lµ : − 1 + 1 − 4(−1) 5 −1 r= = = 0.61803... (6) 2 2Gi¸ trÞ nµy ®· ®−îc biÕt tõ thêi cæ ®¹i vµ ®−îc gäi lµ “tØ lÖ vµng”.Nh− trªn ®· nãi,ph−¬ngph¸p tØ lÖ vµng ®−îc b¾t ®Çu b»ng 2 gi¸ trÞ ®· cho cña biÕn x lµ a vµ b.Sau ®ã ta chän 2 ®iÓmx1 vµ x bªn trong kho¶ng [a,b] theo tØ lÖ vµng: 5 −1 d= = 0.61803... 2218 y y a x a x2 x1 b x d x1 x2 d b x1 cò x2 cò a bTa tÝnh gi¸ trÞ cña hµm t¹i c¸c ®iÓm bªn trong ®o¹n [a,b].KÕt qu¶ cã thÓ lµ mét trong c¸c kh¶n¨ng sau : 1. NÕu,nh− tr−êng hîp h×nh a,f(x1) > f(x2) th× gi¸ trÞ cùc trÞ cña hµm n»m trong [x2,b] vµ x2 trë thµnh a vµ ta tÝnh tiÕp. 2. NÕu f(x1) < f(x2) th× th× gi¸ trÞ cùc trÞ cña hµm n»m trong [a,x1] vµ x1 trë thµnh b vµ ta tÝnh tiÕp.C¸i lîi cña ph−¬ng ph¸p tØ lÖ vµng theo h×nh a lµ gi¸ trÞ x1 cò trë thµnh gi¸ trÞ x2 míi nªn gi¸trÞ f(x2) míi chÝnh lµ gi¸ trÞ f(x1) cò nªn ta kh«ng cÇn tÝnh l¹i nã.Ch−¬ng tr×nh m« t¶ thuËtto¸n trªn nh− sau:Ch−¬ng tr×nh 14-1//tiet_dien_vang;#include #include #include float eps=1e-6;float f(float x) { float a=2*sin(x)-x*x/10; return(a); };float max(float xlow,float xhigh) { float xl,xu,r,d,x1,x2,f1,f2,xopt,s; int lap; xl=xlow; xu=xhigh; lap=1; 219 r=(sqrt(5.0)-1.0)/2.0; d=r*(xu-xl); x1=xl+d; x2=xu-d; f1=f(x1); f2=f(x2); if (f1>f2) xopt=x1; else xopt=x2; do { d=r*d; if (f1>f2) { xl=x2; x2=x1; x1=xl+d; f2=f1; f1=f(x1); } else { xu=x1; x1=x2; x2=xu-d; f1=f2; f2=f(x2); } lap=lap+1; if (f1>f2) xopt=x1; else xopt=x2; if (xopt!=0) s=(1.0-r)*fabs((xu-xl)/xopt)*100; } while((s>eps)&&(lap xu=xhigh; lap=1; r=(sqrt(5.0)-1.0)/2,0; d=r*(xu-xl); x1=xl+d; x2=xu-d; f1=f(x1); f2=f(x2); if (f1 clrscr(); printf(TIM CUC TRI CUA HAM BANG PHUONG PHAP TIET DIEN VANG ); printf( ); ...
Tìm kiếm theo từ khóa liên quan:
Kỹ thuật lập trình Phần cứng Công nghệ thông tin Tin học Quản trị mạngTài liệu liên quan:
-
52 trang 437 1 0
-
24 trang 365 1 0
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 325 0 0 -
74 trang 307 0 0
-
96 trang 303 0 0
-
Báo cáo thực tập thực tế: Nghiên cứu và xây dựng website bằng Wordpress
24 trang 295 0 0 -
Tài liệu dạy học môn Tin học trong chương trình đào tạo trình độ cao đẳng
348 trang 290 1 0 -
Đồ án tốt nghiệp: Xây dựng ứng dụng di động android quản lý khách hàng cắt tóc
81 trang 289 0 0 -
EBay - Internet và câu chuyện thần kỳ: Phần 1
143 trang 277 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 274 0 0