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

ĐỀ TÀI: THUẬT TOÁN BISECTION METHOD

13 936 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 13
Dung lượng 584,5 KB

Nội dung

TRƯỜNG ĐẠI HỌC ĐIỆN LỰCKHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO TIN ỨNG DỤNG ĐỀ TÀI: THUẬT TOÁN BISECTION METHOD Cán bộ hướng dẫn: NGÔ NGỌC THÀNH Sinh viên thực hiện: DƯ MẠNH TÂN.. TRƯỜNG ĐẠI HỌ

Trang 1

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO TIN ỨNG DỤNG

ĐỀ TÀI: THUẬT TOÁN BISECTION METHOD

Cán bộ hướng dẫn: NGÔ NGỌC THÀNH Sinh viên thực hiện: DƯ MẠNH TÂN.

LÊ MẠNH TIẾN.

VŨ VĂN TUẤN.

NGUYỄN VIẾT PHƯƠNG.

Hà Nội – Tháng 06- 2013

Trang 2

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO TIN ỨNG DỤNG

ĐỀ TÀI: THUẬT TOÁN BISECTION METHOD

Cán bộ hướng dẫn: NGÔ NGỌC THÀNH Sinh viên thực hiện: DƯ MẠNH TÂN.

LÊ MẠNH TIẾN.

VŨ VĂN TUẤN.

NGUYỄN VIẾT PHƯƠNG.

Hà Nội – Tháng 06 -2013

Trang 3

MỤC LỤC

CHƯƠNG I: TỔNG QUAN -4

1 Mô tả bài toán -4

2 Mục tiêu cần đạt -4

3 Hướng giải quyết -4

4 Môi trường cài đặt -4

CHƯƠNG II: LÝ THUYẾT -5

1 Cơ sở lý thuyết -5

1.1 Nghiệm thực của phương trình một ẩn và ý nghĩa hình học -5

1.2 Sự tồn tại nghiệm thực của phương trình, minh họa trên đồ thị (cho ví dụ) -6

1.3 Điều kiện hội tụ của phương pháp chia đôi -7

1.4 Thuật toán của phương pháp chia đôi -7

2 Lưu đồ -8

CHƯƠNG III: CHƯƠNG TRÌNH -9

CHƯƠNG IV: KẾT LUẬN -16

1 Kết quả đạt được -16

2 Hạn chế -16

3 Thu hoạch về chuyên môn và kinh nghiệm -16

4 Hướng phát triển -16

TÀI LIỆU THAM KHẢO -17

Trang 4

LỜI CẢM ƠN

Tất cả các thành viên nhóm em xin gửi lời chân thành cảm ơn tới thầy Ngô Ngọc Thành, thầy đã tận tình giảng dạy và cung cấp tài liệu môn học tin ứng dụng cũng như nhiệt tình giải đáp các thắc mắc của các bạn trong môn học Những tài liệu này đã giúp đỡ chúng em rất nhiều trong quá trình thực hiện

đề tài Chúng em xin cảm ơn thầy một lần nữa và chúc thầy mạnh khỏe!

Trang 5

CHƯƠNG I TỔNG QUAN

1 MÔ TẢ BÀI TOÁN

Nghiệm thực của một phương trình f(x) là số thực a thoả f(a) = 0

Phương pháp Bisection (chia đôi) là phương pháp được giới thiệu trong học phần Phương pháp tính của trường Đại Học Điện Lực Phương pháp (Bisection) chia đôi là tìm cách thu nhỏ dần khoảng cách li nghiệm bằng cách chia đôi liên tiếp các khoảng cách li nghiệm đã tìm ra

Để tìm nghiệm thực của một phương trình cần tìm hiểu khoảng cách li nghiệm Nếu [a, b]

là một khoảng trong đó hàm f(x) liên tục và đơn điệu, đồng thời f(a).f(b) <0 thì [a, b] được gọi

là một khoảng cách li nghiệm của phương trình f(x)

2 MỤC TIÊU CẦN ĐẠT

Tìm hiểu và cài đặt phương pháp chia đôi để giải phương trình đa thức bậc n bất kỳ Giao diện thân thiện với người sử dụng và các chức năng cần thiết

Kết quả chính xác

3 HƯỚNG GIẢI QUYẾT

Thiết lập chương trình để sử dụng nhập vào các thông tin cân thiết: phương trình cần tìm nghiệm, khoảng cách li nghiệm, sai số… Chọn nhập sai số là điều cần làm vì trong bất kỳ môn khoa học nào sai số là cần thiết và là điều cần phải nghĩ tới

Trong quá trình thực thi chương trình phải xử lí các ngoại lệ, các lỗi có thể xảy ra trong quá trình nhập

Tạo giao diên than thiện, các thao tác dễ nhập, phù hợp với người sử dụng

4 MÔI TRƯỜNG CÀI ĐẶT

Chương trình cài đặt được sử dụng bằng các ngôn ngữ như: Pascal, C, Delphi, Visual Basic, Visual C++, Java

Trang 6

CHƯƠNG II LÝ THUYẾT

1 CƠ SỞ LÝ THUYẾT

1.1 Nghiệm thực của phương trình một ẩn và ý nghĩa hình học

a Nghiệm thực của phương trình một ẩn.

- Ý tưởng:

Cho phương trình f(x) = 0, f(x) liên tục và trái dấu tại 2 đầu [a, b] Giả sử f(a) < 0,f(b) < 0 (nếu ngược lại thì xét –f(x) = 0) và có f(a).f(b) < 0 Khi đó trên [a, b] tồn tại một số lẻ nghiệm thực x ∈ [a,b] của phương trình f(x), trên [a,b] phương trình có ít nhất 1 nghiệm µ.

- Cách tìm nghiệm µ:

Đặt [a0,b0] = [a,b] và lập vào khoảng lồng nhau [ai,bi] (i=1, 2, 3,…)

[ai, (ai-1 + bi-1)/2] nếu f((ai-1 + bi-1)/2)>0 [ai,bi] =

[bi, (ai-1 + bi-1)/2] nếu f((ai-1 + bi-1)/2)<0

Như vậy:

- Hoặc nhận được nghiệm đúng ở một bước nào đó:

µ= (ai-1 + bi-1)/2 nếu f((ai-1 + bi-1)/2) = 0

- Hoặc nhận được 2 dãy {an} và {bn}, trong đó:

{an}: là dãy đơn điệu tăng cà bị chặn trên

{bn}: là dãy đơn điệu giảm cà bị chặn dưới

nên ∃ lim an = lim bn = µ là nghiệm phương trình.

Ví dụ:

Tìm nghiệm dương của phương trình f(x) = x2 + 2x – 0,5, trong khoảng [0,1] theo phương pháp chia đôi, ta có kết quả sau:

Số bước

lập i

n →α

Trang 7

3 0 0,25 0,125 -0,5 0,0625 -0,23438 0,125

7 0,21875 0,234375 0,2265625 -0,01465 0,023682 0,004456 0,007813

b Ý nghĩa hình học của nghiệm.

Một đường cong y = f(x) liên tục đơn điệu tăng hay đơn điệu giảm nối liền hai điểm A(a,f(a)), B(b,f(b)) ở hai miền khác nhau của trục hoành sẽ cắt trục hoành tại điểm có tọa độ ( x0,0) và đó chính là nghiệm của phương trình f(x) = 0

Nói cách khác, nghiệm của phương trình f(x) = 0 có ý nghĩa hình học là giao điểm của đồ thi hàm số y = f(x) và trục hoành

Ví dụ:

Xét phương trình :

x2 – 2x = 0 ta có đồ thị sau:

Trang 8

Ta thấy đồ thị của hàm số y = x2 – 2x (đường cong đó) cắt trục hoành tại hai điểm có tọa

độ (0,0) và (2,0) Do đó, x = 0 và x = 2 là nghiệm của phương trình

1.2 Sự tồn tại nghiệm thực của phương trình

Nếu hàm số f(x) liên tục [ab] và f(a), f(b) trái dấu nhau f(a)*f(b)<0 thì phương trình có ít nhất một nghiệm thuộc khoảng (a,b)

Ví dụ:

Xét y = f(x) = x – 2 trên [1,3], f(x) liên tục trên [1,3] và

f(1) = 1 - 2 = -1

f(3) = 3 - 2 = 1

f(1)*f(3) = (-1)*1 = -1<0

Vậy phương trình có ít nhất một nghiệm thuộc (1,3) Ta có thể thấy qua đồ thị sau:

Trang 9

1.3 Điều kiện hội tụ của phương pháp chia đôi.

Nếu ta thực hiên vô hạn lần phương pháp chia đôi với khoảng [a,b] thì hoặc tại một lần nào đó, điểm giữa khoảng là nghiệm đúng của phương trình f(x) = 0; hoặc ta nhận được một dãy vô hạn các khoảng lồng nhau thu nhỏ dần [a1,b1], [a2,b2],…, [an,bn] sao cho:

f(an).(bn) < 0

bn – an = ,∀n = 1, 2, …

bn – an = → 0 khi n → ∞ nên lim an = lim bn = µ

Cho n → +∞ trong bất đẳng thức f(an).(bn) < 0, do sự liên tục của hàm số f(x), ta có:

[f(µ)]2 ≤ 0 ⇒ f(µ)] = 0 Vậy µ = α.

1.4 Thuật toán của phương pháp chia đôi.

- Khai báo hàm f(x)

- Nhập a, b sao cho f(a) < 0 và f(b) < 0

Lập

c = (a + b)/2 nếu f(c) > 0 → b = c ngược lại a = c

trong khi (|f(c)| > ε) /* | a – b | > ε và f(c)! = 0 */

- Xuất nghiệm c.

2 LƯU ĐỒ KHỐI

b – a

2n

b – a

2n

Start

Nhập hàm f(x), a, b, sai số

c = (a + b)/2, tính f(c)

f(c)*f(a)<

0

End

Trang 10

Thay b = c Thay a = c

Tính e = (b – a)/2

Đúng, dừng c là nghiệm gần đúng

Trang 11

CHƯƠNG III CHƯƠNG TRÌNH.

“Nơi đây đặt giao diện chương trình bài làm cụ thể của các bạn”

“Chúc các bạn thành công”

Trang 12

CHƯƠNG IV KẾT LUẬN

1 Kết quả nhận được

Xây dựng một chương trình Demo tương đối hoàn thiện, cũng có thể nói là đáp ứng được yêu cầu của đề tài đặt ra Tương đối dễ sử dụng với giao diện thân thiện

2 Hạn chế

Chưa xây dựng đầy đủ các dạng của phương trình mà chỉ mới thực hiện trên phương trình

đa thức bậc n

Cách bố trí các thành phần trên giao diện còn chưa đẹp lắm, còn có những hạn chế về ngôn ngữ lập trình

3 Thu hoạch về chuyên môn và kinh nghiệm

Việc thực hiện đề tài giúp củng cố lại kiến thức toán học đã học và tìm hiểu, học hỏi thêm những kiến thức chưa được học Rèn luyện kỹ năng lập trình, nâng cao khả năng tự học và khả năng giải quyết vấn đề của bài toán

4 Hướng phát triển

Hoàn thiện thêm để có thể thực hiện trên nhiều loại đa thức như phương trình lượng giác, phương trình mũ…Có biện pháp làm tròn số hợp lí để cho kết quả chính xác hơn

Xây dựng giao diện đẹp và dễ sử dụng hơn Thực hiện bằng nhiều ngôn ngữ lập trình khác

để có kết quả tốt hơn

Trang 13

TÀI LIỆU THAM KHẢO

[1] Dương Việt Hằng, bài giảng PHƯƠNG PHÁP TÍNH, Khoa khoa học cơ bản, Đại Học

Điện Lực

[2] GS Tạ Văn Đĩnh, PHƯƠNG PHÁP TÍNH, Nhà xuất bản giáo dục 1999.

[3] Trần Văn Minh, PHƯƠNG PHÁP SỐ, Nhà xuất bản Khoa học Kĩ thuật, Hà Nội 1998

Ngày đăng: 30/12/2015, 18:23

TỪ KHÓA LIÊN QUAN

w