1. Trang chủ
  2. » Giáo án - Bài giảng

TÌM HIẾU GIẢI THUẬT DI TRUYỆN VÀ ỨNG DỤNG VÀO BÀI TOÁN XÉP THỜI KHÓA BIỀU TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG

127 24 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 127
Dung lượng 2,88 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • TRANG BÌA

  • LỜI CẢM ƠN

  • Mục lục

  • DANH MỤC BẢNG BIỂU

  • LỜI MỞ ĐẦU

  • Chương 1: GIỚI THIỆU

  • Chương 2: GIỚI THIỆU GIẢI THUẬT DI TRUYỀN

    • 2.1 Khái quát giải thuật di truyền

    • 2.2 Các toán tử của giải thuật di truyền

    • 2.3 Các tham số của giải thuật di truyền

    • 2.4 Các công thức của giải thuật di truyền

    • 2.5 Các thành phần của giải thuật di truyền

    • 2.6 Ví dụ minh họa: Tìm đáp số cho phương trình x*x=64

  • Chương 3: TÌM HIỂU MỘT SỐ CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN

    • 3.1 Công trình nghiên cứu “An Investigation of Genetic Algorithm and Sequential Local Search Approach for Curriculum-based Course Timetabling Problems” của Abdullah, Turabieh, Mccollum, and Burke (2009)

    • 3.2 Công trình nghiên cứu “Using Genetic Algorithms to Solve the South African School Timetabling Problem” của Raghavjee và Pillay (2010)

    • 3.3 Công trình nghiên cứu “Time Table Scheduling Using Genetic Algorithms Employing Guided Mutation” của Sapru, Reddy và Sivaselvan (2010)

    • 3.4 Công trình nghiên cứu “Genetic Algorithms and Local Search Strategies for University Course Timetabling” của Yang và Jat (2011)

    • 3.5 Đánh giá chung

  • Chương 4: KHẢO SÁT HIỆN TRẠNG THỰC TẾ CHO BÀI TOÁN

  • Chương 5:ỨNG DỤNG GIẢI THUẬT DI TRUYỀN VÀO BÀI TOÁN XẾP THỜI KHÓA BIỂU

  • Chương 6: THIẾT KẾ HỆ THỐNG XẾP THỜI KHÓA BIỂU

  • Chương 7: KẾT QUẢ THỰC NGHIỆM

  • Chương 8: TỔNG KẾT

  • TÀI LIỆU THAM KHẢO

  • PHỤ LỤC

Nội dung

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu 12 LỜI MỞ ĐẦU Trong ngành khoa học máy tính, tìm kiếm lời giải tối ưu cho các bài toán là vấn đề được các nhà k

GIỚI THIỆU

Giới thiệu chung

Xếp thời khóa biểu là một bài toán tối ưu hóa chuỗi hoạt động dựa trên các ràng buộc bắt buộc cần được thỏa mãn Người lập lịch nhằm tối đa hóa việc sử dụng tài nguyên như cá nhân và máy móc, đồng thời giảm thiểu thời gian hoàn thiện toàn bộ quá trình Bài toán này rất phức tạp và đòi hỏi các kỹ thuật giải quyết hiện đại, bao gồm trí tuệ nhân tạo như hệ thống tri thức cơ sở, bài toán thoả mãn ràng buộc, hệ chuyên gia, mạng nơ-ron, cùng các phương pháp hoạt động như lập trình tính toán, lập trình động, tìm kiếm nhánh và đường biên, kỹ thuật mô phỏng, tìm kiếm Tabu và phương pháp nút cổ chai Các kỹ thuật này giúp nâng cao hiệu quả trong việc giải quyết các bài toán xếp thời khóa biểu phức tạp hiện nay.

Trong bối cảnh ngày nay, việc xếp thời khóa biểu đã trở thành hoạt động quen thuộc tại các cơ quan, công ty, tổ chức, đặc biệt là các trường học Đặc biệt, đối với các trường đại học lớn như Trường ĐH Tôn Đức Thắng, việc lập kế hoạch lịch học cho sinh viên theo học chế tín chỉ vô cùng phức tạp, tốn nhiều chi phí và nhân lực Việc tin học hóa quá trình xếp thời khóa biểu mang lại lợi ích lớn trong việc thực hiện nhanh chóng, tiện lợi hơn, giảm thiểu chi phí và số lượng nhân sự cần thiết.

Vấn đề xếp thời khóa biểu là một bài toán phức tạp với không gian tìm kiếm rộng, đòi hỏi phải sử dụng các giải pháp chất lượng cao để đạt kết quả tối ưu Giải thuật di truyền là một trong những kỹ thuật tìm kiếm lời giải hiệu quả, có khả năng tối ưu hóa quá trình xếp lịch phù hợp với nhiều yêu cầu của các bài toán xếp thời khóa biểu.

Bài toán xếp thời khóa biểu có các đặc điểm như sau:

Tài nguyên: đó là các nguồn dữ liệu đầu vào của bài toán Các tài nguyên này có thể phục hồi hoặc không

Tác vụ: được đánh giá qua các tiêu chuẩn thực hiện như thời gian thực hiện, chi phí, mức tiêu thụ nguồn tài nguyên

Ràng buộc: đây là những điều kiện cần thỏa mãn để bài toán có thể đưa ra lời giải tốt nhất

Mục tiêu chính của bài viết là đánh giá độ tối ưu của lịch trình lời giải trong bài toán đã cho Khi các mục tiêu đề ra được đáp ứng, thì đồng thời các ràng buộc liên quan cũng cần phải được thỏa mãn để đảm bảo tính hợp lệ của giải pháp Việc tối ưu hóa lịch trình giúp nâng cao hiệu quả và đảm bảo các điều kiện đã đặt ra trong bài toán Đánh giá độ tối ưu là bước quan trọng nhằm xác định xem giải pháp có đáp ứng đầy đủ các mục tiêu và ràng buộc hay chưa.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Để nâng cao hiệu quả trong việc xếp thời khóa biểu cho khoa Công nghệ Thông tin, cần xây dựng phần mềm ứng dụng tự động nhằm thay thế các thao tác thủ công trên giấy tờ, giúp tiết kiệm thời gian và chi phí Việc này đặc biệt quan trọng trong các trường đại học tổ chức đào tạo theo hệ tín chỉ, khi việc sắp xếp thời khóa biểu khó khăn hơn do số lượng sinh viên, giảng viên và cơ sở vật chất đa dạng Để đảm bảo việc xếp thời khóa biểu phù hợp, chính xác và hiệu quả, cần thu thập các dữ liệu nền tảng về chương trình đào tạo, số lượng sinh viên, số lượng giảng viên và cơ sở vật chất của trường.

Danh sách các khóa học

Danh sách các lớp học

Danh sách các khoảng thời gian sử dụng giảng dạy trong ngày

Danh sách các môn học, số tiết (lý thuyết, thực hành), số tín chỉ (lý thuyết, thực hành) được mở trong học kỳ

Danh sách giảng viên của khoa (bao gồm giảng viên cơ hữu, giảng viên nghiên cứu và giảng viên thỉnh giảng)

Danh sách phòng học với các chức năng tương ứng (phòng học lý thuyết, phòng học thực hành)

Bảng phân công giảng dạy của từng giảng viên (giảng viên nào dạy những môn nào).

Mục tiêu đề tài

Nghiên cứu đề tài "Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu" nhằm vận dụng giải thuật di truyền để xây dựng hệ thống sắp xếp thời khóa biểu cho khoa Công nghệ Thông tin trường ĐH Tôn Đức Thắng Mục tiêu chính của nghiên cứu là phát triển hệ thống tối ưu hóa việc xếp lịch học cho sinh viên và giảng viên cùng lúc, góp phần nâng cao hiệu quả tổ chức học tập và giảng dạy Việc ứng dụng giải thuật di truyền trong hệ thống này giúp tạo ra thời khóa biểu phù hợp, linh hoạt, đồng thời sắp xếp lịch học cho sinh viên và giảng viên một cách tối ưu nhất Hệ thống dựa trên giải thuật di truyền dự kiến sẽ mở rộng và phát triển thành hệ thống xếp thời khóa biểu toàn diện cho trường ĐH Tôn Đức Thắng.

Phạm vi đề tài

Nội dung của đề tài tập trung vào việc nghiên cứu và ứng dụng giải thuật di truyền, một thuật toán tối ưu dựa trên quá trình chọn lọc tự nhiên để giải quyết bài toán xếp thời khóa biểu Bài báo “Genetic Algorithms and Local Search Strategies for University Course Timetabling” của Yang và Jat (2011) được tham khảo để cải tiến và xây dựng giải thuật phù hợp cho hệ thống phần mềm của đề tài Hệ thống được thiết kế giới hạn trong phạm vi xếp thời khóa biểu cho khoa Công nghệ Thông tin, với không gian tìm kiếm và độ phức tạp thấp hơn so với quy mô toàn trường, nhằm đảm bảo tính khả thi và hiệu quả trong quá trình triển khai.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Cấu trúc đề tài

Nghiên cứu này nhằm tìm hiểu lý thuyết về giải thuật di truyền và tổng hợp các bài báo khoa học liên quan, tập trung vào ứng dụng giải thuật di truyền trong việc giải bài toán xếp thời khóa biểu Đề tài hướng đến phát triển thuật toán tối ưu cho hệ thống xếp thời khóa biểu của khoa Công nghệ Thông tin, góp phần nâng cao hiệu quả và tự động hóa quá trình lập kế hoạch học tập Các chương của đề tài được tổ chức rõ ràng, nhằm trình bày chi tiết quá trình nghiên cứu, phân tích và triển khai giải thuật di truyền trong bài toán xếp thời khóa biểu.

Chương 1: Giới thiệu tổng quan về đề tài

Chương 2: Tìm hiểu lí thuyết về giải thuật di truyền

Chương 3: Tìm hiểu các bài báo khoa học có liên quan đến giải thuật di truyền cũng như bài toán xếp thời khóa biểu Có sự đánh giá so sánh giữa các bài báo để chọn ra bài báo thích hợp áp dụng cho đề tài

Chương 4: Khảo sát hiện trạng thực tế cho bài toán Khảo sát và lấy các thông tin thực tế của khoa công nghệ thông tin

Chương 5: Ứng dụng giải thuật di truyền vào bài toán xếp thời khóa biểu Áp dụng có cải tiến giải thuật của một bài báo được chọn vào việc xây dựng thuật toán cho hệ thống của đề tài

Chương 6: Thiết kế các mô hình Use case, mô hình tuần tự, mô hình trạng thái, mô hình cộng tác, mô hình cơ sở dữ liệu, giao diện hệ thống xếp thời khóa biểu

Chương 7: Thống kê các thông số của giải thuật cũng như các kết quả của hệ thống sau khi chạy thử nghiệm

Chương 8: Tổng kết kết quả đạt được cũng như những hạn chế và hướng phát triển của đề tài.

GIỚI THIỆU GIẢI THUẬT DI TRUYỀN

Khái quát giải thuật di truyền

2.1.1 Lịch sử phát triển giải thuật di truyền

Giải thuật di truyền (Genetic Algorithms - GA) bắt nguồn từ những ý tưởng của các nhà sinh vật học từ thập niên 1950-1960, thế kỷ XX A.S Fraser là người tiên phong trong việc đề xuất sự tương đồng giữa quá trình tiến hóa của sinh vật và các chương trình tin học giả tưởng về giải thuật di truyền, góp phần định hình lĩnh vực tối ưu hóa dựa trên sinh học này.

John Henry Holland là người phát triển ý tưởng và phương pháp giải quyết vấn đề dựa trên sự tiến hóa, từ những bài giảng và bài báo của mình, ông đã tổng hợp các ý tưởng vào cuốn sách đầu tay "Adaptation in Natural and Artificial Systems" xuất bản năm 1975.

Holand, Keneth De Jong đã xác lập và chứng minh những thành tựu nổi bật của mình trong việc xây dựng nền tảng toán học cho lý thuyết GA Những đóng góp của ông góp phần quan trọng vào sự phát triển và hoàn thiện kiến thức trong lĩnh vực này, khẳng định vai trò trung tâm của ông trong cộng đồng nghiên cứu Đóng góp của Holand, Keneth De Jong không chỉ thúc đẩy tiến bộ khoa học mà còn mở ra nhiều hướng nghiên cứu mới trong lĩnh vực lý thuyết GA.

Holand lần đầu tiên nghiên cứu các giải thuật này, chúng hoàn toàn không có tên ban đầu Với nguồn gốc xuất phát từ các gen di truyền, Holand đã đặt tên cho phương pháp này là thuật toán di truyền, phản ánh rõ nét mối liên hệ giữa cơ chế hoạt động của giải thuật và đặc điểm di truyền của sinh vật.

2.1.2 Tìm hiểu chung giải thuật di truyền

Giải thuật di truyền (GA) là phương pháp mô phỏng quá trình chọn lọc tự nhiên dựa trên thuyết tiến hóa của Darwin để giải quyết các bài toán phức tạp GA bắt nguồn từ một tập hợp các lời giải tiềm năng ban đầu và tiến hành tìm kiếm tối ưu trên không gian lời giải thông qua việc xây dựng các lớp lời giải mới tốt hơn các lời giải cũ Quá trình này dựa trên các thao tác chọn lọc, lai ghép và đột biến, giúp quần thể lời giải dần hướng tới các giải pháp tối ưu hơn qua từng thế hệ Trong tiến trình này, các lời giải không khả quan dần bị loại bỏ, trong khi các lời giải tốt hơn được duy trì và phát triển, tạo ra một chu trình tiến hóa hiệu quả để tìm ra lời giải tối ưu cho bài toán.

Trong GA, một tập các biến của bài toán được mã hóa thành các chuỗi hoặc cấu trúc mã hóa tương tự như nhiễm sắc thể trong tự nhiên, giúp mô phỏng quá trình di truyền Thuật toán di truyền sử dụng các toán tử dựa trên quá trình chọc lọc tự nhiên, tạo ra quần thể các chuỗi nhị phân hoặc cấu trúc khác, mã hóa các tham số của bài toán qua từng thế hệ Quá trình khảo sát phạm vi không gian tham số và định hướng tìm kiếm nhằm nâng cao hiệu quả tối ưu hóa Thuật toán di truyền gồm bốn quy luật cơ bản: lai ghép, đột biến, sinh sản và chọn lọc tự nhiên, tạo ra giải pháp phù hợp nhất cho bài toán Đây là một kỹ thuật mạnh mẽ trong khoa học máy tính, giúp tìm kiếm các giải pháp tối ưu một cách hiệu quả trong không gian tham số phức tạp.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Tối ưu tổ hợp là lĩnh vực quan trọng trong giải thuật tiến hóa, ứng dụng các nguyên lý của tiến hóa như di truyền, đột biến, chọn lọc tự nhiên và trao đổi chéo để giải quyết các bài toán phức tạp Phương pháp này giúp tìm ra các giải pháp tối ưu một cách hiệu quả và linh hoạt trong các bài toán tối ưu tổ hợp.

2.1.3 Các đặc điểm, đặc trưng của giải thuật di truyền

Giải thuật di truyền mô phỏng quá trình chọn lọc tự nhiên và di truyền để tối ưu hóa giải pháp Trong tự nhiên, những cá thể khỏe mạnh và thích nghi tốt với môi trường sẽ tồn tại và phát triển qua các thế hệ tiếp theo, đảm bảo sự tiến bộ của quần thể Mỗi cá thể có cấu trúc gen đặc trưng cho tính chất riêng, giúp giải thuật duy trì và cải thiện các đặc tính sinh học phù hợp với mục tiêu tối ưu hóa.

Trong quá trình sinh sản, cá thể con có thể thừa hưởng các phẩm chất từ cha mẹ, cấu trúc gen của nó mang một phần di truyền từ cha mẹ Ngoài ra, trong quá trình tiến hóa, hiện tượng đột biến có thể xảy ra, khiến cấu trúc gen của cá thể con chứa các gen mới mà cả cha mẹ đều không có.

Trong giải thuật di truyền, mỗi cá thể được mã hóa bằng một cấu trúc dữ liệu mô tả cấu trúc gen của cá thể đó, gọi là nhiễm sắc thể Nhiễm sắc thể này được hình thành từ các đơn vị gọi là gen, đóng vai trò quan trọng trong quá trình tối ưu hóa và tìm kiếm giải pháp tốt nhất Việc đại diện chính xác cấu trúc gen giúp giải thuật di truyền hoạt động hiệu quả trong việc mô phỏng quá trình tiến hóa tự nhiên.

Giải thuật di truyền hoạt động dựa trên các quần thể gồm nhiều cá thể, mỗi quần thể đại diện cho một thế hệ trong quá trình tối ưu hóa Mỗi thế hệ phản ánh giai đoạn phát triển liên tục của thuật toán, giúp tìm kiếm giải pháp tối ưu hiệu quả.

Từ một thế hệ được tạo ra, giải thuật di truyền bắt chước sự chọn lọc tự nhiên và di truyền để biến đổi các thế hệ

2.1.4 Các khái niệm cơ bản

Giải thuật di truyền dựa trên quá trình tiến hoá tự nhiên, giúp tối ưu hóa các giải pháp trong bài toán phức tạp Các khái niệm và thuật ngữ của nó liên quan chặt chẽ đến lĩnh vực di truyền học, như đột biến, chọn lọc tự nhiên và lai ghép, nhằm mô phỏng quá trình tiến hóa và nâng cao hiệu quả tìm kiếm Nhờ đó, giải thuật di truyền trở thành công cụ mạnh mẽ trong lập trình tối ưu, xử lý dữ liệu lớn và trí tuệ nhân tạo.

Trong giải thuật di truyền, một cá thể đại diện cho một giải pháp của bài toán, với nhiều nhiễm sắc thể (NST) cấu thành Mỗi nhiễm sắc thể được tạo thành từ nhiều gen, trong đó mỗi gen mang các giá trị khác nhau để quy định các tính trạng khác nhau Trong thuật toán di truyền GA, gen được coi như một phần tử trong chuỗi nhiễm sắc thể, giúp xây dựng và tối ưu hóa giải pháp một cách hiệu quả.

Quần thể: Quần thể là một tập hợp các cá thể có cùng một số đặc điểm nào đấy

Trong giải thuật di truyền ta quan niệm quần thể là một tập các lời giải của một bài toán

2.1.5 Quy luật cơ bản của giải thuật di truyền

Thuật toán di truyền gồm có bốn quy luật cơ bản: lai ghép, đột biến, sinh sản, chọn lọc tự nhiên

2.1.5.1 Quá trình lai ghép (phép lai)

Quá trình hình thành nhiễm sắc thể mới diễn ra bằng cách ghép các đoạn gen từ hai nhiễm sắc thể cha mẹ, tạo ra nhiễm sắc thể mang đặc tính của cả hai Phép lai này giúp lan truyền đặc điểm di truyền từ cả cha và mẹ sang thế hệ sau, góp phần đa dạng di truyền trong sinh vật.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Chọn ngẫu nhiên hai hay nhiều cá thể trong quần thể Giả sử chuỗi nhiễm sắc thể của cha và mẹ đều có chiều dài là m

502 Bad GatewayUnable to reach the origin service The service may be down or it may not be responding to traffic from cloudflared

2.1.5.2 Quá trình đột biến (phép đột biến)

Các toán tử của giải thuật di truyền

502 Bad GatewayUnable to reach the origin service The service may be down or it may not be responding to traffic from cloudflared

Hình 2.1: Các toán tử của giải thuật di truyền

502 Bad GatewayUnable to reach the origin service The service may be down or it may not be responding to traffic from cloudflared

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong quá trình lai ghép điểm đơn, mặt nạ lai ghép luôn bắt đầu với chuỗi gồm n giá trị 1 liên tiếp, theo sau đó là các giá trị 0 cần thiết để hoàn chỉnh chuỗi Điều này giúp phân phối các bit của con cành giữa hai cha một cách rõ ràng, với phần đầu của bit do cha đầu tiên đảm nhiệm và phần còn lại do cha thứ hai Mỗi lần thực hiện lai ghép điểm đơn, điểm lai ghép được chọn ngẫu nhiên, sau đó mặt nạ lai ghép được tạo ra để áp dụng nhằm đảm bảo sự phân chia bit chính xác và linh hoạt.

Lai ghép hai điểm là quá trình tạo ra cá thể con bằng cách thay thế các đoạn trung gian của cá thể cha vào giữa chuỗi của cá thể mẹ, tạo ra một cá thể mới Mặt nạ lai ghép là một chuỗi bắt đầu với n 0 trị 0, theo sau là chuỗi liên tục n 1 trị 1, tiếp đó là các số trị 0 cần thiết để hoàn chỉnh chuỗi, giúp xác định cách lai ghép các đoạn gen Mỗi lần áp dụng toán tử lai ghép hai điểm, một mặt nạ được tạo ra bằng cách chọn ngẫu nhiên các số nguyên n 0 và n 1, nhằm điều chỉnh quá trình lai tạo Ví dụ, trong mô hình đã trình bày, cá thể con được tạo ra dựa trên mặt nạ với n 0 = 2 và n 1 = 5, phản ánh quá trình lai tạo cụ thể Các cá thể con thường được tạo ra bằng cách hoán đổi vai trò của hai cá thể cha, đảm bảo sự đa dạng di truyền và tối ưu hoá quá trình lai ghép.

Lai ghép đồng nhất là quá trình kết hợp các bit lấy mẫu từ hai cá thể cha theo cách ngẫu nhiên và độc lập Trong mô hình này, mặt nạ lai ghép được tạo ra như một chuỗi bit ngẫu nhiên, trong đó mỗi bit được chọn một cách ngẫu nhiên mà không ảnh hưởng đến các bit khác Phương pháp này giúp đảm bảo tính đa dạng và hiệu quả trong quá trình lai ghép gen, đồng thời nâng cao khả năng khai thác các đặc tính tốt nhất từ hai cá thể cha.

Hình 2.2 minh họa quá trình lai ghép đồng nhất trong di truyền học, trong đó lai ghép số học NST con được tạo thành bằng cách thực hiện các phép toán logic như AND, OR trên cặp NST bố mẹ Phương pháp này giúp xác định các đặc điểm di truyền của thế hệ con dựa trên sự kết hợp của các gen từ cha mẹ Lai ghép số học NST là kỹ thuật quan trọng trong nghiên cứu di truyền, hỗ trợ hiểu rõ cách các gene tương tác và truyền đạt trong quá trình di truyền.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Hình 2.3: Lai ghép số học

Hình 2.4: Mô hình các toán tử chung cho thuật giải di truyền

Trong quá trình tối ưu hóa, các toán tử tái tổ hợp đóng vai trò quan trọng bằng cách kết hợp các phần của hai cá thể cha để tạo ra cá thể con phù hợp hơn Ngoài ra, còn có các toán tử đột biến, tạo ra những thay đổi ngẫu nhiên nhỏ trong chuỗi bit bằng cách chọn ngẫu nhiên một vị trí và thay đổi giá trị của bit đó Thường thì, đột biến được thực hiện sau quá trình lai ghép nhằm duy trì đa dạng di truyền và nâng cao khả năng tìm kiếm giải pháp tối ưu trong các thuật toán di truyền.

Một số hệ thống GA sử dụng các toán tử đặc biệt được tùy chỉnh để biểu diễn giả thuyết cụ thể, nhằm nâng cao hiệu quả và chính xác của quá trình tìm kiếm Những toán tử này giúp hệ thống xử lý các biểu thức phức tạp một cách linh hoạt hơn, từ đó tối ưu hóa kết quả và tăng khả năng thích nghi trong các bài toán tối ưu hóa Việc mượn các toán tử đặc biệt này là một yếu tố quan trọng góp phần làm cho hệ thống GA trở nên mạnh mẽ và phù hợp với nhiều lĩnh vực ứng dụng khác nhau.

Mặt nạ lai ghép Các cá thể con

Lai ghép đồng nhất : Đột biến điểm :

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Grefenstette et al (1991) giới thiệu hệ thống học tập luật điều khiển robot, ứng dụng kỹ thuật đột biến và lai ghép để tối ưu hóa các luật điều khiển Phương pháp này sử dụng toán tử đặc biệt hóa nhằm nâng cao hiệu quả và khả năng thích nghi của hệ thống robot trong các môi trường thay đổi Nhờ đó, hệ thống học tập tự nhiên và ngày càng cải thiện khả năng thực hiện nhiệm vụ chính xác hơn.

Các tham số của giải thuật di truyền

Xác suất lai ghép là tham số quan trọng phản ánh tần suất thực hiện phép lai ghép trong quá trình tối ưu hóa Khi xác suất này bằng 0%, các cá thể con sẽ là bản sao chính xác của cá thể “cha mẹ”, không xảy ra quá trình lai ghép Ngược lại, nếu xác suất lai ghép là 100%, mọi cá thể con đều được tạo ra hoàn toàn qua quá trình lai ghép, giúp tăng cường sự đa dạng di truyền trong quần thể Tỷ lệ lai ghép ảnh hưởng lớn đến hiệu quả và khả năng khám phá nghiệm tối ưu trong thuật toán di truyền.

Xác suất đột biến là tham số quan trọng thể hiện tần suất xuất hiện của các đột biến trên nhiễm sắc thể Nếu không có đột biến, thế hệ con sẽ được sinh ra sau giai đoạn lai ghép mà không có sự thay đổi về nhiễm sắc thể Ngược lại, một hoặc nhiều phần của nhiễm sắc thể có thể bị thay đổi, ảnh hưởng đến đặc điểm di truyền của thế hệ sau Xác suất đột biến bằng 100% đồng nghĩa toàn bộ nhiễm sắc thể sẽ bị thay đổi, trong khi đó, nếu bằng 0%, không có sự thay đổi nào xảy ra Hiểu rõ mức độ đột biến qua tham số này giúp dự đoán chính xác hơn về các biến thể sinh học.

Kích thước quần thể là tham số thể hiện số lượng cá thể (NST) trong một thế hệ của quần thể, ảnh hưởng lớn đến khả năng lai ghép thành công Nếu quần thể quá nhỏ, phạm vi tìm kiếm gen di truyền sẽ bị hạn chế, giảm khả năng đa dạng di truyền và thích nghi Ngược lại, kích thước quần thể quá lớn có thể làm chậm quá trình giải quyết bài toán tối ưu và gây tốn nhiều tài nguyên Do đó, việc duy trì kích thước quần thể phù hợp là yếu tố quan trọng để cân bằng giữa khả năng khảo sát đa dạng di truyền và hiệu quả tính toán.

Các công thức của giải thuật di truyền

Tính độ thích nghi eval(v i ) của mỗi nhiễm sắc thể v i (i=1…kích thước của quần thể)

Với f (v i ) là hàm mục tiêu

Tìm tổng giá trị thích nghi của quần thể

Tính xác suất chọn p i cho mỗi nhiễm sắc thể v i

Tính xác suất tích lũy q i cho mỗi nhiễm sắc thể v i

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Quá trình chọn lọc diễn ra bằng cách quay bánh xe roulette để chọn các cá thể từ quần thể hiện hành Mỗi lần quay, một nhiễm sắc thể được chọn dựa trên xác suất tỷ lệ thuận với khả năng sinh sản của chúng, sau đó được chuyển vào quần thể mới Phương pháp này đảm bảo các cá thể có phẩm chất tốt hơn có khả năng sinh tồn và phát triển cao hơn trong quá trình chọn lọc tự nhiên Quy trình này giúp duy trì và cải thiện chất lượng gen của quần thể qua từng vòng lặp.

Phát sinh một số ngẫu nhiên r trong khoảng [0, 1]

Nếu r < q 1 thì chọn nhiễm sắcthể v 1 , ngượclại chọn nhiễm sắcthể v i (2 ≤i ≤ kích thước quần thể)sao cho q i-1 < r≤ q i

Các thành phần của giải thuật di truyền

Hình 2.5: Sơ đồ cấu trúc giải thuật di truyền

Cấu trúc cơ bản của giải thuật di truyền:

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Tính độ thích nghi cho các cá thể thuộc P(t);

Khi (điều kiện dừng chưa thỏa) lặp t=t+1;

Sau đây là những nguyên tắc cơ bản thực hiện giải thuật di truyền

Bước 1: Khởi tạo và mã hóa một quần thể ngẫu nhiên của nhiễm sắc thể Đó gọi là

Bước 2: Đánh giá độ thích nghi của mỗi NST trong quần thể hiện tại

Bước 3 trong quá trình sinh học hoặc tối ưu thuật toán là tạo ra thế hệ trung gian bằng cách lựa chọn các nhiễm sắc thể dựa trên mức độ thích nghi của chúng trong quần thể hiện tại Quá trình này giúp xác định các cá thể có khả năng sinh sản cao hơn, từ đó phát triển các thế hệ tiếp theo Việc chọn lọc các nhiễm sắc thể phù hợp đảm bảo sự tiến triển hiệu quả của quần thể, đồng thời duy trì tính đa dạng di truyền cần thiết cho sự thích nghi và tiến bộ của hệ thống.

Bước 4 trong quá trình di truyền học là áp dụng toán tử lai ghép và nghịch đảo đối với các cặp hoặc nhiễm sắc thể đơn trong thế hệ trung gian Quá trình này giúp tạo ra một thế hệ nhiễm sắc thể mới, góp phần hình thành quần thể hiện tại Điều này nhấn mạnh vai trò của các phép lai ghép và đảo nghịch trong quá trình biến dị và di truyền giữa các thế hệ.

Lặp lại các bước 2-4 cho đến khi một giải pháp phù hợp được tìm thấy

2.5.1 Khởi tạo quần thể ban đầu

Quần thể đầu tiên trong thuật giải là điểm xuất phát của quá trình tiến hóa, gồm tất cả các giá trị thô ban đầu Phương pháp khởi động quần thể phù hợp với đặc thù của bài toán và thường được thực hiện ngẫu nhiên từ miền xác định của các lời giải Cách tạo quần thể ban đầu phụ thuộc nhiều vào kỹ thuật mã hóa nhiễm sắc thể, đòi hỏi xác định rõ nhiễm sắc thể và cá thể phù hợp với đề bài Trước khi áp dụng thuật toán di truyền, việc phân tích và xác định chính xác các yếu tố này là bước quan trọng, vì kết quả cuối cùng thường dựa trên cơ sở này.

Bài toán tìm cực trị của hàm số f với n biến liên tục là việc xác định điểm cực đại hoặc cực tiểu của hàm trong miền D = [a, b], là một tập con của tập số thực Để giải quyết bài toán này, chúng ta sử dụng phương pháp mã hóa giá trị, trong đó các biến của hàm được mã hóa trong khoảng [0, 1], giúp tối ưu hóa quá trình tìm kiếm Một bước quan trọng trong phương pháp này là xây dựng một mảng hai chiều V[Size, N] để lưu trữ tập dữ liệu, từ đó dễ dàng thao tác và xác định các điểm cực trị của hàm số.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

25 lời giải ban đầu Trong đó, Sizelà số hàng (số cáthểtrong quần thể), N là số cột (số biến trong hàm mục tiêu)

Với bài toán tối ưu không ràng buộc sau:

Bài toán yêu cầu tìm giá trị của x trong đoạn [-1;2] sao cho hàm số f đạt giá trị lớn nhất Quá trình giải quyết bắt đầu bằng việc xác định x₀ sao cho F(x₀) >= f(x) với mọi x thuộc đoạn này Quá trình khởi tạo đơn giản bằng cách tạo một quần thể các nhiễm sắc thể, mỗi nhiễm sắc thể là một vectơ nhị phân 22 bit, với tất cả các bit được tạo ngẫu nhiên.

2.5.2 Các phương pháp mã hóa

Trong giải thuật di truyền, việc mã hóa dữ liệu là bước cần thiết để giải quyết bài toán hiệu quả Tùy thuộc vào đặc điểm của từng bài toán, chúng ta sẽ áp dụng các phương pháp mã hóa phù hợp để tối ưu hóa quá trình tìm kiếm giải pháp Các phương pháp mã hóa phổ biến bao gồm các kỹ thuật cơ bản như mã hóa nhị phân, mã hóa thập phân, và mã hóa thẳng, giúp đại diện dữ liệu rõ ràng và dễ xử lý trong quá trình tối ưu Việc lựa chọn phương pháp mã hóa phù hợp là yếu tố quyết định đến hiệu quả của giải thuật di truyền trong việc tìm ra giải pháp tối ưu cho bài toán.

Mã hóa nhị phân là phương pháp mã hóa phổ biến nhất, trong đó mỗi nhiễm sắc thể (lời giải) được biểu diễn dưới dạng chuỗi nhị phân gồm các bit 0 và 1 Mỗi bit trong chuỗi này có thể đại diện cho một đặc tính của nghiệm, giúp tối ưu quá trình xử lý và tìm kiếm giải pháp trong các thuật toán tối ưu hóa Mã hóa nhị phân đóng vai trò quan trọng trong lĩnh vực công nghệ thông tin và trí tuệ nhân tạo, cung cấp cách thức lập trình linh hoạt và hiệu quả.

Mã hoá nhị phân thường được sử dụng trong các bài toán tối ưu hàm một biến hoặc nhiều biến, giúp biểu diễn các hàm tại các tập giá trị của biến một cách chính xác Ngoài ra, phương pháp này còn ứng dụng rộng rãi trong nhiều loại bài toán khác nhau, đóng vai trò quan trọng trong lĩnh vực tối ưu hóa và xử lý dữ liệu.

Trong bài toán cái túi, để biểu diễn cách xếp đồ vào túi một cách hiệu quả, chúng ta sử dụng chuỗi nhị phân có độ dài bằng số lượng đồ vật Mỗi bit trong chuỗi tương ứng với một đồ vật, trong đó giá trị 0 biểu thị đồ vật đó không được chọn để bỏ vào túi, còn giá trị 1 thể hiện đồ vật đó được chọn để bỏ vào Phương pháp này giúp mô phỏng và phân tích các tập hợp đồ vật một cách rõ ràng, thuận tiện cho quá trình tối ưu hóa và tìm ra giải pháp phù hợp.

Mã hóa nhị phân là phương pháp phổ biến trong lưu trữ và xử lý dữ liệu, tuy nhiên nó có nhược điểm lớn là có thể tạo ra không gian mã hóa lớn hơn so với không gian giá trị của nhiễm sắc thể Do đó, trong nhiều bài toán tối ưu, biểu diễn nhị phân thường không còn hiệu quả và dễ gây lãng phí bộ nhớ Việc lựa chọn phương pháp mã hóa phù hợp đóng vai trò quan trọng trong tối ưu hóa hiệu suất xử lý dữ liệu.

Mã hóa hoán vị là phương pháp biểu diễn thứ tự các phần tử trong một chuỗi dưới dạng một chuỗi các số nguyên thể hiện thứ tự phân bố lời giải của bài toán Phương pháp này thường được áp dụng trong các bài toán liên quan đến sắp xếp thứ tự, như bài toán du lịch hay bài toán lập lịch, giúp tối ưu hóa quá trình tìm giải pháp một cách hiệu quả.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Mã hóa hoán vị phù hợp cho các bài toán liên quan đến thứ tự, giúp xác định và thay đổi trình tự của các yếu tố trong chuỗi Trong các bài toán này, thao tác trên các nhiễm sắc thể chính là hoán vị các số trong chuỗi để sắp xếp lại thứ tự các thành phố mà người du lịch đi qua Việc sử dụng mã hóa hoán vị giúp tối ưu hóa quá trình xác định thứ tự các điểm đến, đảm bảo hiệu quả trong các bài toán liên quan đến lập lịch trình và tối ưu hóa tuyến đi.

Ví dụ: Trong bài toán người du lịch, để biểu diễn một cách đi của người du lịch thì dùng một nhiễm sắc thể mà trình tự

Mã hóa giá trị trực tiếp theo giá trị là phương pháp được sử dụng trong các bài toán liên quan đến giá trị phức tạp, chẳng hạn như trong số thực Trong phương pháp này, mỗi nhiễm sắc thể tương ứng với một chuỗi các giá trị đa dạng, có thể là số nguyên, số thực, ký tự hoặc các đối tượng phức tạp hơn Việc mã hóa này giúp tối ưu hóa quá trình xử lý dữ liệu trong các thuật toán tối ưu hóa, đảm bảo tính linh hoạt và chính xác trong đại diện dữ liệu.

Mã hóa theo giá trị thường được sử dụng cho các bài toán đặc biệt, đòi hỏi phải phát triển các toán tử đột biến và lai ghép phù hợp với từng bài toán nhằm tối ưu hóa hiệu quả xử lý.

Cá thể C (back), (back),(right), (forward), (left)

Mã hóa theo cấu trúc cây: mỗi nhiễm sắc thể là một cây của đối tượng nào đó

Hình 2.6: Mã hóa theo cấu trúc cây

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

2.5.3 Hàm thích nghi - Đánh giá cá thể

Hàm thích nghi đóng vai trò như một thước đo để đánh giá độ tốt của từng cá thể trong quần thể, giúp so sánh và xác định cá thể nào phù hợp hơn với mục tiêu của bài toán Việc chọn hàm thích nghi phù hợp phải dựa trên đặc điểm và ngữ cảnh của bài toán, đặc biệt trong các bài toán phức tạp, cần phải chứng minh tính thích hợp của hàm thích nghi để đảm bảo hiệu quả tối ưu Hàm thích nghi ảnh hưởng trực tiếp đến việc chọn lựa các tham số, các toán tử di truyền và quá trình hội tụ của thuật toán, từ đó quyết định quá trình tối ưu diễn ra nhanh chóng hay chậm chạp Trong các bài toán đơn giản, hàm thích nghi thường chính là hàm tối ưu được yêu cầu trong đề bài.

Ví dụ minh họa: Tìm đáp số cho phương trình x*x=64

Tức làtìm giá tị của x để x*xd

Hệ thập phân Hệ nhị phân

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Chọn 4 số trong những đáp số có thể cho bài toán(mẫu thử ban đầu ở đây n=4)

Thứ tự Nhị phân Thập phân

Chọn hàm thích nghi f(x)= 1000 - |x*x-64| và quy định đáp số nào có hệ số thích nghi bằng 1000 hay gần 1000 nhất sẽ là đáp số của bài toán

Thứ tự (1) Nhị phân (2) Thập phân (3) Bình phương hệ số ở cột (3) trừ 64

2.6.4 Các phép toán di truyền

Dựa trên bảng thống kê, số 10 và 4 có hệ số thích nghi cao hơn so với các số còn lại, cho thấy chúng phù hợp để tiến hành lai ghép và đột biến nhằm nâng cao khả năng thích nghi Trong khi đó, các số 21 và 24 có hệ số thích nghi thấp hơn sẽ bị loại bỏ để tập trung vào các yếu tố tiềm năng hơn trong quá trình chọn lọc.

Xét lại sự thích nghi của từng cá thể

Thứ tự (1) Nhị phân (2) Thập phân (3) Bình phương hệ số ở cột (3) trừ 64

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

2.6.5 Điều kiện dừng Đây cũng là một bài toán thuộc dạng tìm giá trị của x Cũng giống như ví dụ trên khi giải thuật tìm ra giá trị của x đạt yêu cầu của bài toán thì sẽ dừng Do đó, điều kiện dừng của bài toán là kết thúc theo kết quả

Dựa vào bảng trên ta có thể thấy giá trị của x là 8 vì khi x bằng 8 thì độ thích nghi của cá thể là tuyệt đối.

TÌM HIỂU MỘT SỐ CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN

Công trình nghiên cứu “An Investigation of Genetic Algorithm and

Sequential Local Search Approach for Curriculum-based Course Timetabling Problems” của Abdullah, Turabieh, Mccollum, and Burke (2009)

Nghiên cứu của Abdullah, Turabieh, McCollum và Burke giới thiệu một giải thuật di truyền kết hợp với tìm kiếm cục bộ tuần tự để tối ưu hóa xếp thời khóa biểu cho các chương trình giảng dạy Thuật toán được chia thành hai pha chính: pha khởi tạo tạo ra các thời khóa biểu khả thi ban đầu, và pha cải tiến sử dụng kỹ thuật di truyền với cách thức trao đổi chéo đơn điểm để tối ưu hoá các giải pháp Trong quá trình này, một phương pháp sửa chữa được áp dụng để đảm bảo tính khả thi của các giải pháp sau khi tái tổ hợp, cùng với thuật toán tìm kiếm cục bộ giúp nâng cao chất lượng thời khóa biểu trước khi chuyển sang thế hệ tiếp theo Kết quả thực nghiệm cho thấy giải thuật đạt được 3 trong số 21 kết quả tối ưu, thể hiện hiệu quả đáng kể trong việc lập kế hoạch thời khóa biểu.

Trong bài viết này, chúng tôi giới thiệu việc áp dụng giải thuật di truyền kết hợp với tìm kiếm cục bộ tuần tự để tối ưu hóa bài toán xếp thời khóa biểu dựa trên chương trình đào tạo của các trường đại học Phương pháp này giúp nâng cao hiệu quả sắp xếp lịch học phù hợp, đáp ứng các yêu cầu về môn học và thời gian của sinh viên cũng như giảng viên Kết quả nghiên cứu cho thấy sự kết hợp giữa giải thuật di truyền và tìm kiếm cục bộ mang lại giải pháp tối ưu hơn so với các phương pháp truyền thống, góp phần nâng cao chất lượng đào tạo Đây là hướng đi tiềm năng trong việc giải quyết các bài toán sắp xếp lịch phức tạp trong giáo dục đại học, giúp tạo ra lịch trình linh hoạt, phù hợp và tối ưu hóa nguồn lực.

Để giải quyết vấn đề hiệu quả, nên đề xuất một lịch trình cố định gồm ngày và khung giờ rõ ràng cho tất cả các bài giảng của từng môn học trong khóa học Việc xác định một phòng học riêng cho toàn bộ các buổi học giúp tạo ra sự thống nhất và dễ dàng trong việc quản lý lịch trình, đồng thời xây dựng bộ quy định cứng và mềm phù hợp Điều này đảm bảo tính linh hoạt và logic trong quá trình tổ chức giảng dạy, góp phần nâng cao hiệu quả học tập và quản lý khóa học.

Các bài giảng: tất cả các bài giảng của một khóa học cần phải lên lịch và được phân công cho các thời gian khác nhau

Trong chương trình đào tạo, tất cả các bài giảng của các khóa học do cùng giảng viên giảng dạy phải được phân bổ vào các thời gian khác nhau để tránh xung đột lịch học Điều này đảm bảo sinh viên có thể tham gia đầy đủ các buổi học mà không bị trùng lịch, nâng cao hiệu quả học tập Việc quản lý thời gian hợp lý giữa các bài giảng giúp duy trì chất lượng giảng dạy và tối ưu hóa trải nghiệm học tập cho người học.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong trường hợp giảng viên không sẵn sàng giảng dạy khóa học trong thời gian dự kiến, toàn bộ các bài giảng của khóa đó không thể được sắp xếp hoặc phân phối đúng lịch trình đã đề ra Điều này đảm bảo rằng chất lượng và tiến độ của khóa học không bị ảnh hưởng khi không có sự chuẩn bị hoặc sẵn sàng từ phía giảng viên Việc này giúp duy trì tính chuyên nghiệp và kỷ luật trong quá trình giảng dạy, đồng thời tối ưu hóa trải nghiệm học tập cho học viên.

Phòng học: hai bài giảng không thể được sắp trong cùng 1 phòng trong cùng

Sức chứa phòng học là số lượng sinh viên tối đa có thể tham gia trong mỗi buổi giảng, đảm bảo không vượt quá số chỗ ngồi của các phòng học được sử dụng Việc này giúp đảm bảo tổ chức lớp học phù hợp, tránh quá tải và nâng cao chất lượng giảng dạy Khi lên kế hoạch cho khóa học, cần xác định rõ sức chứa của từng phòng để sắp xếp sinh viên một cách hợp lý, đảm bảo mọi sinh viên đều có chỗ ngồi và tạo điều kiện học tập thuận lợi.

Công việc ít nhất của ngày: các bài giảng của mỗi khóa học phải được trãi vào số lượng tối thiểu nhất định của ngày

Các bài giảng bị cô lập: các bài giảng thuộc chương trình giảng dạy cần phải liền kề nhau(tức là trong thời gian liên tiếp)

Các thuật toán thường được chia thành hai giai đoạn chính: xây dựng ban đầu và cải tiến Trong lĩnh vực lập lịch trường đại học, phần lớn các giải pháp ban đầu liên quan đến vấn đề thời khóa biểu được xây dựng dựa trên phương pháp tìm kiếm tô màu đồ thị, giúp giải quyết các thách thức chung của vấn đề Sau đó, các thuật toán cải tiến thường sử dụng phương pháp tìm kiếm lân cận để tối ưu hóa kết quả ban đầu Việc hiểu rõ quá trình này là cần thiết để phát triển các giải pháp hiệu quả cho các bài toán lập lịch phức tạp.

Một phương pháp xây dựng thuật toán dựa trên đề xuất của Chiarandini và Landa-silva cùng Obit đã được sử dụng để tạo ra quần thể lớn các giải pháp ngẫu nhiên ban đầu Thuật toán này bao gồm ba giai đoạn chính: tìm kiếm rộng, tìm kiếm lân cận và tìm kiếm cản trở, như đã trình bày trong dạng mã giả Phương pháp xây dựng thuật toán này chính là xây dựng thuật toán lai ghép, giúp tối ưu hóa quá trình tìm kiếm giải pháp hiệu quả hơn Cách tiếp cận này đặc biệt hiệu quả vì có khả năng cung cấp các giải pháp khả thi cho mọi bộ dữ liệu nhờ sự kết hợp mạnh mẽ của ba giai đoạn tìm kiếm liên tục.

Tiêu chuẩn của giải thuật di truyền tập trung vào phạm vi tìm kiếm toàn cục, giúp khám phá các giải pháp tiềm năng rộng hơn so với phương pháp tìm kiếm cục bộ, vốn dựa chủ yếu vào phạm vi tìm kiếm hạn chế Hiểu rõ hơn về tìm kiếm cục bộ, các nhà nghiên cứu nhận thấy rằng việc tích hợp giải thuật di truyền với các kỹ thuật tìm kiếm cục bộ có thể tối ưu hóa quá trình tìm kiếm, đặc biệt khi cần thông tin chuyên hóa về chức năng tối thiểu hoặc tối đa Thực tế, đã có nhiều nghiên cứu đề xuất và thử nghiệm sự kết hợp này trong các dự án quan trọng, cho thấy hiệu quả rõ rệt của phương pháp lai ghép giữa hai kỹ thuật Nhờ sức mạnh tổng hợp đó, chúng tôi đã nâng cao thuật toán của mình bằng cách kết hợp tối ưu giữa giải thuật di truyền và các phương pháp tìm kiếm cục bộ, đảm bảo giải pháp tối ưu hơn trong quá trình tối ưu hóa.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong nghiên cứu này, hoạt động trao đổi chéo không được sử dụng và thuật toán được kiểm thử trên 11 bộ dữ liệu khác nhau Quá trình tìm kiếm bắt đầu với việc hình thành một quần thể các giải pháp ban đầu, sau đó trong mỗi thế hệ, các cá thể được chọn lọc dựa trên mức độ thích nghi của chúng để đảm bảo sự tối ưu Quá trình lai ghép và đột biến diễn ra để tạo ra các cá thể mới, thay thế quần thể hiện tại trong các vòng lặp tiếp theo của thuật toán Ngoài ra, chức năng sửa lỗi được áp dụng nhằm điều chỉnh các giải pháp không khả thi để đảm bảo tính khả thi của chúng trong mỗi 3 bước lặp tiếp theo.

Bước 1: Tìm khoảng thời gian trống cho mỗi phòng

Bước 2: Tìm khoảng thời gian trống cho mỗi sự kiện

Bước 3: Tìm khoảng thời gian thực hiện được cho phòng và sự kiện (tức là ta giao giữa bước 1 với bước 2)

Thuật toán tìm kiếm cục bộ tuần tự được sử dụng để cải thiện quá trình tối ưu hóa trong giải thuật di truyền, giúp tăng tốc độ hội tụ của giải pháp Quá trình này thường được áp dụng trước khi chuyển sang thế hệ tiếp theo, nhằm đảm bảo sự tối ưu hóa nhanh chóng và hiệu quả hơn Sau đó, giải thuật tìm kiếm cục bộ được tích hợp trở lại vào giải thuật di truyền, tiếp tục nâng cao chất lượng của các giải pháp trong các thế hệ tiếp theo.

Hình 3.1:Thuật toán của giải thuật

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Hình 3.2: Sơ đồ giải thuật của công trình nghiên cứu

Các thử nghiệm liên quan đến việc xếp thời khóa biểu khóa học dựa trên chương trình đào tạo đã được thực hiện thành công trên 21 trường hợp thực tế tại Đại học Udine Các kết quả và chi tiết về từng trường hợp đều được công bố để người dùng dễ dàng truy cập tại http://tabu.diegm.uniud.it/ctt/index.php Đây là minh chứng rõ ràng cho tính khả thi và hiệu quả của phương pháp đề xuất trong việc tối ưu hóa thời khóa biểu khóa học theo chương trình đào tạo.

Chi tiết về trường hợp comp01

Statistics (per course/per lecture):

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Lectures Per Day Per Curriculum:

Room occupation: per room 88.893%, per seat 45.986%

Chi tiết về trường hợp comp02

Statistics (per course/per lecture):

Lectures Per Day Per Curriculum:

Room occupation: per room 70.755%, per seat 46.282%

Bảng 3.1 trình bày các thông số quan trọng của giải thuật di truyền sau quá trình thử nghiệm Các thuật toán đề xuất đã được lập trình bằng MATLAB và các mô phỏng được thực hiện trên máy tính Intel Pentium IV 2,33 GHz để đảm bảo độ chính xác và hiệu quả trong quá trình kiểm thử.

Bảng 3.1: Các thông số được sử dụng trong giải thuật

Bảng 3.2 trình bày kết quả thu được, so sánh với các giải pháp tối ưu đã biết, với các kết quả tốt nhất được nêu rõ bằng in đậm Mỗi dữ liệu được tạo ra với 1.000 thế hệ, thể hiện kết quả trung bình của 10 lần chạy Đáng chú ý, 729 phương pháp đạt kết quả tốt nhất trên 3 trong số 21 vấn đề được khảo sát, cho thấy sự phát triển và hiệu quả của các giải pháp trong lĩnh vực này.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Thời gian xử lý tối đa cho mỗi lần chạy là 60 giây, dựa trên tiêu chuẩn của ITC2007, đảm bảo điều kiện dừng phù hợp Phương pháp tiếp cận này giúp tạo ra lịch trình tối thiểu hóa hao phí tại các hệ thống như comp01 và comp02, đồng thời có khả năng tìm ra giải pháp toàn cục tại comp11 Kết quả thu được thường được so sánh với hiệu suất của các phương pháp tìm kiếm khác và các kỹ thuật toán học, chứng minh tính khả thi và hiệu quả của phương pháp Việc tích hợp các chiến lược tăng cường và đa dạng hóa trong thuật toán không chỉ giúp cân bằng quá trình hội tụ mà còn nâng cao chất lượng các giải pháp đề xuất. -**Sponsor**Sounds like you're looking to refine your article and make sure it's SEO-friendly! Rewriting for SEO can be tough You know how hard it is to keep up with content creation? 😅 With [Article Generation](https://pollinations.ai/redirect-nexad/t3t29Eo3?user_id=983577), you can get 2,000-word SEO-optimized articles instantly and save over $2,500 a month compared to hiring a writer! It's like having your own content team—without the hassle!

GA and Sequential Local Search Best Known Solution

Công trình nghiên cứu “Using Genetic Algorithms to Solve the South African

African School Timetabling Problem” của Raghavjee và Pillay (2010)

Nghiên cứu này trình bày việc ứng dụng giải thuật di truyền để tối ưu hóa việc xếp thời khóa biểu cho trường tiểu học và trung học tại Nam Phi Giải thuật giúp hướng dẫn quá trình tìm kiếm bằng cách sử dụng phạm vi hiểu biết trong các phương pháp tìm kiếm mức thấp, nâng cao hiệu quả tối ưu hóa Các thuật toán di truyền trong nghiên cứu áp dụng toán tử chọn lọc cạnh tranh và đột biến để lựa chọn cha mẹ và tạo ra thế hệ mới, nâng cao chất lượng thời khóa biểu Kết quả cho thấy, giải thuật di truyền mang lại thời khóa biểu cho trường trung học có chất lượng tốt hơn so với các phương pháp truyền thống và thuật toán di truyền cổ điển từng được sử dụng Đồng thời, giải pháp này còn tạo ra thời khóa biểu cho trường tiểu học vượt trội hơn so với hệ thống hiện đang ứng dụng trong nhà trường, góp phần tối ưu hóa quản lý lịch học hiệu quả.

Raghavjee và Pillay đã áp dụng giải thuật di truyền để giải bài toán xếp thời khóa biểu cho trường tiểu học và trung học ở Nam Phi Quá trình diễn ra theo phương pháp hai pha: pha đầu tạo ra các thời khóa biểu khả thi, còn pha hai tập trung vào việc cải thiện những giải pháp đã có Mỗi cá thể trong quần thể là một thời khóa biểu, thể hiện dưới dạng ma trận với các hàng tương ứng thời gian, cột tượng trưng lớp học, và giao điểm là sự phân công giáo viên vào thời gian đó Để bắt đầu, phương pháp xây dựng tuần tự được sử dụng để tạo quần thể ban đầu gồm m cá thể, sau đó những cá thể phù hợp nhất sẽ được sao chép vào quần thể ban đầu của giải thuật Quá trình này lặp đi lặp lại nhiều lần để xây dựng quần thể ban đầu cho pha 1 của giải thuật di truyền Trong quá trình khởi tạo, mỗi cá thể được xác định bằng cách gán giá trị lớp-giáo viên trong khoảng thời gian cho trước, đồng thời sử dụng kỹ thuật tìm kiếm cấp thấp để đánh dấu độ ưu tiên cho các bộ giá trị khó xác định, ví dụ như khi có ít thời gian khả thi, các bộ giá trị này sẽ được ưu tiên hơn.

Sau khi hoàn thành pha đầu tiên với vài thế hệ, pha thứ hai bắt đầu từ thế hệ cuối cùng của pha trước, trong đó ước lượng thích nghi của pha đầu tiên coi là ràng buộc cứng và pha thứ hai là ràng buộc mềm Hai toán tử đột biến được sử dụng, gồm đột biến đơn giản đổi vị trí hai ô trong thời khóa biểu cùng lớp và đột biến leo đồi nhằm cải tiến dần thời khóa biểu bằng cách thay đổi giáo viên Nghiên cứu cho thấy giải thuật này hiệu quả trong việc tạo ra thời khóa biểu tối ưu bằng cách đảm bảo tất cả các ràng buộc cứng được thoả mãn.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Nghiên cứu này tập trung vào việc ứng dụng giải thuật di truyền để tối ưu hóa xếp thời khóa biểu cho các trường tiểu học và trung học tại Nam Phi, nhằm nâng cao hiệu quả kế hoạch học tập Phương pháp giải thuật di truyền giúp giải quyết các phức tạp trong việc lập lịch, tiết kiệm thời gian và công sức cho nhà quản lý giáo dục Kết quả của nghiên cứu cho thấy giải thuật di truyền có khả năng tạo ra các lịch học hợp lý, phù hợp với nhu cầu của từng trường, đồng thời cải thiện trải nghiệm học tập của học sinh Nghiên cứu này khẳng định tiềm năng sử dụng các thuật toán tiến tiến để giải quyết các vấn đề lập kế hoạch trong lĩnh vực giáo dục tại Nam Phi.

Vấn đề xếp thời khóa biểu trường học liên quan đến việc phân chia dữ liệu về lớp học, giảng viên và phòng học để xác định khoảng thời gian phù hợp Quá trình này cần đáp ứng các yêu cầu về thời gian, đảm bảo tuân thủ các ràng buộc cứng của bài toán Đồng thời, việc tối ưu hóa thời khóa biểu còn nhằm giảm thiểu tối đa các vi phạm ràng buộc mềm, góp phần nâng cao hiệu quả quản lý lịch học.

Các ràng buộc cứng trong lập lịch trình phải được thỏa mãn để đảm bảo tính khả thi, bao gồm việc sắp xếp tất cả các cuộc gặp giữa lớp và giảng viên, tránh xếp lịch quá tải cho bất kỳ lớp học hay giảng viên nào trong cùng khung giờ, và phân chia hoặc nhóm các lớp học theo yêu cầu đặc thù như ngôn ngữ để phù hợp với các bài học nhất định.

Tất cả các lớp và giáo viên đều phải được xếp thời khóa biểu

Không có giáo viên nào bị trùng giờ dạy trong 1 tiết học

Không có lớp nào bị trùng giờ học (học 2 môn một tiết)

Trong quá trình tổ chức lớp học, yêu cầu chia nhóm cần phải được đáp ứng đầy đủ để đảm bảo hiệu quả giảng dạy Trong một số trường hợp, lớp học cần được chia thành các nhóm nhỏ để học tập và thảo luận, giúp tăng cường sự tương tác và nâng cao kết quả học tập của học sinh Mỗi giáo viên có thể phân chia thành các nhóm khác nhau phù hợp với nội dung bài học, tạo điều kiện thuận lợi cho học sinh tiếp cận kiến thức một cách chủ động hơn.

Ràng buộc mềm trong vấn đề lập thời khóa biểu mô tả các đặc điểm mà thời khóa biểu cần có, nhưng không gây ảnh hưởng tới tính khả thi khi không được thỏa mãn Mục tiêu của việc này là giảm thiểu chi phí ràng buộc mềm, đây cũng chính là thước đo chất lượng của thời khóa biểu Các ràng buộc mềm phổ biến bao gồm việc ưu tiên lớp hoặc giảng viên, như giảng viên có thể dạy vào những khung giờ nhất định hoặc phù hợp với các môn học cụ thể, chẳng hạn như môn toán học được tổ chức vào buổi sáng.

Lớp – tiết: một lớp có thể không có tiết học hoặc được sắp xếp học một số tiết đặc biệt

Giáo viên có thể không có tiết dạy hoặc được sắp xếp dạy một số tiết đặc biệt

Giải thuật trong bài toán này gồm hai pha chính: pha đầu tiên tập trung vào việc tạo ra các lịch trình khả thi, đảm bảo các yêu cầu cơ bản được đáp ứng Pha thứ hai là bước cải tiến nhằm nâng cao chất lượng của các lịch trình đã được tạo ra ở pha đầu tiên, tối ưu hóa các yếu tố như phân bố thời gian và tăng tính hiệu quả Tham khảo mô hình và mô tả về giải thuật này trong hình ảnh dưới đây để hiểu rõ hơn về quy trình và các bước thực hiện.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Hình 3.3: Mô hình mô tả của giải thuật Khởi tạo quần thể

Trong mô hình này, mỗi thành phần của quần thể được biểu diễn dưới dạng một ma trận, trong đó các cột thể hiện tiết học (P1, P2,…) và các hàng biểu diễn lớp học (C1, C2…) Điểm giao nhau giữa hàng và cột thể hiện giáo viên dạy lớp đó vào tiết học tương ứng (T1, T2…) Phương pháp này đảm bảo rằng mỗi lớp học không bị lặp lại trong cùng một tiết học, tối ưu hóa lịch trình và tránh xung đột giữa các lớp.

Một ví dụ về một phần tử của quần thể

Phương thức thiết lập tuần tự giúp khởi tạo quần thể gồm m cá thể, trong đó độ thích nghi của từng cá thể được sao chép giống như quần thể ban đầu Quá trình này bắt đầu bằng việc thiết lập các thời khóa biểu bằng cách phân chia lớp học và giáo viên vào các tiết học cụ thể theo chỉ định Phương pháp này đảm bảo tạo ra các cá thể phù hợp và đa dạng, góp phần nâng cao hiệu quả tối ưu hóa lịch trình học tập.

Trong mỗi bộ dữ liệu, tồn tại một tiết học bất lợi nhất được xác định dựa trên giá trị các ràng buộc mềm, với tiết học có giá trị thấp nhất sẽ được chọn làm tiết học bất lợi nhất Nếu có nhiều tiết học cùng có giá trị thấp nhất, các tiết học này sẽ được chọn ngẫu nhiên để đảm bảo tính công bằng Quá trình đánh giá độ thích nghi và lựa chọn trong giải thuật di truyền diễn ra theo hai pha: pha đầu sử dụng giá trị ràng buộc cứng để đánh giá độ thích nghi, trong khi pha thứ hai dựa trên giá trị ràng buộc mềm nhằm tối ưu hóa kết quả Mục đích của giải thuật di truyền là giảm thiểu độ thích nghi trong cả hai pha, nhằm đạt được giải pháp tối ưu cho bài toán Trong quá trình chọn lọc cá thể cha mẹ, phương pháp chọn lọc cạnh tranh khác biệt được sử dụng để đảm bảo sự đa dạng trong quần thể, nâng cao hiệu quả của thuật toán.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Hình 3.4: Giải thuật của chọn lọc cạnh tranh Đột biến: Giải thuật di truyền sử dụng toán tử đột biến để tạo nên thế hệ con

Có các loại đột biến: Đột biến đơn giản: đầu tiên toán tử đột biến chọn ngẫu nhiên 2 ô và hoán đổi thông tin 2 ô

Toán tử leo đồi là phương pháp hoán đổi hai giáo viên nhằm tối ưu hóa độ thích nghi Quá trình hoán đổi sẽ được thực hiện nếu nó mang lại cải tiến rõ ràng về độ thích nghi, còn nếu không thì tiếp tục thử nghiệm các hoán đổi khác cho đến khi đạt được sự cải thiện mong muốn Hơn nữa, quá trình tìm kiếm hoán đổi cải tiến sẽ được giới hạn về số lần để đảm bảo hiệu quả và tránh vòng lặp vô tận Các bước này giúp nâng cao hiệu suất và tối ưu hóa quá trình lựa chọn giáo viên, phù hợp với các tiêu chí tối ưu hóa trong bài toán tối ưu hóa tổ chức.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Hình 3.5: Giải thuật của toán tử đột biến

Kích thước quần thể được khởi tạo bằng phương thức khởi tạo tuần tự, dẫn đến hiệu năng không được cải thiện đáng kể Kích thước quần thể nhỏ không đủ để tạo thành không gian giải pháp phong phú, trong khi kích thước lớn lại khó đạt được kết quả tối ưu Trong các bài toán, giải thuật di truyền thường cần chạy tới 300 thế hệ ở trường tiểu học và kéo dài đến 1000 thế hệ ở trường trung học để hội tụ Tuy nhiên, đột biến không mang lại cải thiện rõ rệt về hiệu năng của giải thuật di truyền Các giá trị của các biến di truyền được liệt kê rõ ràng trong bảng để phục vụ phân tích.

Trong bài toán ở trường tiểu học

Kích thước quần thể khởi tạo bằng phương thức khởi tạo tuần tự 5

Kích thước quần thể ban đầu 750

Bảng 3.3: Giá trị của các biến trong bài toán ở trường tiểu học

Trong bài toán ở trường trung học

Kích thước quần thể khởi tạo bằng phương thức khởi tạo tuần tự 5

Kích thước quần thể ban đầu 200

Bảng 3.4: Giá trị của các biến trong bài toán ở trường trung học

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong hai trường hợp trường tiểu học và trung học, giải thuật đã giải quyết thành công số ràng buộc cứng và mềm thấp nhất cũng như trung bình sau 10 lần thử nghiệm, như đã được thống kê trong bảng dưới đây Các kết quả này cho thấy hiệu quả của giải thuật trong việc tối ưu hóa các ràng buộc trong các môi trường giáo dục khác nhau Việc phân tích số ràng buộc cứng và mềm trong từng trường hợp giúp đánh giá độ khả thi và phù hợp của giải pháp đối với từng cấp học Đây là những dữ liệu quan trọng góp phần nâng cao hiệu suất và chính xác của giải pháp trong các hệ thống giáo dục.

Trường tiểu học Trường trung học

Giá trị thấp nhất ràng buộc cứng 0 0

Giá trị trung bình ràng buộc cứng 1.1 2

Giá trị thấp nhất ràng buộc mềm - 2

Giá trị trung bình ràng buộc mềm - 2.67

Bảng 3.5: Giá trị các ràng buộc

Công trình nghiên cứu “Time Table Scheduling Using Genetic Algorithms

Algorithms Employing Guided Mutation” của Sapru, Reddy và Sivaselvan

Giải thuật di truyền là phương pháp tối ưu dựa trên cơ chế tiến hóa tự nhiên, tận dụng xác suất để tìm kiếm giải pháp tối ưu mà không cần kiến thức nền phụ trợ Trong nghiên cứu này, giải thuật di truyền được áp dụng để sắp xếp thời khóa biểu đại học, đảm bảo các ràng buộc về khoa và phòng học, qua đó giải quyết các xung đột liên quan đến lịch trình Các phương pháp khai thác sắp xếp và lựa chọn giúp tạo ra thời khóa biểu khả thi, khắc phục các giải pháp ngẫu nhiên không hợp lý Ứng dụng này sử dụng các cấu trúc mã hóa để lựa chọn hợp lý và trao đổi chéo đơn điểm để sinh ra các lịch trình tối ưu hơn Toán tử đột biến đóng vai trò quan trọng trong việc nâng cao khả năng thỏa mãn các ràng buộc, thúc đẩy tạo ra các lịch trình phù hợp và hợp lý hơn.

Sapru, Reddy và Sivaselvan đề xuất phương pháp giải quyết bài toán sắp xếp thời khóa biểu bằng cách chỉ định mỗi tiết học cho một nhóm sinh viên trong một phòng học cố định suốt thời gian diễn ra, đồng thời xem xét các giới hạn về thời gian, tiết học và nguồn tài nguyên Nội dung sắp xếp được mô hình hóa bằng giải thuật di truyền dựa trên biểu diễn mỗi cá thể trong quần thể dưới dạng lịch trình cho 5 ngày trong tuần và 8 giờ mỗi ngày, với mỗi khoảng thời gian lưu trữ thông tin về chủ đề, khoa và phòng đăng ký dưới dạng mã hóa nhị phân Quá trình tối ưu hóa trong nghiên cứu này bao gồm việc chọn ngẫu nhiên một cặp nhiễm sắc thể, thực hiện phép trao đổi chéo đơn điểm và áp dụng toán tử đột biến mới nhằm nâng cao chất lượng giải pháp cho bài toán sắp xếp thời khóa biểu.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Toán tử đột biến có chỉ dẫn tạo ra bản sao của nhiễm sắc thể và ghép mỗi bit của nhiễm sắc thể với xác suất thấp, giúp thúc đẩy quá trình tiến hóa của quần thể Sự thích nghi của nhiễm sắc thể đột biến được so sánh với nhiễm sắc thể ban đầu và sẽ thay thế nếu có độ thích nghi cao hơn, đảm bảo sự tiến bộ của giải pháp tối ưu Toán tử đột biến có chỉ dẫn được áp dụng trên toàn bộ quần thể, góp phần nâng cao hiệu quả của giải thuật di truyền Thực nghiệm cho thấy, phương pháp này giúp tìm kiếm giải pháp khả thi nhanh hơn và hiệu quả hơn so với giải thuật đột biến thường, đặc biệt trong việc tối ưu hóa các bài toán phức tạp.

Bài viết tập trung vào nghiên cứu về việc sắp xếp thời khóa biểu cho giáo dục đại học, giúp tối ưu hóa lịch học cho sinh viên Công việc chính của đề tài là xếp lịch các bài học cho nhóm sinh viên tại địa điểm cụ thể trong khung thời gian phù hợp Quá trình lập thời khóa biểu dựa trên khả năng của khoa và các nguồn tài nguyên sẵn có, nhằm đảm bảo hiệu quả và hợp lý trong quản lý thời gian học tập Nghiên cứu này góp phần nâng cao hiệu quả trong lập kế hoạch học tập của các trường đại học, đáp ứng nhu cầu của sinh viên và giảng viên.

Sau đây là những ràng buộc không thể thay đổi trong bài toán xếp thời khóa biểu của trường đại học:

Trong kế hoạch phân bổ phòng học, mỗi phòng chỉ chứa một lớp học cùng một lúc nhằm đảm bảo sự tiện nghi và tránh xung đột về không gian Tương tự, mỗi nhóm sinh viên chỉ tham gia một lớp học trong cùng một thời gian để đảm bảo quá trình học tập diễn ra hiệu quả và không bị gián đoạn Việc thiết lập quy tắc này giúp tối ưu hóa sử dụng cơ sở vật chất và nâng cao chất lượng học tập cho toàn bộ sinh viên.

Không giảng viên nào đảm nhiệm hơn một lớp học cùng lúc trong cùng một thời gian, đảm bảo sự phân bổ hợp lý và chất lượng giảng dạy Mỗi môn học có số buổi học cố định trong tuần, phản ánh kế hoạch giảng dạy phù hợp nhằm tối ưu hóa thời gian và hiệu quả học tập của sinh viên.

3.3.4 Mô tả giải thuật Để giải quyết bài toán, bài học cần phải được đăng ký với khoa và sắp xếp thời gian để đưa ra được những giải pháp khả thi Cho nên chúng ta cần nghiên cứu những giải pháp được đưa ra để tìm giải pháp tối ưu nhất bởi vì những giải pháp đều tương đương nhau về giải thuật Sựthảo luận chi tiết về kế hoạch mã hóa, và những toán tử được giải thuật di truyền sử dụng sẽ được trình bày sau đây

Mỗi nhiễm sắc thể giống như một thời khóa biểu, chứa đựng thông tin quan trọng về khoa, phòng, môn học, nhóm sinh viên và lịch học hàng tuần Cấu trúc của nhiễm sắc thể được thể hiện dưới dạng một ma trận 5x8, tượng trưng cho 5 ngày trong tuần và 8 đơn vị thời gian mỗi ngày Điều này giúp mô phỏng một lịch trình học tập chi tiết và rõ ràng, phù hợp cho việc tối ưu hóa việc lên kế hoạch học tập.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong bài viết này, mỗi nhóm sinh viên đại diện cho một trong bốn khóa học trong trường đại học và được gán một thông tin riêng qua 47 đơn vị thời gian Thông tin về lớp học của từng nhóm thể hiện dưới dạng nhị phân, trong đó 'trống' tượng trưng cho việc thông tin bị bỏ qua, còn 'đang học' cho biết các dữ liệu như khoa, môn học, và phòng học đã được xác nhận Khi lớp đang học, các thông tin này đã đầy đủ và chính xác, trong khi nếu lớp trống, có nghĩa là một số dữ liệu chưa được cung cấp hoặc chưa rõ ràng Mô hình này giúp dễ dàng theo dõi trạng thái của các lớp học qua các đơn vị thời gian, đồng thời tối ưu hóa quản lý thông tin sinh viên và lớp học trong hệ thống.

Trong bài viết này, mỗi đơn vị thời gian trong cấu trúc C được biểu diễn bằng các giá trị mã hóa gồm 1 bit thể hiện có hoặc không có lớp học, 3 bit mã môn học, 3 bit mã khoa, và 2 bit mã phòng Mỗi nhiễm sắc thể là một mảng gồm các đơn vị thời gian có kích thước 5x8, và quần thể lớn sẽ tạo thành một mảng nhiễm sắc thể Quá trình biểu diễn nhiễm sắc thể mang tính ngẫu nhiên, tương tự như việc tung đồng xu với hai kết quả 0 và 1, giúp mỗi bit trong nhiễm sắc thể có khả năng ngẫu nhiên là 0 hoặc 1, mô phỏng quá trình di truyền và chọn lọc trong hệ sinh thái.

Sự thích nghi của mỗi nhiễm sắc thể dao động từ 0 đến 1, trong đó 0 biểu thị sự vi phạm vô hạn các ràng buộc trên nhiễm sắc thể, còn 1 biểu thị không có ràng buộc nào bị vi phạm Công thức tính sự thích nghi của nhiễm sắc thể dựa trên số lượng ràng buộc bị vi phạm, trong đó F thể hiện mức độ thích nghi và c là số ràng buộc bị vi phạm Giá trị của c phản ánh số lượng ràng buộc vi phạm, giúp đánh giá chính xác mức độ thích nghi của nhiễm sắc thể trong quá trình nghiên cứu.

Mỗi lần c tăng nhiều lớp được xếp vào cùng một phòng trong cùng một khoảng thời gian

Mỗi lần c tăng nhiều lớp được xếp vào cùng một khoa trong cùng một khoảng thời gian

Khi số giờ học thực tế mỗi tuần của một môn học không khớp với số giờ đã khai báo trước đó, hệ thống sẽ tự động cộng thêm vào biến c giá trị tuyệt đối của hiệu giữa hai số này Ví dụ, nếu số giờ học thực tế là 5 và số giờ khai báo là 9, thì biến c sẽ tăng thêm 4, phản ánh sự chênh lệch giữa dự kiến và thực tế Đây là cách để điều chỉnh phù hợp và phản ánh chính xác số giờ học thực tế so với kế hoạch ban đầu.

Cho nên nếu có 1 nhiễm sắc thể nào có giá trị thích nghi là 1 thì đó là một giải pháp khả thi

Toán tử chọn lọc trong giải thuật di truyền đóng vai trò quyết định việc chọn ra các cá thể phù hợp nhất để tạo thành thế hệ tiếp theo Quá trình này dựa trên hàm thích nghi của thế hệ hiện tại, giúp đảm bảo rằng các cá thể có khả năng sinh sản cao hơn sẽ có tỷ lệ chọn lọc lớn hơn Việc sử dụng toán tử chọn lọc hiệu quả giúp tối ưu hóa quá trình tiến hóa của thuật toán, nâng cao khả năng tìm ra nghiệm tối ưu Nhờ đó, giải thuật di truyền tiếp tục tiến tới các giải pháp tốt nhất dựa trên nguyên tắc chọn lọc tự nhiên.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Hàm lựa chọn trong thuật toán tối ưu hóa sẽ chọn ra 5 hoặc 6 nhiễm sắc thể tốt nhất trong thế hệ dựa trên giá trị thích nghi của chúng Sau đó, hàm này sẽ chỉ định số bản sao cao nhất cho các nhiễm sắc thể đã chọn, nhằm nâng cao khả năng tìm kiếm các giải pháp tối ưu Quá trình này giúp duy trì sự đa dạng trong quần thể và tăng khả năng tối ưu hóa hiệu quả của thuật toán di truyền.

Mỗi nhiễm sắc thể chứa một lượng lớn dữ liệu, và quá trình khởi tạo chúng mang tính ngẫu nhiên, dẫn đến các giá trị thích nghi tương tự nhau Sử dụng chọn lọc tự nhiên giúp tạo ra các bản sao chính xác của các nhiễm sắc thể có đặc điểm ưu việt trong thế hệ tiếp theo Toán tử chọn lọc đóng vai trò quan trọng trong việc tăng cường các đặc điểm thuận lợi, đồng thời không gây trì trệ quá trình tiến hóa của thế hệ kế tiếp.

Toán tử trao đổi chéo

Công trình nghiên cứu “Genetic Algorithms and Local Search Strategies for

for University Course Timetabling” của Yang và Jat (2011)

Yang và Jat đã trình bày một bộ hướng dẫn chi tiết về thuật toán di truyền để giải quyết bài toán xếp thời khóa biểu trường đại học Vấn đề liên quan đến việc phân chia các sự kiện như khóa học và giờ học theo thời gian, trong đó một số phòng đặc biệt được chỉ định riêng cho các sự kiện này và có sự tham gia của sinh viên Quá trình sắp xếp thời khóa biểu dựa trên các yếu tố như thời gian, phòng học và số lượng sinh viên, đồng thời phải đảm bảo các điều kiện ràng buộc mềm và cứng Giải pháp đề xuất là sử dụng chiến lược tìm kiếm có hướng dẫn kết hợp với tìm kiếm cục bộ và giải thuật di truyền trạng thái ổn định (Steady Stage GA), nhằm tối ưu hóa việc lập kế hoạch thời khóa biểu hiệu quả.

Trong mô hình tổng quan và giải thuật di truyền, tìm kiếm cục bộ được sử dụng để tối ưu hóa quá trình giải quyết vấn đề Quần thể ban đầu được khởi tạo một cách ngẫu nhiên dựa trên thời gian và phòng cho các sự kiện Tính năng mục tiêu của bài toán là đảm bảo không vi phạm các ràng buộc cứng và mềm quan trọng Toán tử trao đổi chéo thực hiện việc thay đổi thời gian giữa hai cá thể cha và tạo ra các tổ hợp mới bằng cách chỉ định lại phòng cho các sự kiện trong mỗi thời gian đã đăng ký, giúp nâng cao khả năng tìm kiếm giải pháp tối ưu.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong quá trình tối ưu hoá, 53 tử đột biến được lựa chọn dựa trên ba toán tử lân cận (N1, N2, N3) nhằm cải thiện giải pháp Toán tử N1 di chuyển một sự kiện đến thời điểm khác, giúp điều chỉnh lịch trình linh hoạt hơn Toán tử N2 hoán đổi vị trí của hai sự kiện, tạo ra sự đa dạng trong không gian tìm kiếm Toán tử N3 chọn ngẫu nhiên ba sự kiện và thay đổi thứ tự của chúng để khám phá các cấu hình mới Quá trình tìm kiếm cục bộ sau đột biến gồm hai bước chính: loại bỏ các vi phạm ràng buộc cứng đầu tiên, sau đó loại bỏ các vi phạm ràng buộc mềm, tất cả đều dựa trên các toán tử lân cận như N1, N2, N3 nhằm đảm bảo giải pháp hợp lý và tối ưu hơn.

Trong chiến thuật tìm kiếm có hướng dẫn, toán tử trao đổi chéo giúp tạo ra kết quả dựa trên dữ liệu về thông tin sự kiện một cách hiệu quả Thông tin được lưu trữ trong danh sách phòng và thời gian, được kết thành từng cặp cho mỗi sự kiện mà không gặp khó khăn hay ràng buộc phức tạp Cấu trúc dữ liệu này có ưu điểm lớn là lưu trữ những thông tin quan trọng của phương án tốt nhất và truyền tải chúng đến các thế hệ kế tiếp để nâng cao hiệu quả tối ưu hóa.

Giải thuật di truyền tìm kiếm có chỉ dẫn mở rộng vượt trội nhờ việc bổ sung các phương pháp tìm kiếm cục bộ, giúp giảm thiểu số vi phạm trong quá trình tối ưu hóa Kết quả thực nghiệm cho thấy, sự kết hợp giữa giải thuật di truyền có chỉ dẫn và mở rộng đáp ứng tốt các yêu cầu của bài toán sắp xếp thời khóa biểu, từ đó cho ra các giải pháp tối ưu hoặc gần tối ưu nhất.

Nghiên cứu này tập trung vào ứng dụng giải thuật di truyền trong việc tối ưu hóa thời khóa biểu khóa học của trường đại học Phương pháp kết hợp giữa chiến lược tìm kiếm có chỉ dẫn và tìm kiếm cục bộ giúp nâng cao hiệu quả và độ chính xác trong quá trình xây dựng lịch học Việc sử dụng giải thuật di truyền mang lại khả năng khám phá các giải pháp tối ưu một cách linh hoạt và nhanh chóng Các kết quả cho thấy, phương pháp này góp phần giảm thiểu xung đột trong lịch học và tăng cường sự phù hợp của thời khóa biểu với nhu cầu của giảng viên và sinh viên Nghiên cứu cung cấp một giải pháp hiệu quả và khả thi để quản lý thời khóa biểu một cách tự động và tối ưu hóa.

Những ràng buộc cứng cần phải giải quyết:

Không sinh viên nào tham gia nhiều hơn 1 sự kiện vào cùng 1 khoảng thời gian

Phòng học thì dủ lớn cho tất cả sinh viên tham gia

Phòng học phài đáp ứng tất cà các chức năng mà sự kiện yêu cầu

Chỉ 1 sự kiện trong 1 phòng vào 1 khoảng thời gian

Ngoài ra còn có các ràng buộc mềm:

Một sinh viên có 1 lớp trong khoảng thời gian cưới cùng của 1 ngày

Một sinh viên có hơn 2 lớp liên tiếp

Một sinh viên có 1 lớp duy nhất trong 1 ngày

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong quá trình xây dựng thời khóa biểu cho trường đại học, cần phân công từng sự kiện (khóa học và bài giảng) vào các khoảng thời gian cụ thể để tránh xung đột về phòng học, thời gian và tài nguyên Mô hình này gồm tập hợp các sự kiện E = {e₁, e₂, , eₙ} phải được sắp xếp trong 45 khoảng thời gian T = {t₁, t₂, , t₄₅}, tương ứng với 9 khung giờ trong 5 ngày của tuần Ngoài ra, còn có các biến phòng R = {r₁, r₂, , r_m}, tập hợp sinh viên S = {s₁, s₂, , s_k} tham gia sự kiện, và tập hợp các chức năng F = {f₁, f₂, , f_l} đảm bảo các yêu cầu về phòng và chức năng phù hợp với từng sự kiện.

Ngoài ra, mối tương quan giữa các bộ đưa ra bởi 5 ma trận Ma trận đầu tiên là

Ma trận SinhVien_SuKien (A_k,n) thể hiện sự tham dự của sinh viên vào các sự kiện, trong đó a_{i,j} bằng 1 nếu sinh viên i thuộc tập S có thể tham gia sự kiện j trong tập E, và 0 nếu không Ma trận SuKien_XungDot (B_n,n) cho biết liệu hai sự kiện có được tổ chức cùng thời gian hay không, giúp xác định các sự kiện có khả năng xảy ra đồng thời Ma trận Phong_ChucNang (C_m,l) cung cấp thông tin về chức năng của từng phòng, với phần tử c_{i,j} bằng 1 nếu phòng i có tính năng j, và 0 nếu không Cuối cùng, ma trận SuKien_ChucNang (D_n,l) thể hiện các chức năng cần thiết của từng sự kiện, trong đó mỗi hàng tương ứng với một sự kiện và mỗi cột với một chức năng, giúp xác định các yêu cầu chức năng cho từng sự kiện cụ thể.

Ma trận G n,m, hay còn gọi là ma trận SuKien_Phong, liệt kê danh sách các phòng phù hợp cho từng sự kiện dựa trên chức năng và kích thước Thông qua ma trận này, chúng tôi có thể nhanh chóng xác định các phòng phù hợp cho mỗi sự kiện trong khoảng thời gian nhất định Một ma trận thường được dùng để phân công từng sự kiện đến một phòng r_i trong khoảng thời gian t_i, với mỗi cặp (r_i, t_i) thể hiện số lượng sự kiện tương ứng Nếu phòng r_i trong thời gian t_i trống hoặc chưa có sự kiện nào đặt trước, cặp đó được gán là “-1”, giúp đảm bảo không có nhiều hơn một sự kiện được phân bổ vào cùng một phòng trong cùng một khoảng thời gian, đảm bảo các ràng buộc cứng về phân bổ hợp lý.

Các giải pháp để xây dựng thời khóa biểu cho trường đại học thường được trình bày dưới dạng danh sách có thứ tự các cặp (r_i, t_i), trong đó mỗi cặp đại diện cho mã số sự kiện e_i thuộc tập E Việc sử dụng giải thuật di truyền đã được nghiên cứu và ứng dụng rộng rãi nhằm tối ưu hoá quá trình xếp thời khóa biểu, giúp đảm bảo sự phù hợp, tránh xung đột và nâng cao hiệu quả tổ chức lịch trình.

Trong quá trình phân bổ, các khoảng thời gian và phòng đều được gán cho các sự kiện dựa trên danh sách các cặp thứ tự như (2, 4), (3, 30), (1, 12), , (2, 7) Ví dụ, phòng 2 cùng khoảng thời gian thứ 4 được phân bổ cho sự kiện 1, trong khi phòng 3 và khoảng thời gian thứ 30 được dành cho sự kiện 2, đảm bảo sự sắp xếp hợp lý và tối ưu cho lịch trình các sự kiện.

Mục tiêu của việc xây dựng thời khóa biểu cho trường đại học là giảm thiểu các hành vi vi phạm ràng buộc mềm trong một giải pháp khả thi Hàm mục tiêu f(s) đo lường tổng trọng số của số vi phạm ràng buộc cứng (#HCV) và vi phạm ràng buộc mềm (#SCV), trong đó C là một hằng số lớn hơn nhiều lần so với số vi phạm ràng buộc mềm để ưu tiên giảm thiểu các vi phạm cứng Việc tối ưu thời khóa biểu dựa trên hàm mục tiêu này giúp đảm bảo không có hành vi vi phạm ràng buộc cứng trong giải pháp hợp lý.

Tìm kiếm cục bộ(LS) và cấu trúc lân cận(hình 3.11)

Trong mô hình giải thuật di truyền khảo sát, phương pháp LS được sử dụng để biểu diễn LS1 nhằm cải tiến cá thể trong quá trình tối ưu Giải thuật tổng kết kế hoạch LS1 hoạt động trong khung làm việc cơ bản và áp dụng cho tất cả các sự kiện, mỗi sự kiện bao gồm các ràng buộc cứng và mềm LS1 hoạt động qua hai bước dựa trên ba cấu trúc lân cận N1, N2, N3, phù hợp với mô tả chi tiết trong nghiên cứu, giúp nâng cao hiệu quả tìm kiếm lời giải tối ưu.

N1: lân cận được khai báo với 1 toán tử để di chuyển 1 sự kiện từ 1 đơn vị thời gian tới 1 đơn vị thời gian khác

N2: lân cận được khai báo bởi một toán tử mà trao đổi thời giangiữa 2 sự kiện

N3: lân cận được khai báo bởi 1 toán tử hoán vị 3 sự kiện trong 3 đơn vị thời gian khác nhau trong 1 hoặc 2 cách khác nhau

Trong bước đầu tiên, LS1 tập trung kiểm tra các vi phạm ràng buộc cứng của mỗi sự kiện, bỏ qua các vi phạm ràng buộc mềm Nếu phát hiện vi phạm ràng buộc cứng, LS1 sẽ cố gắng khắc phục bằng cách áp dụng di chuyển cấu trúc lân cận N1, N2, N3, lặp lại cho đến khi đạt điều kiện dừng, cải tiến hoặc vượt quá số bước tối đa s_max Sau mỗi bước di chuyển, thuật toán đánh giá thời gian ảnh hưởng và kết quả của bước, cố gắng giải quyết các vấn đề về phòng tránh và tối ưu hóa Nếu không có bước di chuyển nào cần thiết, LS1 tiếp tục với sự kiện kế tiếp Khi hoàn tất tất cả các bước di chuyển cho từng sự kiện, nếu còn tồn tại vi phạm ràng buộc cứng, LS1 sẽ dừng lại; nếu không, nó sẽ chuyển sang bước tiếp theo để xử lý.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Trong bước thứ 2, sau khi tìm được giải pháp khả thi, LS1 duy trì các ràng buộc mềm tương tự như bước đầu Mỗi sự kiện, LS1 cố gắng thực hiện các bước di chuyển đến các lân cận N1, N2, N3 nhằm giảm thiểu vi phạm ràng buộc mềm mà không làm trái các ràng buộc cứng Quá trình này sử dụng cùng một thuật toán tìm kiếm để xác định phòng có sự kiện liên quan và đánh giá delta kết quả, giúp chọn ra sự di chuyển tối ưu Khi kết thúc quá trình, LS1 sẽ thu được một cá thể tối ưu, đáp ứng các tiêu chí đề ra.

Giải thuật di truyền tìm kiếm có chỉ dẫn (GSGA)

Đánh giá chung

Trong quá trình lựa chọn giải pháp phù hợp cho bài toán xây dựng thời khóa biểu của khoa công nghệ thông tin, ta đã xem xét bốn công trình nghiên cứu liên quan Công trình “An Investigation of Genetic Algorithm and Sequential Local Search Approach for Curriculum-based Course Timetabling Problems” của Abdullah et al (2009) không phù hợp do mô hình và giải thuật trình bày không rõ ràng, gây khó khăn trong việc áp dụng vào bài toán thực tế của khoa vì độ phức tạp cao và thiếu hướng dẫn rõ ràng Công trình “Using Genetic Algorithms to Solve the South African School Timetabling Problem” của Raghavjee và Pillay (2010) tập trung vào xếp thời khóa biểu cho trường tiểu học và trung học tại Nam Phi, điều này khác xa với đặc thù của giáo dục đại học theo học chế tín chỉ, làm cho giải pháp này không phù hợp bởi mức độ phức tạp lớn hơn rất nhiều Do đó, để đảm bảo hiệu quả, cần lựa chọn mô hình và giải pháp phù hợp hơn với đặc điểm và yêu cầu của khoa công nghệ thông tin.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

Mô hình của giải thuật trong nghiên cứu này không phù hợp để áp dụng vào bài toán xếp thời khóa biểu của khoa công nghệ thông tin do độ phức tạp cao và đặc điểm riêng của bài toán Công trình nghiên cứu thứ ba của Sapru, Reddy và Sivaselvan (2010) sử dụng đột biến có chỉ dẫn để tạo ra các thế hệ có độ thích nghi khác nhau, nhưng phương pháp này dựa nhiều vào xác suất đột biến, điều không tối ưu cho bài toán phức tạp trong ngành giáo dục tín chỉ Do đó, không thể đảm bảo rằng giải pháp dựa trên công trình này sẽ đạt được thời khóa biểu có giá trị thích nghi cao và tính khả thi tốt Cuối cùng, chúng tôi loại bỏ mô hình của giải thuật trong công trình thứ tư khỏi các phương án phù hợp để áp dụng cho bài toán của mình.

Trong công trình "Strategies for University Course Timetabling" của Yang và Jat (2011), tác giả đã áp dụng các chiến lược tìm kiếm có chỉ dẫn và tìm kiếm cục bộ kết hợp với giải thuật truyền trạng thái ổn định để thiết kế giải pháp tối ưu cho bài toán xếp thời khóa biểu của khoa công nghệ thông tin, phù hợp nhờ các ràng buộc và cấu trúc dữ liệu tương đồng Công trình cũng trình bày rõ ràng các giải thuật kèm theo mã giả, giúp người đọc dễ hiểu và dễ áp dụng, đồng thời đạt hiệu quả vượt trội so với ba nghiên cứu trước đó Sự kết hợp các giải thuật này đã mang lại kết quả cải thiện rõ rệt, giảm thiểu các điểm bất lợi của bài toán Các tác giả còn thực hiện so sánh giữa các phương pháp, từ đó xác định được phương pháp cho ra kết quả tối ưu và phù hợp cao nhất Mô hình giải thuật trong nghiên cứu này cho thấy khả năng đáp ứng tốt độ phức tạp của bài toán, tạo ra thời khóa biểu với giá trị thích nghi cao và tính linh hoạt vượt trội.

Tìm hiểu giải thuật di truyền và ứng dụng vào bài toán xếp thời khóa biểu

KHẢO SÁT HIỆN TRẠNG THỰC TẾ CHO BÀI TOÁN

DỤNG GIẢI THUẬT DI TRUYỀN VÀO BÀI TOÁN XẾP THỜI KHÓA BIỂU

THIẾT KẾ HỆ THỐNG XẾP THỜI KHÓA BIỂU

TỔNG KẾT

Ngày đăng: 30/10/2022, 17:53

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Duong Tuan Anh, Vo Hoang Tam, and Nguyen Quoc Viet Hung, Generating Complete University Course Timetables by Using Local Search Methods(2006) Sách, tạp chí
Tiêu đề: Generating Complete University Course Timetables by Using Local Search Methods
Tác giả: Duong Tuan Anh, Vo Hoang Tam, Nguyen Quoc Viet Hung
Năm: 2006
[2] Hoàng Chính Nghĩa, Báo cáo đồ án tốt nghiệp tìm hiểu giải thuật di truyền và ứng dụng vào bài toán lập lịch, Đại học dân lập Hải Phòng 2009 Sách, tạp chí
Tiêu đề: Báo cáo đồ án tốt nghiệp tìm hiểu giải thuật di truyền và ứng dụng vào bài toán lập lịch
Tác giả: Hoàng Chính Nghĩa
Nhà XB: Đại học dân lập Hải Phòng
Năm: 2009
[4] Nguyễn Thị Thúy Hoài, Thuật giải di truyền và ứng dụng, Hội nghị báo cáo nghiên cứu khoa học lần thứ 6 Đại học Đà Nẵng 2008 Sách, tạp chí
Tiêu đề: Thuật giải di truyền và ứng dụng
Tác giả: Nguyễn Thị Thúy Hoài
Nhà XB: Hội nghị báo cáo nghiên cứu khoa học lần thứ 6 Đại học Đà Nẵng 2008
Năm: 2008
[5] T.Loan, C.Thi, K.Loan, T.Thắm, Áp dụng giải thuật di truyền và tìm kiếm cục bộ để giải quyết bài toán sắp thời khóa biểu cho khoa công nghệ thông tin trường ĐH Nông Lâm, Đại học Nông Lâm Sách, tạp chí
Tiêu đề: Áp dụng giải thuật di truyền và tìm kiếm cục bộ để giải quyết bài toán sắp thời khóa biểu cho khoa công nghệ thông tin trường ĐH Nông Lâm, Đại học Nông Lâm
Tác giả: T.Loan, C.Thi, K.Loan, T.Thắm
[7] Manar Hosny and Shameem Fatima,A survey of genetic algorithms for the university timetabling problem, College of Computer and Information Sciences Sách, tạp chí
Tiêu đề: A survey of genetic algorithms for the university timetabling problem
Tác giả: Manar Hosny, Shameem Fatima
[8] S. Abdullah, H. Turabieh, B. McCollum, and E. K. Burke, An Investigation of Genetic Algorithm and Sequential Local Search Approach for Curriculum-based Course Timetabling Problems, in Proc. Multildisciplinary International Conference on Scheduling: Theory and Applications (MISTA 2009), Dublin, Ireland (2009), pp. 727-731 Sách, tạp chí
Tiêu đề: An Investigation of Genetic Algorithm and Sequential Local Search Approach for Curriculum-based Course Timetabling Problems
Tác giả: S. Abdullah, H. Turabieh, B. McCollum, E. K. Burke
Nhà XB: Proceedings of the Multidisciplinary International Conference on Scheduling: Theory and Applications (MISTA 2009)
Năm: 2009
[9] S. Yang and S. N. Jat, "Genetic Algorithms and Local Search Strategies for University Course Timetabling", IEEE Transactions on Systems, Man, and Cybernetics, Part C: Applications and Reviews, Vol. 41, no. 1 (2011), pp.93-106 Sách, tạp chí
Tiêu đề: Genetic Algorithms and Local Search Strategies for University Course Timetabling
Tác giả: S. Yang, S. N. Jat
Nhà XB: IEEE Transactions on Systems, Man, and Cybernetics, Part C: Applications and Reviews
Năm: 2011
[10] R. Raghavjee and N. Pillay, Using Genetic Algorithms to Solve the South African School Timetabling Problem, in Proc. Second World Congress on Nature and Biologically Inspired (NaBIC) (2010), pp. 286-292 Sách, tạp chí
Tiêu đề: Using Genetic Algorithms to Solve the South African School Timetabling Problem
Tác giả: R. Raghavjee, N. Pillay
Năm: 2010
[11] V. Sapru, K. Reddy, and B. Sivaselvan, Timetable Scheduling Using Genetic Algorithms Employing Guided Mutation, in Proc.IEEE International Conference on Computational Intelligence and Computing Research (ICCIC) (2010), pp. 1-4 Sách, tạp chí
Tiêu đề: Timetable Scheduling Using Genetic Algorithms Employing Guided Mutation
Tác giả: V. Sapru, K. Reddy, B. Sivaselvan
Nhà XB: IEEE
Năm: 2010

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w