(SKKN HAY NHẤT) ứng dụng quy hoạch động bồi dưỡng học sinh học tốt môn tin học lập trình

24 2 0
(SKKN HAY NHẤT) ứng dụng quy hoạch động bồi dưỡng học sinh học tốt môn tin học lập trình

Đ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

ỨNG DỤNG QUY HOẠCH ĐỘNG BỒI DƯỠNG HỌC SINH HỌC TỐT MƠN TIN HỌC LẬP TRÌNH MỞ ĐẦU 1.1.do chọn đề tài Đổi phương pháp dạy học nhiệm vụ quan trọng ngành giáo dục nhằm nâng cao chất lượng đào tạo, góp phần thực cơng nghiệp hóa đại hóa đất nước Mơn Tin học đưa vào giảng dạy thức trường THPT( Trung học phổ thông) từ năm học 2006 - 2007, nhiên, thực tế môn Tin học đưa vào tham gia thi học sinh giỏi cấp tỉnh, cấp quốc gia từ lâu: tỉnh đồn Bình Định tổ chức thi Tin học trẻ không chuyên lần vào năm 1995, Hội thi Tin học trẻ toàn quốc tổ chức lần vào năm 1995, kỳ thi học sinh giỏi Tin học quốc gia tổ chức lần vào năm 1995, kỳ thi Olympic Tin học quốc tế tổ chức lần đầu vào năm 1989, thi Olympic Tin học Toàn quốc tổ chức lần vào năm 1994 ) Chúng ta biết để có kết cao kỳ thi tuyển chọn học sinh giỏi môn Tin học nói chung học sinh phải có vốn kiến thức thuật toán để giải toán khó (đặc biệt thuật tốn nâng cao), sau học sinh sử dụng ngơn ngữ lập trình để lập trình dựa vào thuật tốn tìm giải tốn theo u cầu Chương trình giảng dạy sách giáo khoa môn Tin học trường THPT có lượng kiến thức hạn chế vô đơn giản, không đủ sở tảng để học sinh dựa vào vốn kiến thức tham gia kỳ thi học sinh giỏi cấp tỉnh hay cao Câu hỏi đặt ra: "Làm để học sinh đạt kết cao kỳ thi học sinh giỏi môn Tin học trường THPT?" yêu cầu giáo viên giảng dạy môn Tin học trường THPT phải suy nghĩ giải Quy hoạch động (Dynamic Programming) phương pháp hiệu để giải nhiều toán tin học, đặc biệt tốn tối ưu, có số toán sử dụng phương pháp quy hoạch động lại cho hiệu cao hẳn so với nhiều phương pháp khác Số lượng toán tin học giải phương pháp quy hoạch động lớn Số lượng toán tin học giải phương pháp quy hoạch động lớn Số lượng thi áp dụng phương pháp quy hoạch động để giải đề thi học sinh giỏi môn Tin học thường cao Vậy "Có phải tất tốn tối ưu áp dụng phương pháp quy hoạch động để giải?; Làm để nhận dạng tốn áp dụng phương pháp quy hoạch động để giải?; Làm giải tốn phương pháp quy hoạch động? " UAN VAN CHAT LUONG download : add luanvanchat@agmail.com Vì lý tơi xin chọn đề tài: " ỨNG DỤNG QUY HOẠCH ĐỘNG BỒI DƯỠNG HỌC SINH HỌC TỐT MƠN TIN HỌC LẬP TRÌNH" 1.2 Mục đích nghiên cứu Mục tiêu đề tài nghiên cứu phương pháp Quy hoạch động ứng dụng việc bồi dưỡng học sinh, học tốt môn tin học Giúp cho học sinh thi học sinh giỏi khối THPT đạt kết ngày cao Tạo nguồn tài liệu tham khảo thuật toán hỗ trợ cho học sinh, giáo viên dạy tin học 1.3 Đối tượng phạm vi nghiên cứu Phương pháp Quy hoạch động toán tối ưu Chỉ hệ thống tập vận dụng quy hoạch động để giải Chỉ dấu hiệu cụ thể để nhận dạng "Bài tốn" khai thác quy hoạch động q trình giải tốn Chỉ phương án vận dụng quy hoạch động vào giải toán Kiểm tra hiệu biện pháp, phương án quy hoạch động vào giải toán thực tế 1.4 Phương pháp nghiên cứu: Phương pháp nghiên cứu tài liệu Nghiên cứu văn bản, tài liệu đạo Bộ GD&ĐT liên quan đến đổi phương phấp dạy học, đổi đề kiểm tra, danh mục thiết bị dạy học Tin học Thu thập, phân tích tài liệu thông tin liên quan đến quy hoạch động Lựa chọn số toán phương pháp quy hoạch động chương trình tin học từ đến nâng cao Phương pháp nghiên cứu thực nghiệm Thiết kế toán lựa chọn chương trình tin học phương pháp quy hoạch động Dùng ngơn ngữ lập trình Pascal cài đặt tốn, chạy thử nghiệm số liệu để đánh giá kết 1.5 Những điểm sáng kiến kinh nghiệm Sử dụng phương pháp quy hoạch động giải số toán cụ thể lại cho hiệu cao hẳn so với nhiều phương pháp khác NỘI DUNG 2.1.Cơ sở lý luận vấn đề 2.1.1 Một số khái niệm: Bài toán tối ưu: a) Khái niệm: Bài tốn tối ưu gồm có hàm f gọi hàm mục tiêu hay hàm đánh giá; hàm g1, g2, gn cho giá trị logic gọi hàm ràng buộc Yêu cầu toán tìm cấu hình x thỏa mãn tất ràng buộc g1, g2, gn:gi(x) = TRUE (Ɐi:1≤i≤n) x UAN VAN CHAT LUONG download : add luanvanchat@agmail.com tốt nhất, theo nghĩa không tồn cấu hình y khác thỏa mãn hàm ràng buộc mà f(y) tốt f(x) Bài toán tối ưu tốn thường có nhiều nghiệm chấp nhận nghiệm có giá trị đánh giá Mục tiêu đặt tìm nghiệm tối ưu, nghiệm có giá trị đánh giá lớn nhỏ (tối ưu) b) Một số ví dụ tốn tối ưu: Ví dụ 1: Trong mặt phẳng tọa độ Oxy tìm tọa độ (x,y) để tổng x + y đạt giá trị lớn mà x2 + y2 ≤ Ở toán ta thấy: - Hàm mục tiêu: x + y → max - Hàm ràng buộc: x2 + y2 ≤ Ví dụ 2: Bài tốn xếp Ba lơ Có ba lơ chứa tối đa trọng lượng M có n đồ vật (n≤100), đồ vật có trọng lượng wi giá trị bi; M, wi, bi, số nguyên Hãy chọn xếp đồ vật vào ba lô để tổng giá trị ba lô lớn Với toán ta thấy: - Hàm mục tiêu: ∑ bi → max, i = 1, 2, 3, , n - Hàm ràng buộc: ∑ wi ≤M , i = 1, 2, 3, , n Tóm lại, tốn tối ưu phong phú, đa dạng, ứng dụng nhiều thực tế cần biết đa số tốn tối ưu khơng chưa giải Công thức truy hồi (Hệ thức truy hồi): Khái niệm: Công thức truy hồi công thức thể quan hệ bước toán kết bước cuối kết toán 2.1.2 Phương pháp quy hoạch động: Phương pháp chia để trị: "Chia để trị" việc tách toán ban đầu thành toán độc lập, sau giải tốn tổ hợp dần lời giải từ toán nhỏ đến toán ban đầu Phương pháp chia để trị phương pháp thông dụng Tin học Phương pháp chia để trị thường áp dụng cho tốn có chất đệ quy (bài tốn P có chất đệ quy tốn P giải lời giải tốn P' có dạng giống P Tuy nhiên, cần lưu ý rằng: P' có dạng giống P theo nghĩa P' phải nhỏ P, dễ giải P việc giải khơng cần dùng tới P) Giải thuật dùng để giải tốn có chất đệ quy gọi giải thuật đệ quy UAN VAN CHAT LUONG download : add luanvanchat@agmail.com Khái niệm phương pháp quy hoạch động: a) Khái niệm Phương pháp quy hoạch động (Dynamic Programming) kỹ thuật nhằm đơn giản hóa việc tính tốn cơng thức truy hồi cách lưu tịn hay phần kết tính tốn bước trước với mục đích sử dụng lại Như vậy, Quy hoạch động = Chia để trị + Mảng (lưu lại kết quả) Phương pháp quy hoạch động nhà toán học người Mỹ Richard Bellman (1920-1984) phát minh năm 1953 Phương pháp dùng để giải tốn tối ưu có chất đệ qui, tức tìm phương án tối ưu cho tốn đưa tìm phương án tối ưu số hữu hạn toán Điểm khác quy hoạch động phương pháp đệ quy là: - Phương pháp đệ quy giải toán theo hướng top-down, nghĩa để giải toán ban đầu, ta phải giải tất tốn Đây phương pháp hay, nhiên phương pháp gặp hạn chế mặt thời gian, tốc độ phải tính tính lại nhiều lần số tốn giống gần - Phương pháp quy hoạch động sử dụng nguyên lý bottom-up, nghĩa "đi từ lên" Đầu tiên, ta phải giải toán đơn giản nhất, tìm nghiệm Sau kết hợp tốn lại tìm lời giải cho tốn lớn giải toán yêu cầu Với phương pháp này, toán sau giải xong lưu trữ lại sử dụng cần Do tiết kiệm nhớ cải thiện tốc độ b) Đặc điểm chung quy hoạch động: Quy hoạch động việc giải tất toán nhỏ (bài tốn sơ) để từ bước giải toán lớn giải toán lớn (bài toán ban đầu) Quy hoạch động cần phải có bảng phương án Ý tưởng phương pháp quy hoạch động tránh tính tốn lại tốn xét, nói cách khác phương pháp quy hoạch động thể sức mạnh nguyên lý chia để trị đến cao độ Tóm lại: - Quy hoạch động dùng để giải toán tối ưu theo nguyên lý "chia để trị" thực chất phương pháp cải tiến phương pháp giải toán theo hướng đệ quy - Quy hoạch động làm giảm độ phức tạp, giảm thời gian giải toán - Quy hoạch động thường tiếp cần theo hướng từ lên (bottom - up) Các cách thực phương pháp quy hoạch động Thường dùng cách tiếp cận sau: - Tiếp cận từ lên (bottom up) - Tiếp cận từ xuống (top down) UAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cách tiếp cận từ lên hiệu nên thường sử dụng nhiều Các yêu cầu toán tối ưu sử dụng phương pháp quy hoạch động Một toán tối ưu muốn giải phương pháp quy hoạch động tốn tối ưu có đặc điểm đây: - Bài toán lớn phải phân rã nhiều toán con, mà phối hợp lời giải tốn cho ta lời giải tốn lớn - Vì quy hoạch động giải tất toán nên không đủ không gian lý lưu trữ kết (bộ nhớ, đĩa, ) để phối hợp chúng phương phap quy hoạch động khơng thể thực - Q trình từ tốn sở tìm lời giải tốn ban đầu phải qua hữu hạn bước 2.1.3 Các nguyên tắc quy hoạch động - Nguyên tắc đánh số giai đoạn từ lên - Ngun tắc thơng số hóa toán - Nguyên tắc lồng - Nguyên tắc tối ưu Bellman Ta biết quy hoạch động thường dùng để giải toán tối ưu - toán yêu cầu tìm giải pháp tốt giải pháp tìm Cơ sở quy hoạch động toán tối ưu nguyên lý tối ưu Bellman Nguyên lý tối ưu Bellman phát biểu sau: "Dãy tối ưu định q trình định nhiều giai đoạn có thuộc tính dù trạng thái định ban đầu nào, định lại phải tạo thành cách giải tối ưu không phụ thuộc vào trạng thái sinh từ định ban đầu" Hay nói cách khác: "Giải pháp tối ưu cho toán P cần chưa giải pháp tối ưu cho toán P" Do vậy, giải toán theo quy hoạch động dùng phương pháp gồm nhiều bước tiến hành điều kiện cần để giải pháp tối ưu xây dựng từu nghiệm tối ưu bước trước 2.1.4 Các bước giải toán tối ưu quy hoạch động Bước 1: Lập công thức truy hồi Bước 2: Tổ chức liệu chương trình Bước 3: Truy vết, tìm nghiệm tốn dựa vào bảng phương án 2.2.Thực trạng vấn đề 2.2.1 Ưu điểm: Tiết kiệm thời gian thực khơng cần phải tính tính lại nhiều lần số toán giống UAN VAN CHAT LUONG download : add luanvanchat@agmail.com 2.2.2 Hạn chế: Việc tìm cơng thức truy hồi tìm cách phân rã tốn nhiều địi hỏi phân tích tổng hợp cơng phu, dễ sai sót, khó nhận thích hợp, địi hỏi nhiều thời gian suy nghĩ Đồng thời lúc kết hợp lời giải toán cho kết toán lớn Khi bảng lưu trữ địi hỏi mảng hai, ba chiều khó xử lý liệu với kích cỡ chiều lớn đến hàng trăm Có tốn tối ưu khơng thể giải quy hoạch động Tóm lại: Khơng phải lúc việc kết hợp tốn cho ta kết toán lớn Hay nói cách khác việc tìm kiếm "Cơng thức truy hồi" khó khăn Ngồi ra, số lượng tốn cần lưu trữ lớn, khơng chấp nhận liệu nhớ máy tính khơng cho phép Quy hoạch động phương pháp hay hiệu quả, giải hầu hết toán tối ưu Tuy nhiên, giải toán theo hướng quy hoạch động, ta cần phải tìm cơng thức truy hồi thật xác chứng minh độ xác tin cậy Cho đến nay, chưa có định lý cho biết xác tốn tối ưu giải hiệu quy hoạch động Tuy nhiên, để biết tốn giải phương pháp quy hoạch động hay khơng, ta tự đặt câu hỏi: "Một nghiệm tối ưu tốn lớn có phải phối hợp nghiệm tối ưu tốn hay khơng?" "Liệu lưu trữ nghiệm tốn hình thức để phối hợp tìm nghiệm tốn lớn?" 2.3.Thực tiễn áp dụng: 2.3.1 Bài tốn xếp ba lơ - Phát biểu toán Một tên trộm đột nhập cửa hàng tìm thấy n đồ vật có trọng lượng giá trị khác Tên trộm mang theo túi có trọng lượng tối đa M, M nguyên Hãy chọn đồ vật (mỗi vật chọn lần) mà tên trộm cho vào túi mang cho tổng giá trị lớn Phân tích, xử lý tốn Ký hiệu: w(i) trọng lượng vật i, i = 1,…,n v(i) giá trị vật i, i = 1,…m Mơ hình tốn học tốn quy hoạch tuyến tính nhị phân: Tìm vectơ x = [x(1),…, x(n)] thỏa: UAN VAN CHAT LUONG download : add luanvanchat@agmail.com f(x) = v(1).x(1) + v(2).x(2) + … + v(n).x(n)  max w(1).x(1) + w(2).x(2) + … + w(n).x(n) ≤ M x(i) = 0, 1; i = 1,…n Với giá trị i L: i = 0, 1, 2,…, n L = 0, 1, 2, … M Gọi F(i , L) tổng giá trị lớn chọn i đồ vật (1, …i) với trọng lượng tối đa L Lập công thức truy hồi: - Xác định tham số: Bài tốn có tham số: số đồ vật : i = 0, 1, 2,…, n khối lượng giới hạn L = 0,1,2,…M - Công thức truy hồi: + Trường hợp w(i) > L: F(i, L) = F(i – 1, L) + Trường hợp w(i) ≤ L: Nếu đồ vật thứ i khơng chọn thì: F(i, L) = F(i – 1, L) Nếu đồ vật thứ i chọn thì: F(i, L) = F(i – 1, L – w(i)) + v(i)  F(i, L) = max{ F(i – 1, L): F(i – 1, L – w(i)) + v(i)} Điều kiện đầu F(0,L) = 0, L = 0,…M F(i,0) = 0, i = 0,…n Tổ chức liệu - Lập bảng hai chiều F(i, L): L i … n - Điền giá trị đầu: L i UAN VAN CHAT LUONG download : add luanvanchat@agmail.com … n … Sử dụng công thức truy hồi tính tốn F(i, L) theo thứ tự i=1,2,…n Truy vết tìm phương án tối ưu Bắt đầu từ F(n, M) dòng n ta dò ngược dòng theo nguyên tắc : * Nếu F(i, L) ≠ F(i – 1, L), đồ vật thứ i chọn, ta truy tiếp ô F(i – 1, L-w(i)) * Nếu F(i, L) = F(i – 1, L), đồ vật thứ i không chọn, ta truy tiếp ô F(i – 1, L) Độ phức tạp: (số phép tính để thực thuật toán) Ký hiệu T(n, M) độ phức tạp để tính F(n, M) T(n, M) = O(n, M) - Cài đặt chương trình: #include #include int mang[500][500],i,j,L,d,s,sl,kt; int v[500],w[500],kq[500],M,n; FILE *f,*g; void firstline() { f=fopen("balo.inp","rt"); fscanf(f,"%d,",&sl); g=fopen("balo.out","wt"); } void docfile() { fscanf(f,"%d%d,",&n,&M); for (i=1; i

Ngày đăng: 28/11/2022, 15:48

Hình ảnh liên quan

Mơ hình tốn học của bài tốn quy hoạch tuyến tính: Tìm vectơ x = [x(1),…, x(n)] thỏa: - (SKKN HAY NHẤT) ứng dụng quy hoạch động bồi dưỡng học sinh học tốt môn tin học lập trình

h.

ình tốn học của bài tốn quy hoạch tuyến tính: Tìm vectơ x = [x(1),…, x(n)] thỏa: Xem tại trang 11 của tài liệu.

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

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

Tài liệu liên quan