Phương pháp nghiên cứu khoa học: Các phương pháp giải quyết bài toán trên máy tính Phạm Thế Bảo

10 29 0
Phương pháp nghiên cứu khoa học: Các phương pháp giải quyết bài toán trên máy tính Phạm Thế Bảo

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

Thông tin tài liệu

03/04/2008 CÁC PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN TRÊN MÁY TÍNH Phạm Thế Bảo Khoa Tốn – Tin học Trường Đại học Khoa học Tự nhiên Tp.HCM Phân lọai 11 Ph Phương pháp há trực tiếp iế Phương pháp gián tiếp tìm kiếm lời giải Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 Phương pháp trực tiếp • • • Xác định trực tiếp lời giải qua thủ tục tính tốn (cơng thức, hệ thức, định luật, …) qua bước để có lời giải Việ giải Việc iải ết vấn ấ đề t ê máy tính tí h hỉ thao th tác tá lập lậ trình tì h chuyển đổi lời giải từ ngôn ngữ tự nhiên sang ngơn ngữ máy tính Ỉ kỹ thuật lập trình máy tính Có ba loại bản: o o o Lọai thứ nhất, dùng để biểu diễn cho tốn có lời giải xác cơng thức tốn học n( n + 1) + + + n = ví dụ: tính tổng n số nguyên dương Loại thứ hai, biểu ể diễn ễ cho tốn có cơng thức giải gần ầ (cơng thức tính sin, cos, giải phương trình siêu việt, …) ví dụ: giải phương trình bậc Loại cuối cùng, biểu diễn lời giải không tường minh kỹ thuật đệ quy Phạm Thế Bảo Chuyển đổi liệu tốn thành liệu chương trình Ngun lý 1: Dữ liệu toán biểu diễn lại dạng biến chương trình thơng qua quy tắc xác định ngơn ngữ lập trình cụ thểể Biến - phương tiện biểi diễn liệu chương trình Thay đổi giá trị biến - lệnh gán Kiểu liệu Hằng số Cấu trúc chương trình Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 Chuyển đổi q trình tính tốn tốn thành cấu trúc chương trình • Ngun lý (Định lý Bohn-Jacopini): Mọi q trình tính tốn mơ tả thực dựa ba cấu trúc bản: tuần tự, rẽ nhánh lặp Cấu trúc Cấu trúc rẽ nhánh Rẽ nhánh có điều kiện: if (condition) • • rẽ nhánh đơn: if () rẽ nhánh đôi: if () else Rẽ nhiều nhánh: case Rẽ nhánh khơng có điều kiện: LABEL GOTO Cấu trúc lặp: Lặp xác định Lặp khơng xác định Phạm Thế Bảo Phân chia tốn ban đầu thành tốn nhỏ • Ngun lý 3: Mọi tốn lớn giải cách phân chia thành toán nhỏ Thủ tục hàm - phương pháp phân chia chương trình thành chương trình Biến cục biến toàn cục Tham số - liệu đầu vào/đầu hàm Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 Biểu diễn tính tốn khơng tường minh đệ quy • • Nguyên lý 4: trình đệ quy máy tính khơng đơn giản biểu thức quy nạp toán học Xem phần trước Phạm Thế Bảo Phương pháp gián tiếp • Được sử dụng chưa tìm lời giải xác ủ vấn ấ đề đề • Đây cách tiếp cận chủ yếu loài người từ xưa đến • Lời giải trực tiếp tốt hơn, khơng phải lúc có Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 Phân lọai phương pháp gián tiếp Phương pháp thử - sai Thử - sai hệ thống ố Thử - sai phân lớp Thử - sai ngẫu nhiên Phương pháp Heuristic Phương pháp trí tuệ nhân tạo Phạm Thế Bảo Phương pháp thử - sai Thomas Edison – phát biểu cách tìm kim đống rơm: “trong chưa nghĩ cách thật hay việc rút cọng rơm rút kim” Phương pháp dự nguyên lý: Nguyên lý vét cạn (duyệt toàn bộ): liệt kê tất trường hợp xảy xem xét chúng Ví dụ: liệt kê tất số nguyên tố từ m đến n Nguyên lý ngẫu nhiên: dựa việc thử số khả chọn cách ngẫu nhiên tập khả (thường lớn, áp dụng nguyên lý toàn tốn nhiều thời gian) Khả tìm lời giải (hoặc gần đúng) phụ thuộc vào chiến lược chọn ngẫu nhiên số điều kiện cụ thể Ví dụ: kiểm tra chất lượng q trình sản xuất đồn kiểm tra Một lơ hàng có 1000 thùng, chọn ngẫu nhiên 10 thùng, thùng có 24 sản phNm, chọn ngẫu nhiên sản phNm, Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 N guyên lý phát triên thành phương pháp Monté-Carlos Càng ngày nguyên lý ngẫu nhiên phát triển mạnh mẽ, số có phương pháp bật phươn gpháp Genetic N guyên lý mê cung: nguyên lý áp dụng khơ biết khơng hí h xác "hình "hì h dạng" d " ủ lời giải, iải màà phải hải xây â dựng lời giải dần qua bước, giống tìm khỏi mê cung Phạm Thế Bảo Thử sai - hệ thống N guyên lý vét cạn toàn bộ: muốn tìm kim đống rơm, rút cọng rơm đến rút kim Thuật giải: gọi D khơng gian tốn (tập tất khả xảy ra), D={(x1, x2, ,xn)/xi∈Di với Di tập hữu hạn có mi phần tử} gọi f: D {true, false} quy tắc xác định lời giải Ví dụ: đàn gà bầy chó có tổng cộng N chân, đàn gà đơng bầy chó M con Hỏi có gà chó? Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 N guyên lý mắt lưới: lưới bắt cá bắt cá có kích thước lớn kích thước mắt lưới Ví dụ: Tìm nghiệm phương trình đoạn Khử nhiễu ảnh N guyên lý mê cung: Muốn thóat khỏi mê cung phải biết quay lui biết đánh dấu nơi qua Ví dụ: Tìm đường ngắn Phạm Thế Bảo Thử - sai phân lớp N guyên lý chung giảm độ phức tạp thử - sai: thu hẹp tập trường hợp trước duyệt, đồng thời đơn giản hóa tối đa điều kiện chấp nhận trường hợp Quy tắc: đơn giản điều kiện: tránh tính lại vịng lặp thừa kế kết tính tốn bước trước: tổ hợp chỉnh hợp, heap sort, Kỹ thuật cầm canh: mã tuần, • số âm mảng: điều kiện while(x[i]>0&&i0) hil ( [i] 0) d N guyên lý thu gọn khơng gian tìm kiếm: loại bỏ trường hợp nhóm trường hợp chắn khơng dẫn đến lời giải Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 • Quy tắc rút gọn: Dựa đánh giá toàn cục: tìm điều kiện để rút gọn tập khả đề cử bước xây dựng thành phần Ví dụ: tìm tổ hợp chặp n k Dựa đánh giá cục bộ: xây dựng phép kiểm tra đơn giản để nhanh chóng loại bỏ khả cho thành phần x[i] mà xây dựng tồn n-i thành phần cịn lại lời giải Ví dụ: cho sáu số tự nhiên A={1,7,2,9,3,5} Tìm dãy A cho tổng phần tử dãy N guyên lý đánh giá nhánh cận: nhánh có chứa phải nặng trọng lượng Ví dụ: tốn người du lịch Quay lui không dùng đệ quy Phương pháp sinh lời giải Phạm Thế Bảo Phương pháp Heuristic • • Trong nhiều toán dùng phương pháp thử - sai dẫn đến số lượng thử lớn không chấp nhận Heuristic ước lượng khả dẫn đến lời giải trạng thái: phương pháp vét cạn có thêm tri thức kèm, tối ưu cục bộ, nguyên lý hướng đích, nguyên lý thứ tự, – ví dụ: Một em bé bị lạc đường nhà, em nhớ nhà cao khu vực, em tìm đến tịa nhà cao vùng em thấy, lại tiếp tục , Giải phương trình bậc 2, đốn nghiệm theo Vi-ét Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 Tìm kiếm theo chiều sâu chiều rộng • Là thử - sai theo nguyên lý mê cung hay hí h thử - saii kết hợp h lần lầ ngược • N gược với tìm kiếm theo chiều sâu, tìm kiếm theo chiều rộng mang hình ảnh vết dầu loang Giải thuật A* Phạm Thế Bảo Phương pháp trí tuệ nhân tạo • "Dạy" máy tính để có "trí thơng minh" người ời bắt chước h khả ă "suy " l ậ " luận" ủ người ví dụ: tốn đong nước, có bình A, B, C có dung tích 5, 8, 13 lít Làm đong 11 lít nước bình C? Bình C ban đầu đầy nước Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 03/04/2008 Một số phương pháp chuyển giao tri thức Biểu diễn tri thức Hệ chuyên gia Máy học Phạm Thế Bảo CuuDuongThanCong.com https://fb.com/tailieudientucntt 10 ... quy Phương pháp sinh lời giải Phạm Thế Bảo Phương pháp Heuristic • • Trong nhiều toán dùng phương pháp thử - sai dẫn đến số lượng thử lớn không chấp nhận Heuristic ước lượng khả dẫn đến lời giải. .. Thử - sai ngẫu nhiên Phương pháp Heuristic Phương pháp trí tuệ nhân tạo Phạm Thế Bảo Phương pháp thử - sai Thomas Edison – phát biểu cách tìm kim đống rơm: “trong chưa nghĩ cách thật hay việc rút... Lặp xác định Lặp không xác định Phạm Thế Bảo Phân chia toán ban đầu thành tốn nhỏ • Ngun lý 3: Mọi tốn lớn giải cách phân chia thành toán nhỏ Thủ tục hàm - phương pháp phân chia chương trình thành

Ngày đăng: 14/09/2020, 22:53

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan