1. Trang chủ
  2. » Thể loại khác

Bài toán đối sánh mẫu sử dụng giải thuật di truyền

71 309 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 71
Dung lượng 1,01 MB

Nội dung

ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CNTT VÀ TRUYỀN THÔNG NGÂN HOÀNG MỸ LINH BÀI TOÁN ĐỐI SÁNH MẪU SỬ DỤNG GIẢI THUẬT DI TRUYỀN LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN - 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CNTT VÀ TRUYỀN THÔNG NGÂN HOÀNG MỸ LINH BÀI TOÁN ĐỐI SÁNH MẪU SỬ DỤNG GIẢI THUẬT DI TRUYỀN Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Ngƣời hƣớng dẫn khoa học: TS VŨ MẠNH XUÂN THÁI NGUYÊN - 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn i LỜI CAM ĐOAN Tôi xin cam đoan luận văn tự thân tìm hiểu, nghiên cứu dƣới hƣớng dẫn TS Vũ Mạnh Xuân Các chƣơng trình thực nghiệm thân lập trình, kết hoàn toàn trung thực Các tài liệu tham khảo đƣợc trích dẫn thích đầy đủ TÁC GIẢ LUẬN VĂN Ngân Hoàng Mỹ Linh Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ii LỜI CẢM ƠN Tôi xin bày tỏ lời cảm ơn chân thành tới tập thể thầy cô giáo Viện công nghệ thông tin – Viện Hàn lâm Khoa học Công nghệ Việt Nam, thầy cô giáo Trƣờng Đại học Công nghệ thông tin truyền thông - Đại học Thái Nguyên dạy dỗ suốt trình học tập chƣơng trình cao học trƣờng Đặc biệt xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo TS Vũ Mạnh Xuân quan tâm, định hƣớng đƣa góp ý, gợi ý, chỉnh sửa quý báu cho trình làm luận văn tốt nghiệp Cuối cùng, xin chân thành cảm ơn bạn bè đồng nghiệp, gia đình ngƣời thân quan tâm, giúp đỡ chia sẻ với suốt trình làm luận văn tốt nghiệp Thái Nguyên, tháng 08 năm 2015 Ngân Hoàng Mỹ Linh Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn iii MỤC LỤC MỞ ĐẦU .1 CHƢƠNG MỘT SỐ THUẬT TOÁN ĐỐI SÁNH MẪU .3 1.1 Giới thiệu toán đối sánh mẫu 1.2 Phát biểu toán 1.3 Một số thuật toán đối sánh mẫu 1.3.1 Thuật toán Brute Force 1.3.2 Thuật toán Knuth-Morris-Pratt 1.3.3 Thuật toán Automat hữu hạn 1.3.4 Thuật toán Boyer-Moore 1.3.5 Thuật toán Karp-Rabin 10 1.3.6 Một số thuật toán khác 11 CHƢƠNG GIỚI THIỆU VỀ GIẢI THUẬT DI TRUYỀN 13 2.1 Tổng quan chung giải thuật di truyền (GA) 13 2.1.1 Giới thiệu 13 2.1.2 Các vấn đề GA 15 2.1.3 Sự khác biệt GA với giải thuật khác 18 2.2 Giải thuật di truyền kinh điển 20 2.2.1 Giới thiệu 20 2.2.2 Các toán tử di truyền .21 2.2.3 Các bƣớc quan trọng việc áp dụng giải thuật di truyền kinh điển 26 2.2.4 Ví dụ 27 CHƢƠNG BÀI TOÁN ĐỐI SÁNH MẪU SỬ DỤNG GIẢI THUẬT DI TRUYỀN 30 3.1 Bài toán đối sánh mẫu file văn 30 3.1.1 Phân tích thuật toán 31 3.1.2 Các trình hoạt động chƣơng trình 36 3.1.3 Kết đánh giá 40 3.2 Bài toán đối sánh mẫu nhiều file văn 55 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn iv 3.2.1 Phát biểu toán 55 3.2.2 Kết thử nghiệm 56 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 63 *) Kết luận 63 *) Hƣớng nghiên cứu phát triển 63 TÀI LIỆU THAM KHẢO 64 DANH MỤC THUẬT NGỮ, TỪ VIẾT TẮT, KÍ HIỆU GA Giải thuật di truyền NST Nhiễm sắc thể Population Quần thể Pattern matching Đối sánh mẫu TSP Bài toán ngƣời bán hàng Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn v DANH MỤC CÁC HÌNH VẼ Hình 1.1 : Sơ đồ automat Hình 1.2 Mis-match so sánh vị trí j Hình 1.3 Good-suffix shift, trƣờng hợp u lại xuất x Hình 1.4 Good-suffix shift, trƣờng hợp có suffix u xuất x Hình 1.5 Bad-character shift Hình 1.6 Hình 2.1 Sơ đồ giải thuật GA 14 Hình 3.1 Giao diện chƣơng trình .40 Hình 3.2 Giao diện chƣơng trình mở rộng .57 DANH MỤC BẢNG BIỂU Bảng 2.1 Bảng quần thể khởi tạo ban đầu .28 Bảng 3.1 Ví dụ biểu diễn cá thể 36 Bảng 3.2 Kết chƣơng trình với độ xác 100% 42 Bảng 3.3 Kết chƣơng trình với độ xác 90% 43 Bảng 3.4 Kết chƣơng trình với độ xác 80% 44 Bảng 3.5 Kết chƣơng trình với tỉ lệ a – b: 0.5 – 0.5 46 Bảng 3.6 Kết chƣơng trình với tỉ lệ a – b: 0.6 – 0.4 46 Bảng 3.7 Kết chƣơng trình với tỉ lệ a – b: 0.8 – 0.2 47 Bảng 3.8 Kết chƣơng trình với tỉ lệ a – b: 0.9 – 0.1 48 Bảng 3.9 Kết chƣơng trình mở rộng với độ xác 100% 58 Bảng 3.10 Kết chƣơng trình mở rộng với độ xác 90% 59 Bảng 3.11 Kết chƣơng trình mở rộng với độ xác 80% 60 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn MỞ ĐẦU Hiện nay, với phát triển không ngừng ngành khoa học máy tính việc hệ thống thông tin đƣợc lƣu trữ ngày đồ sộ Đối với kho thông tin lớn nhƣ vậy, việc ngƣời dùng muốn tra cứu, truy vấn liệu ngày khó khăn Bên cạnh đó, lƣợng thông tin phát triển nhiều, việc tổ chức, quản lí chúng để kiểm soát đƣợc việc bùng nổ thông tin vấn đề cần quan tâm nhà quản lí Hiện có nhiều công cụ truy vấn hỗ trợ cho ngƣời dùng phần việc tìm kiếm: * Công cụ tìm kiếm wikipedia: Chỉ tìm tên tựa văn trùng hợp với từ khóa * Công cụ tìm kiếm phần mềm ứng dụng Microsoft word: Công cụ FIND cho phép ngƣời dùng tìm kiếm cụm từ nội bên hồ sơ, văn * Công cụ tìm kiếm hệ điều hành Microsoft Windows Adobe Reader: Cả hai công cụ cho phép tìm kiếm hồ sơ có chứa từ khóa hồ sơ, thƣ mục hay ổ đĩa máy tính Tuy nhiên, công cụ tồn hạn chế định.Trong đó, công việc tìm kiếm, truy vấn liệu để nhanh chóng hiệu vấn đề cấp thiết đƣợc nhiều ngƣời dùng quan tâm Các thông tin đƣợc lƣu trữ máy tính lớn nhƣng đa số đƣợc lƣu dƣới dạng văn bản, có nhiều công cụ tìm kiếm nhƣng chế chung chúng dựa phƣơng pháp sử dụng chuỗi Đối sánh mẫu (pattern matching) toán quan trọng việc hỗ trợ tìm kiếm văn đƣợc áp dụng để tìm xâu khớp với mẫu văn tìm văn có chứa mẫu Giải thuật di truyền (GA – Genetic Algorithms) kỹ thuật tính toán mềm nhằm tìm kiếm giải pháp thích hợp cho toán tối ƣu tổ hợp, vận dụng nguyên lý tiến hóa nhƣ lai ghép, đột biến, chọn lọc Ngày nay, Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn giải thuật di truyền đƣợc ứng dụng rộng rãi lĩnh vực nhƣ tin sinh học, khoa học máy tính, trí tuệ nhân tạo, tài số ngành khác Đề tài “Bài toán đối sánh mẫu sử dụng giải thuật di truyền” nhằm mục đích nghiên cứu toán đối sánh mẫu, giải thuật di truyền ứng dụng giải thuật di truyền đối sánh mẫu tìm kiếm văn Ngoài phần mở đầu kết luận, luận văn gồm có chƣơng: - Chƣơng 1: Một số thuật toán đối sánh mẫu - Chƣơng 2: Giới thiệu giải thuật di truyền - Chƣơng 3: Bài toán đối sánh mẫu sử dụng giải thuật di truyền Phƣơng pháp nghiên cứu Trong luận văn, học viên sử dụng phƣơng pháp nghiên cứu sau: - Phƣơng pháp nghiên cứu lý thuyết: Tìm tòi, tổng hợp tài liệu, hệ thống lại kiến thức, tìm hiểu khái niệm, thuật toán sử dụng luận văn - Lập trình thử nghiệm: Luận văn sử dụng ngôn ngữ lập trình Visual Studio C# 2012 để viết chƣơng trình thử nghiệm - Các phƣơng pháp so sánh Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn CHƢƠNG MỘT SỐ THUẬT TOÁN ĐỐI SÁNH MẪU Chương giới thiệu phát biểu toán đối sánh mẫu, tìm hiểu số thuật toán sử dụng để giải toán đối sánh mẫu 1.1 Giới thiệu toán đối sánh mẫu Trong khoa học máy tính, đối sánh mẫu hành động kiểm tra xem trình tự kí tự có diện xâu cho trƣớc hay không Ngƣợc lại với nhận dạng mẫu, đối sánh mẫu thƣờng có xác Dạng phổ biến toán đối sánh mẫu là: Cho trƣớc nguồn tìm kiếm tập D văn bản, cho câu hỏi dạng văn q (thƣờng từ, xâu văn ngắn), tìm tất văn thuộc D mà có chứa q Trong nhiều trƣờng hợp (chẳng hạn, tìm kiếm thông qua máy tìm kiếm) q đƣợc gọi “truy vấn” toán có tên gọi “tìm kiếm theo truy vấn” Để tìm đƣợc văn có chứa văn truy vấn q, hệ thống tìm kiếm cần phải kiểm tra văn truy vấn q có xâu văn thuộc tập D hay không (sánh mẫu) đƣa văn đáp ứng Trong nhiều trƣờng hợp, toán đòi hỏi tìm tất vị trí xâu văn trùng với q Đồng thời, điều kiện tìm kiếm đƣợc làm “xấp xỉ” theo nghĩa văn kết không cần chứa q mà cần “liên quan” tới q, nghĩa có xâu văn xấp xỉ q Có thể thấy, máy tìm kiếm sử dụng chế tìm kiếm xấp xỉ mà văn kết tìm kiếm không chứa hoàn toàn xác văn truy vấn [6] 1.2 Phát biểu toán Đối sánh mẫu toán xử lý văn bản, toán yêu cầu tìm nhiều vị trí xuất mẫu q văn S Mẫu q văn S chuỗi có độ dài M N (M ≤ N); q S xâu ký tự bảng chữ Σ có δ ký tự Bài toán sánh mẫu tổng quát đƣợc phát biểu nhƣ sau: Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 50 Dƣới quần thể số quần thể tiến hóa tốt đƣợc chọn quần thể chạy với tỉ lệ 0.5 – 0.5 0.9 – 0.1: - Tỉ lệ 0.5 - 0.5: Quần thể khởi tạo 0 0 0 0 1 0 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 1 0 0 1 1 0 1 0 1 0 0 1 1 0 1 1 1 1 1 0 1 1 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 51 1 1 1 0 1 1 0 1 1 Cá thể Vị trí Hàm mục tiêu 516 0.190476 4574 0.166667 2509 0.214286 3388 0.142857 3870 0.166667 6649 0.119048 6191 0.214286 3297 0.142857 6940 0.166667 10 5606 0.119048 11 3271 0.190476 12 1183 0.214286 13 2319 0.142857 14 3959 0.238095 15 7094 0.119048 16 1021 0.119048 17 5816 0.142857 18 4792 0.166667 19 6179 0.238095 20 6695 0.190476 21 7129 0.214286 22 207 0.238095 23 993 0.214286 24 6347 0.142857 25 7075 0.238095 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 52 26 6764 0.190476 Cá thể khởi tạo tốt có giá trị: 0.238095 cá thể thứ 14 vị trí 3959 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: hàm mục tiêu đạt giá trị tốt vị trí văn 684 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt vị trí văn 684 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: 10 hàm mục tiêu đạt giá trị tốt vị trí văn 684 Thế hệ thứ: 11 hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: 12 hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: 13 hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: 14 hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thế hệ thứ: 15 hàm mục tiêu đạt giá trị tốt 0.5 vị trí văn Thời gian tiến hóa hệ: 0.0996207 giây - Tỉ lệ 0.9 – 0.1: Quần thể khởi tạo 1 0 1 1 1 1 0 0 1 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 0 0 0 1 0 1 1 0 1 1 1 1 0 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 53 0 1 0 1 1 0 1 1 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 0 0 0 1 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 0 1 1 0 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 0 Cá thể Vị trí Hàm mục tiêu 6326 0.309524 2882 0.433333 5989 0.219048 3631 0.22381 4205 0.22381 835 0.214286 3693 0.342857 5997 0.438095 1326 0.604762 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 54 10 5091 0.347619 11 540 12 2885 0.566667 13 7510 0.17619 14 34 15 3056 0.304762 16 6878 0.214286 17 2889 0.733333 18 5762 0.3 19 6391 0.214286 20 3677 0.309524 21 7063 0.219048 22 6167 0.180952 23 2971 0.433333 24 5046 0.219048 25 7359 0.257143 26 2978 0.347619 0.266667 0.261905 Cá thể khởi tạo tốt có giá trị: 0.733333 cá thể thứ 17 vị trí 2889 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn bả 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: hàm mục tiêu đạt giá trị tốt 0.861905 vị trí văn 2894 Thế hệ thứ: 10 hàm mục tiêu đạt giá trị tốt vị trí văn Số hóa Trung tâm Học liệu – ĐHTN 2893 http://www.lrc.tnu.edu.vn 55 Thế hệ thứ: 11 hàm mục tiêu đạt giá trị tốt vị trí văn 2893 Thế hệ thứ: 12 hàm mục tiêu đạt giá trị tốt vị trí văn 2893 Thế hệ thứ: 13 hàm mục tiêu đạt giá trị tốt vị trí văn 2893 Thế hệ thứ: 14 hàm mục tiêu đạt giá trị tốt vị trí văn 2893 Thế hệ thứ: 15 hàm mục tiêu đạt giá trị tốt vị trí văn 2893 Thời gian tiến hóa hệ: 0.0804789 giây 3.2 Bài toán đối sánh mẫu nhiều file văn 3.2.1 Phát biểu toán Với mục đích nâng cao hiệu chƣơng trình, ta mở rộng phạm vi tìm kiếm tập văn bản: D = {d1,…, dM}, di file văn có định dạng *.txt Muốn biết đƣợc văn thuộc D có chứa mẫu q hay không, hệ thống tìm kiếm cần kiểm tra mẫu q có xâu văn thuộc tập D hay không (sánh mẫu) đƣa văn đáp ứng Trong nhiều trƣờng hợp, toán đòi hỏi tìm tất vị trí xâu văn trùng với q Với thuật toán tìm kiếm tuyến tính, trƣờng hợp số phần tử D độ dài văn lớn dẫn đến khó tìm kết thời gian ngắn Giải thuật di truyền với thời gian tiến hóa quần thể ngắn giúp ta giải tốt vấn đề Ta phát biểu toán đối sánh mẫu nhiều file văn nhƣ sau: “Cho tập D văn mẫu đối sánh q Tìm văn di (i=1 M) có chứa mẫu đối sánh q vị trí xuất mẫu văn tìm được” Với mục đích thử nghiệm, chƣơng trình sử dụng tập văn gồm 10 file văn bản, văn có độ dài khoảng 4000 kí tự, input output toán nhƣ sau: Input: Tập D = {d1,… ,d10}, mẫu đối sánh q Các file thuộc tập D có định dạng: *.txt Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 56 Output: Các file di có chứa mẫu q vị trí xuất mẫu file di *) Phân tích toán Trong toán này, xây dựng trình thực GA giống với toán mục 3.1 luận văn Tuy nhiên, toán có thay đổi số lƣợng cá thể quần thể ban đầu, cách sử dụng vòng lặp số vòng lặp lần thực giải thuật Với 10 file liệu vào, chƣơng trình tìm kiếm mẫu q lần lƣợt file Tại file di chƣơng trình thực GA 25 lần tức khởi tạo tiến hóa 25 lần, nhiên chƣơng trình không thực hết 25 lần lặp lần lặp tìm đƣợc vị trí xuất mẫu q thực file Kết file đƣợc kết luận vùng hiển thị kết giao diện chƣơng trình, với file KETQUA.txt ghi lại toàn quần thể khởi tạo, tiến hóa kết luận file File KETQUA.txt đƣợc lƣu tự động thƣ mục \bin\Debug thƣ mục nơi cài đặt chƣơng trình Về số cá thể khởi tạo ban đầu: Chƣơng trình khởi tạo quần thể ban đầu 100 cá thể, qua nhiều lần chạy thử nghiệm ta thấy điều giúp cho việc tìm kiếm hiệu hơn, có ý nghĩa file văn có số lần xuất mẫu 3.2.2 Kết thử nghiệm 3.2.2.1 Giao diện chƣơng trình Giao diện chƣơng trình nhƣ sau: Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 57 Hình 3.2 Giao diện chương trình mở rộng *) Chức đối tƣợng giao diện: - Ô Độ xác: thiết lập độ xác cho kết tìm kiếm - Ô Số hệ tiến hóa: đặt số hệ tiến hóa cho quần thể - Ô Textbox nút thực hiện: nhập mẫu tìm kiếm q vào textbox nhấn nút Thực để chạy chƣơng trình - Vùng ListBox kết tìm kiếm: hiển thị kết tìm kiếm *) Thực chƣơng trình: Khi chạy chƣơng trình, ta thực điền đầy đủ thông số, nhập mẫu tìm kiếm từ, cụm từ vào ô Textbox sau nhấn nút Thực Chƣơng trình đọc lần lƣợt file từ d1.txt d10.txt, file đƣợc lƣu thƣ mục \bin\Debug thƣ mục nơi cài đặt chƣơng trình Mẫu q lần lƣợt đƣợc tìm văn này, tìm đƣợc in thông báo lên ListBox file thứ di có chứa mẫu q vị trí tìm đƣợc Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 58 3.2.2.2 Một số kết Để thử nghiệm ta tạo file văn nhƣ sau: file d1 d10 chứa đoạn văn với độ dài khác nhau, sau thêm mẫu truy vấn q = “genetic algorithms” vào lần lƣợt file văn vị trí ngẫu nhiên nhƣ sau: d1 vị trí 27; d2 vị trí 2289; d3 vị trí 799; d4 vị trí 806; d5 vị trí 1195; d6 vị trí 774; d7 vị trí 1155; d8 vị trí 2637; d9 vị trí 4312; d10 vị trí 505 Sau kết chạy chƣơng trình với mức độ xác: 100%, 90% 80% *) Độ xác : (100%) Bảng 3.9 Kết chương trình mở rộng với độ xác 100% File di Lần lặp tìm đƣợc vị trí xuất mẫu 1 6 10 Cá thể tốt Khởi tạo Thế hệ cuối 1.0000 x = 27 0.4444 x = 454 0.7778 x = 795 0.9444 x = 805 0.3889 x = 2220 0.4444 x = 1585 1.0000 x = 1155 1.0000 x = 2637 0.4444 x = 3726 0.4444 x = 515 1.0000 x = 27 1.0000 x = 2289 1.0000 x = 799 1.0000 x = 806 1.0000 x = 1195 1.0000 x = 774 0.6667 x = 1161 0.4444 x = 1092 1.0000 x = 4312 1.0000 x = 505 Thời gian tiến hóa (s) Đánh giá 0.26 Chính xác 0.22 Chính xác 0.24 Chính xác 0.21 Chính xác 0.24 Chính xác 0.26 Chính xác 0.23 Chính xác 0.24 Chính xác 0.22 Chính xác 0.24 Chính xác Chƣơng trình cho kết tốt lần chạy với việc tìm đƣợc vị trí xuất mẫu tất file Với file thực giải thuật GA Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 59 khoảng đến lần tìm đƣợc kết quả, với thời gian khởi tạo tiến hóa quần thể từ 0.21 đến 0.26 giây *) Độ xác : 0.9 (90%) Bảng 3.10 Kết chương trình mở rộng với độ xác 90% File di Lần lặp tìm đƣợc vị trí xuất mẫu Cá thể tốt Thời gian tiến hóa (s) Đánh giá Khởi tạo Thế hệ cuối 0.4444 x = 230 1.0000 x = 27 0.22 Chính xác 0.8889 x = 2287 0.9444 x = 2288 0.20 Đạt yêu cầu 0.7778 x = 795 1.0000 x = 799 0.23 Chính xác 0.9444 x = 805 0.6667 x = 800 0.20 Đạt yêu cầu 0.3889 x = 707 0.9444 x = 1194 0.21 Đạt yêu cầu 6 0.4444 x = 2277 0.9444 x = 775 0.24 Đạt yêu cầu 0.6667 x = 1161 1.0000 x = 1155 0.17 Chính xác 0.8889 x = 2635 1.0000 x = 2637 0.23 Chính xác 0.7222 x = 4307 1.0000 x = 4312 0.20 Chính xác 10 0.6667 x = 499 1.0000 x = 505 0.22 Chính xác Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 60 Với độ xác 0.9 chƣơng trình cần số lần lặp so với độ xác 1, cần từ đến lần lặp cho file, với thời gian tiến hóa quần thể đạt ngƣỡng từ 0.17 đến 0.24 giây Trong 10 file tìm kiếm, chƣơng trình cho kết xác vị trí xuất mẫu 6/10 file *) Độ xác : 0.8 (80%) Bảng 3.11 Kết chương trình mở rộng với độ xác 80% File di Lần lặp tìm đƣợc vị trí xuất mẫu Cá thể tốt Thời gian tiến hóa (s) Đánh giá Khởi tạo Thế hệ cuối 0.8889 x = 25 0.8889 x = 25 0.26 Đạt yêu cầu 0.3889 x = 2444 1.0000 x = 2289 0.23 Chính xác 0.8333 x = 796 1.0000 x = 799 0.23 Chính xác 0.9444 x = 807 0.9444 x = 807 0.20 Đạt yêu cầu 0.4444 x = 683 0.9444 x = 1196 0.21 Đạt yêu cầu 0.5556 x = 766 0.9444 x = 775 0.25 Đạt yêu cầu 0.9444 x = 1154 0.9444 x = 1154 0.25 Đạt yêu cầu 0.4444 x = 1092 0.8333 x = 2634 0.27 Đạt yêu cầu 0.3889 x = 2843 0.8333 x = 4315 0.24 Đạt yêu cầu 10 0.4444 0.8889 0.24 Đạt yêu cầu Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 61 x = 2455 x = 503 Với độ xác 0.8, chƣơng trình cần lặp từ đến lần cho file tìm đƣợc kết Các kết đạt đƣợc đạt yêu cầu, đặc biệt file thứ chƣơng trình tìm đƣợc xác vị trí mẫu; với khoảng thời gian từ 0.20 đến 0.26 giây Những kết tƣơng ứng với độ xác cho ta thấy, độ xác cao chƣơng trình chạy lâu hơn, cần nhiều lần lặp ngƣợc lại độ xác giảm chƣơng trình thực lần lặp kết thời gian chạy chƣơng trình giảm đáng kể GA cho kết lần chạy khác nhau, điều với tính chất Những kết đa số lần thử nghiệm đạt kết tốt, chƣơng trình tìm đƣợc vị trí xuất mẫu cho dù mẫu tìm kiếm xuất lần văn tập D, nhiên ta tránh khỏi lần thử nghiệm chƣơng trình không cho kết xác, ví dụ 10 file xuất mẫu nhƣng tìm đƣợc 7, file chứa mẫu, điều xảy với xác suất cao với file văn có số kí tự lớn mẫu tìm kiếm văn lại xuất Về thời gian khởi tạo tiến hóa quần thể, chƣơng trình toán tăng lên so với chƣơng trình luận văn, dễ nhận chƣơng trình ta tăng số cá thể quần thể khởi tạo lên 100 cá thể (so với 26 cá thể chƣơng trình chính), điều làm thời gian thực toán tử GA nhiều (đúng với nhận xét quần thể khởi tạo trình bày: số cá thể quần thể khởi tạo dẫn đến khó tìm đƣợc cá thể tốt nhất, ngƣợc lại số cá thể lớn khả tìm đƣợc cá thể tốt tăng lên nhƣng chƣơng trình chạy chậm đi) Tuy vậy, thời gian thực chƣơng trình phụ thuộc vào độ dài ngắn mẫu tìm kiếm Với mẫu tìm kiếm không xuất tất văn Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 62 tập D chƣơng trình phải thực nhiều lần giải thuật GA cho file, dẫn đến thời gian thực chƣơng trình tăng cao Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 63 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN *) Kết luận Đề tài đạt đƣợc số kết nhƣ sau : - Tìm hiểu đƣợc số phƣơng pháp đối sánh mẫu bản, nắm đƣợc tƣ tƣởng thuật toán - Bƣớc đầu đƣa đƣợc giải pháp giải toán đối sánh mẫu cách áp dụng giải thuật di truyền, lớp giải thuật xác suất đƣa đƣợc kết chấp nhận đƣợc - Giải đƣợc toán tìm kiếm mẫu nhiều file văn bản, với kết xác so với tìm kiếm tuần tự, với chi phí thời gian ngắn *) Hƣớng nghiên cứu phát triển - Nâng cấp toán cho tốn thời gian mà cho kết xác - Kết hợp GA với số giải thuật hiệu khác nhằm tăng hiệu toán - Có thể tiến hành đối sánh, tìm kiếm nhiều định dạng file khác nhau, ví dụ file doc, ppt, pdf… - Sử dụng đƣợc toán không gian tìm kiếm lớn Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 64 TÀI LIỆU THAM KHẢO [1] Nguyễn Thị Ngọc Chi, Trần Kim Hƣơng (2015) “Giải Thuật Di Truyền (Gas) ứng dụng”, Hội nghị NCKH khoa Toán – Tin, tr.94 – 101 [2] Mr.Datnh(2014),“Thuật toán Boyer-Moore”,Http://laptrinh.vn,ngày 21/08/2014 [3] Nguyễn Thị Thuý Hoài (2008), Thuật giải di truyền ứng dụng, Trƣờng Đại học Sƣ Phạm – ĐH Đà Nẵng, Báo cáo “ Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6, tr.266 – 270 [4] Nguyễn Hữu Mùi (2006), “Thuật toán di truyền ứng dụng”, Nxb ĐHSP, Hà Nội [5] Nguyễn Văn Quyết (2009), Bài toán tìm kiếm văn sử dụng giải thuật di truyền, Luận văn thạc sĩ Khoa học máy tính, Đại học công nghệ thông tin truyền thông – ĐHTN [6] Nguyễn Đức Thiện (2010), “Thuật toán đối đối sánh mẫu (pattern matching) văn bản”, Http://ndthien.blogspot.com, ngày 14/04/2010 [7] Nguyễn Thị Thúy (2012), Một họ thuật toán đối sánh mẫu Wu-Manber thực nghiệm, Luận văn thạc sĩ Hệ thống thông tin, Trƣờng đại học Công nghệ - Đại học Quốc Gia Hà Nội [8] Mai Ngọc Tùng (2012), Nghiên cứu ứng dụng giải thuật di truyền để tìm kiếm thông tin văn bản, Bài thu hoạch môn học phƣơng pháp nghiên cứu khoa học tin học, Đại học Quốc gia Thành phố Hồ Chí Minh [9] Vũ Mạnh Xuân (2012), Bài giảng giải thuật di truyền, Trƣờng Đại học Sƣ Phạm – ĐHTN [10] Gonzalo Navarro, Mathieu Raffinot (2002), Flexible Pattern Matching in Strings [11] Lance Chambers (1995), Practical Handbook of genetic Algorithms: Applications Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn [...]... khác Một số thuật toán nêu trên chƣa phải là tất cả các thuật toán đối sánh mẫu hiện có Nhƣng chúng đã đại di n cho đa số các tƣ tƣởng dùng để giải bài toán đối sánh Các thuật toán so sánh mẫu lần lượt từ trái sang phải thƣờng là các dạng của thuật toán Knuth-Morris-Pratt và thuật toán sử dụng Automat nhƣ: Forward Dawg Matching, Apostolico-Crochemore, Not So Naive, … Các thuật toán so sánh mẫu từ phải... http://www.lrc.tnu.edu.vn 13 CHƢƠNG 2 GIỚI THIỆU VỀ GIẢI THUẬT DI TRUYỀN Chương này giới thiệu tổng quan về giải thuật di truyền Các toán tử của giải thuật di truyền và những điểm khác biệt của giải thuật di truyền với các giải thuật khác.[1],[3],[4],[5],[9] 2.1 Tổng quan chung về giải thuật di truyền (GA) 2.1.1 Giới thiệu Lí thuyết về giải thuật di truyền trong những năm qua đã phát triển rất mạnh và... các ký tự để quyết định vị trí bắt đầu của mẫu trên văn bản Các thuật toán so sánh mẫu theo thứ tự bất kỳ: Đó là các thuật toán có thể tiến hành so sánh mẫu với cửa sổ theo một thứ tự ngẫu nhiên Những thuật toán này đều có cài đặt rất đơn giản và thƣờng sử dụng chiêu ký tự không khớp của thuật toán Boyer-Moore Có lẽ loại thuật toán này dựa trên ý tƣởng càng so sánh loạn càng khó kiếm test chết Vì dựa... không Áp dụng với bài toán này, từ một tập các vị trí trong văn bản tìm kiếm ban đầu, các vị trí trong tập ban đầu đƣợc chọn lọc qua nhiều bƣớc, các vị trí tốt đƣợc giữ lại và tiến hóa tới khi đạt độ chính xác tốt nhất, đồng thời các vị trí xấu bị loại bỏ Trong các chƣơng tiếp theo sẽ trình bày cụ thể về giải thuật di truyền và cài đặt thực nghiệm giải thuật di truyền giải bài toán đối sánh mẫu Số hóa... mong đợi ngẫu nhiên chứ không có một cơ sở toán học nào để lấy vị trí ngẫu nhiên sao cho khả năng xuất hiện mẫu cần tìm là lớn Các thuật toán đối sánh mẫu trình bày ở trên đã đƣợc sử dụng phổ biến, tƣ tƣởng chủ đạo vẫn là tìm kiếm từ đầu văn bản tới cuối văn bản Trong đề tài này hƣớng đến một cách tiếp cận mới là sử dụng giải thuật di truyền thuộc lớp giải thuật xác suất, phƣơng pháp mô phỏng theo quá... cận khác nhau Sở dĩ nhƣ vậy là do tính hiệu quả của giải thuật này so với các giải thuật khác Giải thuật di truyền đã thể hiện rõ tính ƣu việt trong tìm kiếm tiến hoá và tính mềm dẻo trong khả năng thích nghi với yêu cầu của bài toán đặt ra, đặc biệt đối với các bài toán khó, có không gian tìm kiếm lớn và có nhiều ràng buộc phức tạp Giải thuật di truyền đƣợc J.H.Holland và các đồng nghiệp của ông tại... tìm giải pháp mới Bƣớc 7: Khi đã tìm đƣợc giải pháp tối ƣu hay thời gian cho phép đã hết thì kết thúc giải thuật và báo cáo kết quả tìm đƣợc 2.2.4 Ví dụ Sau đây, áp dụng GA vào bài toán giải phƣơng trình: Bài toán: Tìm nghiệm nguyên của phương trình: X2 = 64 (1) * Bước 1: Biểu di n NST Dễ thấy với bài toán (1), các lời giải x của bài toán nằm trong khoảng [-8; 8] Ta dùng 1 vectơ nhị phân v để biễu di n... phù hợp với truy vấn q sẽ là rất tốn kém 1.3 Một số thuật toán đối sánh mẫu cơ bản 1.3.1 Thuật toán Brute Force Thuật toán Brute Force là dạng thuật toán tìm kiếm tuần tự, nó thử kiểm tra tất cả các vị trí trên văn bản từ 1 cho đến n – m + 1 Sau mỗi lần thử, thuật toán Brute Force dịch mẫu sang phải một ký tự cho đến khi kiểm tra hết văn bản Thuật toán Brute Force không cần công việc chuẩn bị cũng nhƣ... trái đều là các dạng của thuật toán Boyer-Moore Phải nói lại rằng thuật toán BM là thuật toán tìm kiếm rất hiệu quả trên thực tế nhƣng độ phức tạp tính toán lý thuyết lại là O(m*n) Chính vì vậy những cải tiến của thuật toán này cho độ phức tạp tính toán lý thuyết tốt nhƣ: thuật toán Apostolico-Giancarlo đánh dấu lại những ký tự đã so sánh rồi để khỏi bị so sánh lặp lại, thuật toán Turbo-BM đánh giá chặt... quá trình tìm kiếm, nên có thể ứng dụng cho bất kì bài toán tối ƣu nào (liên tục hay rời rạc) - GA thuộc lớp giải thuật xác suất, các thao tác cơ bản của GA dựa trên khả năng tích hợp ngẫu nhiên trong quá trình xử lí Để cụ thể hơn, ta sẽ tiến hành so sánh GA cổ điển với hai thuật toán truyền thống rất phổ biến là thuật toán “vét cạn” và thuật toán “leo đồi” Thuật toán “vét cạn” (tìm kiếm theo bề rộng ... THUẬT TOÁN ĐỐI SÁNH MẪU Chương giới thiệu phát biểu toán đối sánh mẫu, tìm hiểu số thuật toán sử dụng để giải toán đối sánh mẫu 1.1 Giới thiệu toán đối sánh mẫu Trong khoa học máy tính, đối sánh. .. cứu toán đối sánh mẫu, giải thuật di truyền ứng dụng giải thuật di truyền đối sánh mẫu tìm kiếm văn Ngoài phần mở đầu kết luận, luận văn gồm có chƣơng: - Chƣơng 1: Một số thuật toán đối sánh mẫu. .. thiệu tổng quan giải thuật di truyền Các toán tử giải thuật di truyền điểm khác biệt giải thuật di truyền với giải thuật khác.[1],[3],[4],[5],[9] 2.1 Tổng quan chung giải thuật di truyền (GA) 2.1.1

Ngày đăng: 11/01/2017, 21:26

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Nguyễn Thị Ngọc Chi, Trần Kim Hương (2015) “Giải Thuật Di Truyền (Gas) và các ứng dụng”, Hội nghị NCKH khoa Toán – Tin, tr.94 – 101 Sách, tạp chí
Tiêu đề: Giải Thuật Di Truyền (Gas) và các ứng dụng”
[2]. Mr.Datnh(2014),“Thuật toán Boyer-Moore”,Http://laptrinh.vn,ngày 21/08/2014 Sách, tạp chí
Tiêu đề: Thuật toán Boyer-Moore”
Tác giả: Mr.Datnh
Năm: 2014
[3]. Nguyễn Thị Thuý Hoài (2008), Thuật giải di truyền và ứng dụng, Trường Đại học Sƣ Phạm – ĐH Đà Nẵng, Báo cáo “ Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6, tr.266 – 270 Sách, tạp chí
Tiêu đề: Thuật giải di truyền và ứng dụng", Trường Đại học Sƣ Phạm – ĐH Đà Nẵng, Báo cáo “ Hội nghị Sinh viên Nghiên cứu Khoa học
Tác giả: Nguyễn Thị Thuý Hoài
Năm: 2008
[4]. Nguyễn Hữu Mùi (2006), “Thuật toán di truyền và ứng dụng”, Nxb ĐHSP, Hà Nội Sách, tạp chí
Tiêu đề: Thuật toán di truyền và ứng dụng
Tác giả: Nguyễn Hữu Mùi
Nhà XB: Nxb ĐHSP
Năm: 2006
[5]. Nguyễn Văn Quyết (2009), Bài toán tìm kiếm văn bản sử dụng giải thuật di truyền, Luận văn thạc sĩ Khoa học máy tính, Đại học công nghệ thông tin và truyền thông – ĐHTN Sách, tạp chí
Tiêu đề: Bài toán tìm kiếm văn bản sử dụng giải thuật di truyền
Tác giả: Nguyễn Văn Quyết
Năm: 2009
[6]. Nguyễn Đức Thiện (2010), “Thuật toán đối đối sánh mẫu (pattern matching) trên văn bản”, Http://ndthien.blogspot.com, ngày 14/04/2010 Sách, tạp chí
Tiêu đề: Thuật toán đối đối sánh mẫu (pattern matching) trên văn bản”
Tác giả: Nguyễn Đức Thiện
Năm: 2010
[7]. Nguyễn Thị Thúy (2012), Một họ thuật toán đối sánh mẫu Wu-Manber và thực nghiệm, Luận văn thạc sĩ Hệ thống thông tin, Trường đại học Công nghệ - Đại học Quốc Gia Hà Nội Sách, tạp chí
Tiêu đề: Một họ thuật toán đối sánh mẫu Wu-Manber và thực nghiệm
Tác giả: Nguyễn Thị Thúy
Năm: 2012
[8]. Mai Ngọc Tùng (2012), Nghiên cứu ứng dụng giải thuật di truyền để tìm kiếm thông tin trên văn bản, Bài thu hoạch môn học phương pháp nghiên cứu khoa học trong tin học, Đại học Quốc gia Thành phố Hồ Chí Minh Sách, tạp chí
Tiêu đề: Nghiên cứu ứng dụng giải thuật di truyền để tìm kiếm thông tin trên văn bản
Tác giả: Mai Ngọc Tùng
Năm: 2012
[9]. Vũ Mạnh Xuân (2012), Bài giảng về giải thuật di truyền, Trường Đại học Sư Phạm – ĐHTN Sách, tạp chí
Tiêu đề: Bài giảng về giải thuật di truyền
Tác giả: Vũ Mạnh Xuân
Năm: 2012
[11]. Lance Chambers (1995), Practical Handbook of genetic Algorithms: Applications Sách, tạp chí
Tiêu đề: Practical Handbook of genetic Algorithms
Tác giả: Lance Chambers
Năm: 1995
[10]. Gonzalo Navarro, Mathieu Raffinot (2002), Flexible Pattern Matching in Strings Khác

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

TÀI LIỆU LIÊN QUAN

w