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

Giải thuật di truyền và ứng dụng vào bài toán lập thời khóa biểu

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

Nội dung

Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CNTT VÀ TRUYỀN THÔNG NGUYỄN THỊ HỒNG GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG VÀO BÀI TỐN LẬP THỜI KHĨA BIỂU LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH Thái Nguyên – 2013 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CNTT VÀ TRUYỀN THÔNG NGUYỄN THỊ HỒNG GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG VÀO BÀI TỐN LẬP THỜI KHĨA BIỂU Chun ngành: Khoa học máy tính Mã số: 60 48 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 Lê Văn Phùng Thái Nguyên – 2013 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ MỤC LỤC DANH MỤC CÁC KÝ HIỆU, CÁC TỪ VIẾT TẮT DANH MỤC CÁC BẢNG DANH MỤC CÁC HÌNH LỜI MỞ ĐẦU .6 CHƢƠNG GIẢI THUẬT DI TRUYỀN TRONG KHAI PHÁ DỮ LIỆU 1.1 Quá trình khai phá liệu giải thuật di truyền (GA) .8 1.1.1 Quá trình khai phá liệu .8 1.1.2 Giải thuật di truyền .11 1.2 Các khái niệm GA 12 1.2.1 Nhiễm sắc thể .12 1.2.2 Quần thể, hệ, toán tử di truyền, tiến hóa 14 1.2.3 Hàm thích nghi .14 1.2.4 Chọn lọc 14 1.2.5 Lai ghép 17 1.2.6 Đột biến 19 1.2.7 Chiến lƣợc nạp lại quần thể 20 1.3 Mơ hình GA 22 1.4 Khơng gian tìm kiếm điều kiện dừng GA .23 1.4.1 Khơng gian tìm kiếm 23 1.4.2 Điều kiện dừng GA 24 1.5 Đặc điểm ứng dụng GA 24 1.5.1 Đặc điểm GA 24 1.5.2 Ứng dụng GA 25 CHƢƠNG BÀI TOÁN THUỘC LỚP NP 26 VÀ BÀI TOÁN LẬP THỜI KHÓA BIỂU 26 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ 2.1 Lớp toán NP 26 2.1.1 Một số khái niệm: 26 2.1.2 NP-khó NP-đầy đủ 26 2.1.3 Tối ƣu hóa đa mục tiêu 27 2.2 Bài tốn lập thời khóa biểu 28 2.2.1 Một số khái niệm sở 32 2.2.2 Mơ hình toán 33 CHƢƠNG XÂY DỰNG BÀI TOÁN THỜI KHOÁ BIỂU DỰA TRÊN GIẢI THUẬT DI TRUYỀN 36 3.1 Bài tốn lập thời khóa biểu trƣờng Cao đẳng Công nghệ Kinh tế Hà Nội 36 3.1.1 Giới thiệu 36 3.1.2 Nội dung hoạt động nghiệp vụ .36 3.2 Áp dụng giải thuật di truyền vào tốn lập thời khóa biểu .37 3.2.1 Các toán tử di truyền toán hỗ trợ xếp thời khóa biểu 37 3.2.2 Thiết kế sở liệu 42 3.3 Cài đặt chƣơng trình 49 3.4 Đánh giá kết thử nghiệm .49 KẾT LUẬN .52 TÀI LIỆU THAM KHẢO 53 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ DANH MỤC CÁC KÝ HIỆU, CÁC TỪ VIẾT TẮT Từ Tiếng Anh viết tắt GA Genetic Algorithm giải thuật di truyền EC Evolutionary computation tính tốn tiến hóa EP Evolutionary Programming quy hoạch tiến hóa ES Evolutionary Strategies chiến lƣợc tiến hóa GP Genetic Programming lập trình di truyền CS Classifier Systems hệ thống phân loại MOOP Multi-objective Optimization Problem Tối ƣu hóa đa mục tiêu NST TT Nghĩa Tiếng Việt nhiễm sắc thể Selection chọn lọc 10 Cross-over lai ghép 11 Mutation đột biến 12 Reproduction sinh sản 13 pop-size kích cỡ quần thể 14 NP-hard tốn NP khó 15 NP-complete tốn NP đầy đủ 16 Fitness độ thích nghi Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ DANH MỤC CÁC BẢNG Bảng1: Mã hóa nhị phân độ dài 20 bit 12 Bảng2: Mã hóa hốn vị NST A&B .13 Bảng3: Mã hóa giá trị NST A, B, C 13 Bảng4: Mặt nạ lai ghép đồng 18 Bảng 5: Lai ghép điểm cắt mã hóa hốn vị 19 Bảng 6: Phép đảo bit mã hóa nhị phân 19 Bảng 7: Hốn vị thứ tự mã hóa hốn vị 20 Bảng 8: Thay đổi giá trị mã hóa giá trị 20 Bảng 9: Bảng số .33 Bảng 10: Bảng kiểm tra ràng buộc phòng 39 Bảng 11: Bảng kiểm tra ràng buộc giảng viên 39 Bảng 12: Bảng kiểm tra ràng buộc lớp sinh viên 40 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ DANH MỤC CÁC HÌNH Hình 1: Xác suất NST theo kiểu lựa chọn Roulet 15 Hình 2: Lựa chọn xếp hạng 16 Hình 3: Lai ghép điểm cắt mã hóa nhị phân 17 Hình 4: Lai ghép hai điểm cắt mã hóa nhị phân 17 Hình 5: Lai ghép đồng mã hóa nhị phân 18 Hình 6: Lai ghép số học mã hóa nhị phân .18 Hình 7: Chiến lƣợc nạp lại hồn tồn 20 Hình 8: Chiến lƣợc nạp lại ngẫu nhiên 21 Hình 9: Chiến lƣợc nạp lại theo mơ hình cá thể ƣu tú 21 Hình 10: Sơ đồ mơ tả GA 22 Hình 11: Phân lớp tạm thời toán 27 Hình 12: Ma trận cá thể 38 Hình 13: Lai ghép điểm cắt 41 Hình 14: Sơ đồ giải thuật di truyền đề xuất 42 Hình 15: Nhập danh mục quản lý hình thức học .45 Hình 16: Quản lý danh mục loại phịng học 45 Hình 17: Quản lý danh mục lớp học 46 Hình 18: Quản lý danh mục môn học 46 Hình 19: Quản lý danh mục phịng học 47 Hình 20: Quản lý danh mục tòa nhà 47 Hình 21: Quản lý chƣơng trình đào tạo 48 Hình 22: Cập nhật chƣơng trình đào tạo khung .48 Hình 23: Cửa sổ xếp Thời khóa biểu .49 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ LỜI MỞ ĐẦU Hiện ngành khoa học máy tính, việc tìm kiếm lời giải tối ƣu cho tốn vấn đề ln đƣợc nhà khoa học đặc biệt quan tâm Mục đích thuật tốn tìm kiếm lời giải tìm lời giải tối ƣu cho toán thời gian nhỏ Các thuật tốn nhƣ tìm kiếm khơng có thơng tin, vét cạn (tìm kiếm danh sách, đồ thị ) thuật tốn tìm kiếm có thơng tin đƣợc sử dụng nhiều khơng gian tìm kiếm nhỏ Đối với khơng gian tìm kiếm lớn, việc tìm kiếm lời giải tối ƣu cho tốn gặp nhiều khó khăn Do đó, cần thiết phải có thuật giải tốt sử dụng kỹ thuật trí tuệ nhân tạo giải tốn có khơng gian tìm kiếm lớn Thuật giải di truyền (Genetic Algorithm GA) kỹ thuật tìm kiếm lời giải tối ƣu đáp ứng đƣợc yêu cầu nhiều toán ứng dụng Cùng với logic mờ, GA đƣợc ứng dụng rộng rãi lĩnh vực phức tạp Sự kết hợp GA logic mờ chứng tỏ đƣợc hiệu vấn đề khó mà trƣớc thƣờng đƣợc giải phƣơng pháp thông thƣờng hay phƣơng pháp cổ điển, tốn cần có lƣợng giá, đánh giá tối ƣu kết thu đƣợc Chính vậy, GA trở thành đề tài nghiên cứu thu hút đƣợc nhiều quan tâm và đem đến nhiều ứng dụng thực tiễn Xuất phát từ thuyết tiến hóa mn lồi Darwin, GA kỹ thuật chung giúp giải vấn đề tốn cách mơ tiến hóa ngƣời hay sinh vật nói chung điều kiện đƣợc qui định sẵn môi trƣờng GA thuật giải mục tiêu GA không nhằm đƣa lời giải xác tối ƣu mà đƣa lời giải tƣơng đối tối ƣu John Holland (1975) Goldberg (1989) đề xuất phát triển GA, thuật giải tìm kiếm dựa chế chọn lọc di truyền tự nhiên Thuật giải sử dụng nguyên lý di truyền thích nghi sống cá thể thích nghi tự nhiên Do tính hấp dẫn tính thời khai phá liệu, đặc biệt giải thuật di truyền, chọn đề tài “Giải thuật di truyền ứng dụng vào toán lập thời Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ khóa biểu” làm luận văn cao học Trong tập trung nghiên cứu kỹ thuật lập lịch chọn kỹ thuật tiêu biểu đề thực tốn thời khóa biểu phục vụ cơng tác giảng dạy trƣờng, nơi công tác Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ Chương GIẢI THUẬT DI TRUYỀN TRONG KHAI PHÁ DỮ LIỆU 1.1 Quá trình khai phá liệu giải thuật di truyền (GA) 1.1.1 Quá trình khai phá liệu Theo Bách khoa toàn thƣ Việt Nam, tri thức “kết trình nhận thức người đối tượng nhận thức, làm tái tư tưởng người thuộc tính, mối quan hệ, quy luật vận động, phát triển đối tượng diễn đạt ngôn ngữ tự nhiên hay hệ thống ký hiệu khác” Phát tri thức trình bao gồm dãy bƣớc lặp sau: Làm liệu Tích hợp liệu Chọn lựa liệu Chuyển đổi liệu Khai phá liệu Đánh giá mẫu Trình diễn tri thức Trong đó, khai phá liệu bƣớc quan trọng tiến trình phát tri thức Dữ liệu mô tả vật, ngƣời kiện giới thực Dữ liệu bao gồm số, ký tự, văn bản, hình ảnh, đồ họa,…có giá trị ngƣời sử dụng chúng đƣợc lƣu trữ, xử lý máy tính Theo liệu bách khoa tồn thƣ, “khai phá liệu ” khâu chủ yếu trình phát tri thức từ liệu để trợ giúp cho việc làm định quản lý Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ cao nhất, N thấp nhất, N số cá thể quần thể) Tƣơng ứng với tăng dần độ thích nghi Độ thích nghi Fi hàm tính giá trị mục tiêu cá thể, mục đích giải thuật tìm cá thể có giá trị F nhỏ đồng nghĩa với việc tối ƣu đồng thời đƣơc ba mục tiêu: tiết trống lớp sinh viên số phịng sử dụng 3.2.1.4 Phương pháp chọn lọc Chọn 30 cá thể có hạng cao từ quần thể để làm cha mẹ mang lai ghép 3.2.1.5 Toán tử lai ghép a/ Lai ghép điểm cắt Ghép tất cá thể 30 cá thể xếp hạng cao thành cặp đem lai ghép, điểm cắt đƣợc chọn ngẫu nhiên cặp lai Hình 13: Lai ghép điểm cắt Sau bƣớc lai ghép cá thể mới, thực kiểm tra ràng buộc cho cá thể Nếu cá thể không thỏa mãn ràng buộc đƣợc bỏ khỏi quần thể b/ Lai ghép nhiều điểm cắt Tƣơng tự nhƣ lai ghép điểm cắt, khác điểm cắt hai cá thể cha mẹ mà hai điểm, hai điểm đƣợc chọn ngẫu nhiên 3.2.1.6 Toán tử đột biến Chọn 10 cá thể có hạng cao 30 cá thể chọn kiểm tra lớp sinh viên buổi cá thể, tiến hành dồn tiết cho số tiết trống nhỏ 41 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ Sau bƣớc đột biến cá thể mới, thực kiểm tra ràng buộc cho cá thể Nếu cá thể không thỏa mãn ràng buộc đƣợc bỏ khỏi quần thể 3.2.1.7 Đấu tranh sinh tồn Sau lai ghép đột biến quần thể với N cá thể, ta sinh đƣợc p cá thể Từ tập N + p cá thể, ta chọn N cá thể tốt đƣa vào quần thể hệ 3.2.1.8 Sơ đồ giải thuật di truyền Khởi tạo quần thể Thực phép lai ghép, đột biến Lặp lại qua N hệ Thế hệ Cá thể tốt Lời giải cho tốn Hình 14: Sơ đồ giải thuật di truyền đề xuất 3.2.2 Thiết kế sở liệu - Tòa nhà STT Tên thuộc tính Kiểu liệu Ràng buộc Primary key Diễn giải Mã để phân biệt tòa nhà ID Interger TenToaNha NVarchar (20) Tên tịa nhà TT Interger Thứ tự 42 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ - Loại phòng STT Tên thuộc tính Kiểu liệu Ràng buộc Primary key Diễn giải Mã để phân biệt loại phòng ID Interger Ten NVarchar (20) Tên STT Interger Số thứ tự - Phòng học STT Tên thuộc tính Kiểu liệu Ràng buộc Primary key Diễn giải Mã để phân biệt phòng học ID Interger Nha NVarchar (20) Nhà Tang Interger Tầng TenPhong NVarchar (20) Tên phòng Chua Interger Sức chứa LoaiPhong NVarchar (20) Loại phòng ThietBi NVarchar (20) Thiết bị STT Interger Số thứ tự - Mơn học STT Tên thuộc tính Kiểu liệu Ràng buộc Primary key Diễn giải Mã để phân biệt môn học ID Interger TenMonHoc NVarchar (20) Tên môn học VietTat NVarchar (10) Viết tắt DVHT Interger Đơn vị học trình STT Interger Số thứ tự 43 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ - Hình thức học STT Tên thuộc tính Kiểu liệu ID Interger Ten NVarchar (20) Ràng buộc Primary key Diễn giải Mã để phân biệt hình thức học Tên hình thức học - Ngành học STT Tên thuộc tính Kiểu liệu Ràng buộc Primary key Diễn giải Mã để phân biệt ngành học ID Interger VietTat NVarchar (20) Tên viết tắt STT Interger Số thứ tự - Lớp học STT Tên thuộc tính Kiểu liệu Ràng buộc Primary key Diễn giải Để phân biệt lớp TenLop NVarchar (20) Nam Interger Năm Nganh NVarchar (20) Ngành Khoa Interger Khóa VietTat NVarchar (20) Viết tắt SiSo Interger Sĩ số 44 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ Giao diện chương trình a Nhập hình thức học Hình 15: Nhập danh mục quản lý hình thức học Trong “Danh mục” chọn “Hình thức học” nhập Mã, tên hình thức nhƣ: Bài tập, kiểm tra, lý thuyết, ôn, thi… b Danh mục quản lý phịng học Hình 16: Quản lý danh mục loại phịng học Khi chọn “Danh mục” Loại phòng: Nhập thơng tin Phịng giảng đƣờng, phịng thực hành hay ngồi bãi tập 45 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ c Danh mục Lớp học Hình 17: Quản lý danh mục lớp học Sau chọn danh mục “Lớp học” khung bên trái yêu cầu nhập năm học, Ngành, Khóa, tên lớp, viết tắt tên lớp d Danh mục Mơn học Hình 18: Quản lý danh mục môn học Khi chọn Danh mục Môn học ngƣời quản trị nhập thông tin môn học nhƣ: Tên mơn, Viết tắt, số tín chỉ, tốt nghiệp hay chƣa 46 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ e Danh mục Phịng học Hình 19: Quản lý danh mục phòng học Khi danh mục Phòng học đƣợc chọn, ngƣời sử dụng nhập thơng tin: Tịa nhà, tên phòng, sức chứa, loại phòng f Danh mục tòa nhà Hình 20: Quản lý danh mục tịa nhà Danh mục Tòa nhà đƣợc chọn, ngƣời dùng nhập Mã, tên, số thứ tự tịa nhà 47 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ g Quản lý chƣơng trình đào tạo Hình 21: Quản lý chương trình đào tạo Quản lý chƣơng trình đào tạo, ngƣời quản trị nhập tên chƣơng trình, chun ngành, khóa học h Cập nhật chƣơng trình đào tạo khung Hình 22: Cập nhật chương trình đào tạo khung 48 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ Hình 23: Cửa sổ xếp Thời khóa biểu Ngƣời quản trị nhập thông tin: số cá thể, số cá thể thay thế, số điểm lai ghép, xác suất lai ghép, xác suất đột biến, trọng số tiết trống, trọng số phòng sử dụng sau nhập danh mục quản lý chọn nút Xếp lịch 3.3 Cài đặt chương trình u cầu cài đặt: Cài đặt mơi trƣờng Window - Hệ quản trị sở liệu Microsoft SQL - Cài Microsoft Visual studio 2010 - Ngôn ngữ sử dụng: C# Micosoft dotnet 3.4 Đánh giá kết thử nghiệm Chƣơng trình sau đƣợc cài đặt chạy thử nghiệm liệu trƣờng CĐ Công nghệ Kinh tế HN cho số kết nhƣ sau: 49 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ Cùng liệu tham số đầu vào nhƣ nhau, với lai ghép điểm cắt ta có kết nhƣ sau: 50 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ Với lai ghép điểm cắt ta có kết quả: Khi sử dụng lai ghép điểm cắt tốc độ hội tụ nhanh 3.33% so với lai ghép điểm cắt 51 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ KẾT LUẬN Kết đạt Về mặt lý thuyết: - Giới thiệu tổng quan giải thuật di truyền - Xây dựng giải thuật di truyền để giải tốn xếp thời khóa biểu mơ hình chung giải thuật di truyền Về mặt thực nghiệm, luận văn tiến hành cài đặt giải thuật di truyền nêu phần lý thuyết Kết đạt đƣợc cho thấy: Hệ thống giúp nhân viên phòng Đào tạo lịch học cho lớp vào đầu học kỳ, hầu hết chức sau xử lý xong hoạt động tốt, đáp ứng yêu cầu đặt Hạn chế -hướng phát triển Hạn chế: - Giải thuật di truyền mang tính ngẫu nhiên nên kết tối ƣu tìm đƣợc đa dạng (giá trị mục tiêu cá thể nằm giới hạn cho phép) - Kết đầu chƣa xuất đƣợc file chuẩn với mong muốn ngƣời dùng - Chƣơng trình chƣa thân thiện với ngƣời dùng Hướng phát triển tương lai: - Xây dựng chƣơng trình hồn thiện để có áp dụng thực tế cao - Cải thiện chƣơng trình với quy mơ liệu lớn - Đóng gói, thƣơng mại hóa sản phẩm - Song song hóa giải thuật GA để xử lý đồng thời nhiều máy tính nhằm tăng tốc độ thực chƣơng trình - Tiếp tục thực đánh giá độ thích nghi để tùy theo ngữ cảnh tự điều chỉnh trọng số cho phù hợp - Nghiên cứu giải thuật GA với kỹ thuật khác nhƣ mạng noron, logic mờ để nâng cao hiệu cho hệ thống 52 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ TÀI LIỆU THAM KHẢO [1] Ngô Văn Bình, Một số phƣơng pháp khai phá liệu ứng dụng tốn lập thời khóa biểu, Luận văn thạc sỹ, 2004 [2] Edmund Kieran Burke and Sanja Petrovic, Recent Research Directions in Automated Timetabling, European Journal of Operational Research 2002, pp 266-280 [3] Gerald Lach and Marco E Curriculum based course timetabling: new solutions to Udine benchmark instances Annals OR 2012, pp 255-272 [4] Wuertz, Joerg, Oz Scheduler: A Workbench for Scheduling Problems In: International Conference on Tools with Artificial Intelligence – ICTAI 1996, pp 149, IEEE Computer Society, USA (1996) 53 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN 54 Số hóa trung tâm học liệu http://www.lrc.tnu.edu.vn/ NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN 55 ... 3.2 Áp dụng giải thuật di truyền vào toán lập thời khóa biểu 3.2.1 Các tốn tử di truyền tốn hỗ trợ xếp thời khóa biểu 3.2.1.1 Mã hóa cá thể Phƣơng pháp mã hóa cá thể (tức Thời Khóa Biểu) sử dụng. .. 6 .Giải thuật di truyền Giải thuật di truyền q trình mơ theo tiến hố tự nhiên Ý tƣởng giải thuật dựa vào quy luật di truyền biến đổi, chọn lọc tự nhiên tiến hoá sinh học Giải thuật di truyền kỹ thuật. .. hoạt động nghiệp vụ .36 3.2 Áp dụng giải thuật di truyền vào tốn lập thời khóa biểu .37 3.2.1 Các toán tử di truyền toán hỗ trợ xếp thời khóa biểu 37 3.2.2 Thiết kế sở liệu

Ngày đăng: 24/02/2021, 21:40

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

TÀI LIỆU LIÊN QUAN

w