1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xác Định mức Độ ảnh hưởng các thông số Điều chỉnh trong máy in 3d Đến chất lượng in – Độ chính xác – Độ bền

12 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Xác Định mức Độ ảnh hưởng các thông số Điều chỉnh trong máy in 3d Đến chất lượng in – Độ chính xác – Độ bền
Tác giả Nguyễn Mạnh Cường, Nguyễn Khắc Thế Anh, Nguyễn Lê Bảo, Nguyễn Khắc Minh Nhật, Nguyễn Ngọc Đăng Khoa
Người hướng dẫn ThS. Trần Thị Ngọc Huyền
Trường học Trường Đại Học Bách Khoa – ĐHQG TP. HCM
Chuyên ngành Khoa Khoa Học Và Ứng Dụng
Thể loại Báo Cáo Bài Tập Lớn
Định dạng
Số trang 12
Dung lượng 1,02 MB

Nội dung

Trần Thị Ngọc Huyền Đề tài: Phương pháp Newton để giải bài toán tối ưu phi tuyến... Phương pháp Newton thuần túy giải bài toán tối ưu không ràng buộc II.. Giới thiệu Xét bài toán tố

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG TP HCM

KHOA KHOA HỌC VÀ ỨNG DỤNG

-🙧🕮🙥 🙧🕮🙥

🙧🕮🙥 -BÁO CÁO BÀI TẬP LỚN PHƯƠNG PHÁP TÍNH

Lớp: L10 Nhóm: 16

GVHD: Ths Trần Thị Ngọc Huyền

Đề tài:

Phương pháp Newton để giải bài toán

tối ưu phi tuyến

Trang 2

TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG TP HCM

KHOA KHOA HỌC VÀ ỨNG DỤNG

-🙧🕮🙥 🙧🕮🙥

🙧🕮🙥 -BÁO CÁO BÀI TẬP LỚN PHƯƠNG PHÁP TÍNH

GVHD: Ths Trần Thị Ngọc Huyền

Danh sách sinh viên thực hiện

Trang 3

Mục lục:

I Cơ sở lý thuyết

1 Giới thiệu

2 Phương pháp Newton thuần túy giải bài toán tối ưu không ràng buộc

II Thuật toán

III Bài toán

IV Chương trình giải bài toán

Trang 4

I Cơ sở lý thuyết

1 Giới thiệu

Xét bài toán tối ưu không ràng buộc

min

𝑥𝜖𝑅 𝑛𝑓(𝑥) (1) Trong đó, 𝑓(𝑥) là phiếm hàm lồi có đạo hàm bậc hai trên 𝑅𝑛 Bài toán tối ưu (1) cũng là bài toán được dẫn về từ nhiều bài toán thuộc các lĩnh vực khác nhau trong kinh tế, kỹ thuật

Để giả bài toán trên có nhiều phương pháp giải khác nhau tuỳ thuộc vào hàm mục tiêu i Một trong những phương pháp phổ biến là phương pháp Newton thuần túy với ưu điểm là

có tốc độ hội tụ nhanh Hiện nay, phương pháp này được phát triển để tìm lời giải tối ưu cho hàm nhiều biến trên cơ sở khai triển Taylor, nghiệm của bài toán tối ưu được thực hiện theo dãy lặp

𝑥𝑘+1= 𝑥𝑘−[∇2𝑓(𝑥𝑘)]−1 ∇𝑓(𝑥𝑘)

2 Phương pháp Newton thuần túy giải bài toán tối ưu không ràng buộc

a)Phương pháp Newton thuần túy

Phương pháp Newton thuần túy là ứng dụng phương pháp Newton cổ điển để giả ệ n ẩi h n

n phương trình

∇𝑓(𝑥) = (𝜕𝑥𝜕𝑓

1(𝑥), 𝜕𝑓𝜕𝑥

2(𝑥), … , 𝜕𝑓𝜕𝑥

𝑛(𝑥))

𝑇

= 0

Trang 5

Để tìm đi m dể ừng của hàm 𝑓 trên 𝑅𝑛 Dễ ấy, ma trận Jacobi của ánh xạ th ∇𝑓(𝑥) chính là

ma trận Hesse ∇2𝑓(𝑥) của hàm 𝑓,

𝐷∇𝑓(𝑥)= ∇2𝑓(𝑥)

Tại đi m ể 𝑥𝑘, nếu ma trận Hesse ∇2𝑓(𝑥𝑘) không suy biến thì ta có điểm tiếp theo

𝑥𝑘+1∶= 𝑥𝑘−[∇2𝑓(𝑥𝑘)]−1 ∇𝑓(𝑥𝑘)

Thông thường, ta viết

[∇2𝑓(𝑥𝑘)] 𝑝 = −∇𝑓(𝑥) (2)

và việc giải hệ phương trình tuyến tính (2) là đơn giản hơn việc tính ma trận nghịch đảo của ma trận Hesse Hệ phương trình (2) được gọi là hệ phương trình Newton và véc tơ

𝑝𝑘= −[∇2𝑓(𝑥𝑘)]−1 ∇𝑓(𝑥𝑘) được g i là hưọ ớng Newton của hàm f tại 𝑥𝑘

b)Định lý hội tụ

Giả sử:

i) Hàm f khả vi 2 lần trên 𝑅𝑛;

ii) Hàm 𝛻2𝑓(𝑥) là liên tục và Lipschitz trong lân cận của điểm dừng x* của hàm f, tức tồn tại lân cận B và số L > 0 sao cho

𝛻2𝑓(𝑥) − 𝛻2𝑓(𝑦) = 𝐿 𝑥 − 𝑦‖ ‖ ∀𝑥, 𝑦 ∈ 𝐵(𝑥 ∗, 𝜀 ;) iii) Ma trận 𝛻2𝑓(𝑥) xác định dương tại m i ọ 𝑥 ∈ 𝑅 𝑛

Khi đó, nếu xuất phát từ một điểm đủ gần x* thì dãy {𝑥𝑘} sinh ra bởi thuật toán Newton thuần túy hộ ụ tới x* theo tối t c độ là cấp hai

Chứng minh

Từ định nghĩa của bư c Newton và điớ ều kiện tối ưu ∇𝑓 = 0, ta có

𝑥 + 𝑝𝑘 𝑘𝑁− 𝑥∗= 𝑥𝑘− 𝑥∗−[∇2𝑓(𝑥𝑘)]−1 ∇𝑓(𝑥 ) 𝑘

= ∇ 𝑓2 −1[∇2𝑓𝑘(𝑥𝑘− 𝑥∗) − (𝛻𝑓𝑘− ∇𝑓∗)] (3)

Mà theo định lý Taylor

∇𝑓𝑘− ∇𝑓∗= ∫ ∇01 2𝑓(𝑥𝑘+ 𝑡(𝑥∗− 𝑥𝑘))(𝑥𝑘− 𝑥∗) 𝑑𝑡,

Trang 6

Suy ra

‖𝛻2𝑓(𝑥𝑘)(𝑥 − 𝑥𝑘 ∗) − (𝛻𝑓𝑘− 𝛻𝑓(𝑥∗))‖

= ∫ [∇ 𝑓(1 2

0 𝑥𝑘) − ∇2 𝑓(𝑥𝑘+ 𝑡(𝑥∗− 𝑥𝑘))]( 𝑥𝑘− 𝑥∗) 𝑑𝑡

≤ ‖∇2𝑓(𝑥𝑘)− ∇2 𝑓(𝑥 + 𝑡𝑘 (𝑥∗− 𝑥𝑘))‖ ‖𝑥𝑘− 𝑥∗‖

≤ ‖𝑥 − 𝑥𝑘 ∗‖2∫01𝐿𝑑𝑡 = 12𝐿‖𝑥𝑘− 𝑥∗‖2, (4) Với L là hằng số Lipschitz của 𝛻2𝑓(𝑥) khi x tiến đến x* Vì 𝛻2𝑓(𝑥∗) không suy biến, nên tòn tại một bán kính r>0 sao cho ‖∇2𝑓𝑘−1− ∇2𝑓−1(𝑥∗)‖ ≤ 2 ∇‖ 𝑓2 −1(𝑥∗)‖ cho mọi 𝑥𝑘 với

‖𝑥𝑘− 𝑥∗‖ ≤ 𝑟 Thay (3) và (4) vào, ta được

‖𝑥𝑘+ 𝑝𝑘𝑛− 𝑥∗‖ ≤ 𝐿‖∇2𝑓−1(𝑥∗)‖−1‖𝑥𝑘− 𝑥∗‖2= 𝐿 ‖𝑥𝑘− 𝑥∗‖2 , (5) Với 𝐿  = 𝐿‖∇2𝑓(𝑥∗)−1‖ Chọn 𝑥0 sao cho ‖𝑥0− 𝑥∗‖ ≤ min (𝑟,1

2𝐿), ta có thể dùng bất đẳng thức này theo phương pháp qui nạp để suy ra chuỗi hội tụ về , và với tốc độ hội tụ 𝑥∗

là cấp hai

Bằng cách sử dụng mối quan hệ giữa 𝑥𝑘+1− 𝑥 = 𝑝𝑘 𝑘𝑛 và ∇𝑓𝑘+ ∇2𝑓𝑘𝑝𝑘𝑛= 0, ta có

‖∇𝑓(𝑥𝑘+1)‖ = ‖∇𝑓(𝑥𝑘+1) − ∇𝑓𝑘− ∇2𝑓(𝑥𝑘)𝑝𝑘𝑛‖

=‖∫ ∇1 2𝑓(𝑥𝑘+ 𝑡𝑝𝑘𝑛)(𝑥𝑘+1− 𝑥𝑘) 𝑑𝑡

0 − ∇2𝑓(𝑥𝑘)𝑝𝑘𝑛‖

≤ ∫ ‖∇1 2𝑓(𝑥 + 𝑡𝑝𝑘 𝑘𝑛) − ∇2𝑓(𝑥𝑘)‖

0 ‖𝑝𝑘𝑛‖ 𝑑𝑡 ≤ 12 𝐿‖𝑝𝑘𝑛‖2

≤12 𝐿‖∇2𝑓(𝑥𝑘)−1‖2‖∇𝑓𝑘‖2

≤ 2𝐿‖∇2𝑓(𝑥𝑘)−1‖2‖∇𝑓𝑘‖2 , Suy ra các chuẩn gradient hộ ụ về 0 với tốc độ i t là cấp hai

II Thuật toán

Phương pháp Newton cổ ển giải hệ phương trình phi tuyến đi

• Trường hợp n=1 Xét phương trình có một biến số

f(x) = 0

Trang 7

Giả sử nghiệm củ phương trình này là xa ∈ R Thuật toán newton tìm nghiệm x

sẽ xuất phát từ một đi m xể 0 đủ gần x và sinh ra một dãy nghiệm xấp xỉ x ,x , x , * 0 1 2

… hộ ụ đến xi t *

Xét xk là một đi m thuể ộc dãy này Với p ∈ R và đủ bé, xấp xỉ Taylor bậ|𝑝| c nhất của hàm f(x) tại xk là:

+p) f(xk ≈ 𝑓(xk) +p𝑓′(𝑥𝑘)

Dễ ấy: th

y = f (xk) +p𝑓′(𝑥𝑘)

là phương trình tiếp tuyến tại đi m ( xể k, f( x ) ) vớ ồ ị của hàm y= f(x) Giả sử k i đ th

𝑓′(𝑥𝑘) ≠ 0 Khi đó giải phương trình

𝑓(xk) +p𝑓′(𝑥𝑘)= 0

Ta được:

𝑃 = −𝑓𝑓(𝑥′(𝑥𝑘𝑘)).

Đặt

xk+1 = x k−𝑓𝑓(𝑥′ (𝑥𝑘𝑘))

Rõ ràng x k+1chính là giao điểm của tiếp tuyến này và trục hoành Ox Gán k:= k+1

và lặp lại quá trình tính toán đối với đi m xể k mới … Hình 6.4 cho ta minh họa hình

học c a thuất toán trên ủ

Định lý 6.6 ( Sự hội tụ của thuật toán Newton) Giả sử rằng:

i) Hàm f(x) khả vi liên tục cấp hai;

Trang 8

ii) x là nghi m cệ ủa phương trình f(x) = 0, tức f(x) = 0

iii) 𝑓′(𝑥∗) ≠ 0

Khi đó , nếu |𝑥0− 𝑥∗| đủ nhỏ thì dãy { x } xác định bởk i:

𝑥𝑘+1= 𝑥𝑘−𝑓(𝑥𝑓′ (𝑥𝑘𝑘))

Hội tụ đến x vớ* i tốc độ bậc hai và hệ số 𝛾 = |𝑓𝑓′′′(𝑥(𝑥𝑘∗))|

Chứng minh: Giả sử ta dừng thuật toán và lấy nghiệm xấp xỉ x Như vậy, sai số k là ek=

xk – x Khai triển Taylor của hàm f tạ* i xklà:

0 = 𝑓(𝑥∗)= 𝑓(𝑥𝑘− ⅇ = 𝑓𝑘) (𝑥𝑘)− ⅇ𝑘𝑓′(𝑥𝑘) + 12(ⅇ𝑘)2𝑓′′( )𝜀

Trong đó 𝜀 là điểm giữa x – e Nếu k k 𝑓′(𝑥𝑘) ≠ 0 thì

ⅇ𝑘−(𝑓(𝑓𝑥′𝑥𝑘𝑘))=12(ⅇ𝑘)2 𝑓 ( ) 𝜀′′

𝑓 ′ (𝑥 ) 𝑘 (6.6) Thay ek = x – x vào phương trình ( 6.6) ta đượk * c:

𝑥𝑘−𝑓𝑓(𝑥′(𝑥𝑘𝑘)) =12(ⅇ𝑘)2𝑓′′(𝜀)

𝑓′(𝑥𝑘) Nếu dãy { x } hộ ụ thì k i t 𝜀 → 𝑥∗ Do đó khi x đủ gần x k *ta có:

𝑥𝑘+1− 𝑥∗≈12𝑓𝑓′′′(𝑥(𝑥∗∗) (𝑥) 𝑘− 𝑥∗)2

Tức dãy { x } hộ ụ cấp hai đến x với hệ số k i t * 𝛾 = |2𝑓𝑓′′′(𝑥(𝑥∗∗))|

Chú ý 6.2

i) Theo công thức (6.5), nếu 𝑓′(𝑥𝑘) = 0 thì điểm xk+1 không được xác định Về

mặt hình h c, sự kiện ọ 𝑓′(𝑥𝑘) = 0 có nghĩa là tiếp tuyến tại điểm (xk,f(xk) ) v i ớ

đồ ị hàm y= f(x) song song vớth i trục hoành Ox

ii) Nếu 𝑓′(𝑥𝑘) ≠ 0 ∀𝑘 = 0, 1, 2, 𝑓 và ′′(𝑥∗) ≠ 0 nhưng 𝑓′(𝑥∗) = 0 thì hệ số

𝛾 trong công thức đánh giá hộ ụ tiến đến i t ∞ và thuật toán không có tốc độ hội

tụ bậc hai

iii) Trong chứng minh sự hộ ụ của thuật toán newton đòi hỏi t i điểm xuất phát

Trang 9

Ví dụ sau cho ta thấy giả thiết “ điểm xuất phát ban đầu x ph ải đủ gần nghiệ m

x * ” quan trọ ng đ ến mức nào

Ví dụ 6.8 Giải phương trình sau bằng thuật toán newton

𝒇(𝒙) =ⅇⅇ𝒙𝒙− ⅇ+ ⅇ−𝒙−𝒙= 𝟎

Giải

Trước hết ta thấy f( x) là hàm tang hyperbolic, f( x) = thx, nên nghiệm của phương trình này là 𝑥∗= 0 Vì :

𝑓′(𝑥) = 4 (ⅇ𝑥+ ⅇ−𝑥 2) Nên công thức c a thuậủ t toán Newton là :

𝑥𝑘+1= 𝑥𝑘−𝑓(𝑥𝑓′(𝑥𝑘𝑘)) = 𝑥𝑘−ⅇ2𝑥

𝑘

− ⅇ−2𝑥 𝑘

4

Xuất phát từ x =1, ta tính năm điể0 m tiếp theo

x0 =1 x2 =0.409402313 x4 =7.0602×10-5

x1 =-0.813430203 x3 =-0.047304915 x5 =1.95×10-12

Do đó dãy x0,…,x5 hội tụ đến nghiệm Tuy nhiên nếu xuất phát từ x0=1.1 thì

Trang 10

x =1.1 x =1.234131133 x =5.715360097

x1 =-1.128552585 x3 =-1.69516598 x5 =-23021.35634 các hàm hyperpolic

shx=𝑒𝑥−𝑒−𝑥

2 , chx=𝑒

𝑥+𝑒−𝑥

2 ,thx=

𝑠ℎ𝑥 𝑐ℎ𝑥=𝑒

𝑥−𝑒−𝑥

𝑒𝑥+𝑒−𝑥,cothx=𝑐ℎ𝑥

𝑠ℎ𝑥𝑒

𝑥+𝑒−𝑥

𝑒𝑥−𝑒−𝑥,

Và càng tính tiếp, các điểm lặp tiếp theo càng xa nghiệm Do đó, thuật tóan newton không hội tụ Hình 6.5 minh họa đ thồ ị của hàm f(x) và các điểm x0, x , x , x 1 2 3trong trường hợp “xấu” này

III Bài toán

Tối thiểu hóa f(x1,x2 ) = x1 - x2 + 2 x12 +2 x x + x1 2 2 2 tại điểm ban đầu X1 ={0

0}

Giải

Để tìm X ta có2

[ J ] = 1 𝑑2𝑓

𝑑𝑥12 𝑑𝑥 𝑑𝑥𝑑1 22𝑓 𝑑𝑓𝑑𝑥1 = 1 + 4x + 2x 1 2 𝑑 2 𝑓

𝑑𝑥1 2 = 4 𝑑𝑥 𝑑𝑥𝑑1 22𝑓 = 2 𝑑𝑥2𝑥1𝑑2𝑓 𝑑𝑑𝑥22𝑓2 𝑑𝑓

𝑑𝑥2 = -1 + 2x + 2x1 2 𝑑 2 𝑓

𝑑𝑥2 2 = 2 𝑑𝑥 𝑑𝑥𝑑2 12𝑓 = 2 [ J ] = 4 21

2 2

[ J1]-1 = 4.2−2.21 x 2 -2 = 14 x 2 -2 = 1 2⁄ −1 2⁄

-2 4 -2 4 −1 2⁄ 1

g1 = 𝑑𝑓 𝑑𝑥1⁄ = 1 + 4x1 +2x2 = 1

𝑑𝑓 𝑑𝑥2⁄ X1 -1 +2x1 +2x2 0 -1

0

Trang 11

X2 = X – [ J1 1 ] g1 = -1

3 2⁄

g2 = 𝑑𝑓 𝑑𝑥1 ⁄ = 0

𝑑𝑓 𝑑𝑥2⁄ X2 0

X3 = X – [ J2 1 ] -1 g2

Vì g = 0 nên X = X Vậy X là điể2 3 2 2 m tối ưu

IV Chương trình giải bài toán

% Nhập hàm từ bàn phím

f_expression = input('Nhập hàm số f(x): ', 's');

f_expression = str2sym(f_expression);

% Điều kiện dừng

tolerance = 1e-6;

max_iterations = 5;

% Khởi tạo giá trị ban đầu

x0 = input('Nhập giá trị ởi tạo x0: ');kh

% Phương pháp Newton cổ điển

x = x0;

for iter = 1:max_iterations

df = diff(sym(f_expression)); % Tính đạo hàm của hàm số

Trang 12

dx = -subs(sym(f_expression), x) / subs(df, x);

x = x + dx;

if abs(subs(sym(f_expression), x)) < tolerance break;

end

end

% In kết quả

fprintf('Nghiệm của bài toán tối ưu là: %.6f\n', x);

Ngày đăng: 19/12/2024, 15:43

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN