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

Bài toán xếp lịch thi tại trường đại học bách khoa hà nội

45 4 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

Tiêu đề Bài toán xếp lịch thi tại trường đại học bách khoa hà nội
Tác giả Nguyễn Thị Ngân
Người hướng dẫn TS. Tạ Anh Sơn
Trường học Đại học Bách Khoa Hà Nội
Chuyên ngành Toán Tin
Thể loại Luận văn thạc sĩ
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 45
Dung lượng 661 KB

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

Cấu trúc

  • 1.1 Bài toán tối ưu và các khái niệm cơ bản (11)
    • 1.1.1 Định nghĩa bài toán tối ưu và các khái niệm cơ bản 7 (11)
    • 1.1.2 Các loại bài toán tối ưu (12)
    • 1.1.3 Quy hoạch nguyên nhị phân (13)
  • 1.2 Giới thiệu về tối ưu hóa (14)
  • 2.1 Tổng quan về bài toán xếp lịch thi tại trường Đại học . 11 (15)
  • 2.2 Bài toán xếp lịch thi: Các quy tắc xếp lịch thi (16)
  • 2.3 Các phần mềm xếp lịch thi (17)
  • 2.4 Đặc điểm của bài toán xếp lịch thi tại trường Đại học Bách Khoa Hà Nội (18)
    • 2.4.1 Các đặc điểm chung của bài toán xếp lịch thi tại trường học (18)
    • 2.4.2 Một số đặc điểm của bài toán xếp lịch thi tại trường Đại học Bách Khoa Hà Nội (19)
  • 3.1 Giới thiệu một số kỹ thuật biểu diễn ràng buộc điều kiện (21)
  • 3.2 Mô hình xếp lịch thi đề xuất áp dụng cho trường Đại học Bách Khoa Hà Nội (22)
    • 3.2.2 Bài toán 2: Bài toán xếp giảng viên vào các lớp (28)
  • 3.3 Kết quả thử nghiệm mô hình (32)
    • 3.3.1 Giới thiệu tổng quan về công cụ CPLEX Opti- (32)
    • 3.3.2 Giới thiệu về khái niệm MIP gap trong CPLEX . 28 (32)
    • 3.3.3 Các bước thực thi mô hình với Cplex (33)
    • 3.3.4 Kết quả thử nghiệm mô hình với dữ liệu thực (33)
  • 3.4 Kết luận (39)
  • 3.1 Kết quả ví dụ bài toán 1 với dữ liệu nhỏ (0)
  • 3.2 Kết quả ví dụ bài toán 2 với dữ liệu nhỏ (0)
  • 3.3 Thời gian giải và giá trị hàm mục tiêu khi chạy với dữ liệu nhỏ (0)
  • 3.4 Kích thước của bài toán 1 với dữ liệu thực tế (0)
  • 3.5 Kích thước của bài toán 2 với dữ liệu thực tế (0)
  • 3.6 Thời gian giải và giá trị hàm mục tiêu bài toán 1 với dữ liệu thực tế (0)
  • 3.7 Thời gian giải và giá trị hàm mục tiêu bài toán 2 với dữ liệu thực tế (0)

Nội dung

Tóm tắt nội dung luận văn Luận văn tập trung trình bày các đặc điểm của bài toán xếp lịch thitại Đại học Bách Khoa Hà Nội theo nghiên cứu của tác giả, sau đó đi sâu vào mô hình toán học

Bài toán tối ưu và các khái niệm cơ bản

Định nghĩa bài toán tối ưu và các khái niệm cơ bản 7

Bài toán tối ưu tổng quát được định nghĩa như sau: tìm giá trị nhỏ nhất của hàm mục tiêu f(x) với điều kiện x thuộc tập nghiệm chấp nhận được D (P 1) hoặc tìm giá trị lớn nhất của f(x) với x thuộc D (P 2) Tập D ⊆ R n được gọi là tập ràng buộc, và mỗi điểm x ∈ D là một nghiệm chấp nhận được Điểm x ∗ ∈ D được xem là nghiệm tối ưu nếu f(x ∗ ) ≤ f(x) với mọi x ∈ D, và nó còn được gọi là nghiệm tối ưu toàn cục hoặc nghiệm cực tiểu toàn cục Nếu f(x ∗ ) < f(x) cho mọi x ∈ D và x ̸= x ∗, thì x ∗ được gọi là nghiệm cực tiểu toàn cục chặt Giá trị tối ưu của bài toán (P1) được ký hiệu là min f(x) hoặc min{f(x)|x ∈ D}.

Nếu bài toán (P 1 ) có nghiệm tối ưu là x ∗ thì f(x ∗ ) = min{f(x)|x ∈ D}.

Ký hiệu arg min{f(x)|x ∈ D} đại diện cho tập nghiệm tối ưu của bài toán (P1) Nếu bài toán chỉ có một nghiệm tối ưu x ∗, ta có thể viết x ∗ = arg min{f(x)|x ∈ D} Điểm x ∗ ∈ D được gọi là nghiệm tối ưu địa phương nếu tồn tại một ϵ-lân cận B(x ∗ , ϵ) sao cho f(x ∗ ) ≤ f(x) với mọi x ∈ B(x ∗ , ϵ) ∩ D Nếu tồn tại một ϵ-lân cận B(x ∗ , ϵ) sao cho f(x ∗ ) < f(x) với mọi x ∈ B(x ∗ , ϵ) ∩ D và x ≠ x ∗, thì x ∗ được gọi là nghiệm tối ưu địa phương chặt Các khái niệm tương tự cũng được áp dụng cho bài toán (P2).

Các loại bài toán tối ưu

Các bài toán tối ưu thường được chia thành một số lớp dựa trên tính chất của hàm mục tiêu và tập chấp nhận được [1].

• Quy hoạch đa mục tiêu

Trong luận văn này, chúng ta sẽ đề cập sâu hơn về quy hoạch nguyên nhị phân

Quy hoạch nguyên nhị phân

Quy hoạch nguyên nhị phân là một dạng bài toán quy hoạch tuyến tính, trong đó các biến quyết định chỉ nhận giá trị 0 hoặc 1.

Bài toán quy hoạch nguyên nhị phân có dạng: min Z = c1x1 + c2x2 + ã ã ã + cnxn

Trong đó c 1 , c 2 , , c n là các hệ số của hàm mục tiêu, A 1,1 , A 1,2 , ,

Am,n là các hệ số của các ràng buộc, và b1, b2, , bm là các hằng số. b, Đặc điểm

Bài toán quy hoạch nguyên nhị phân là một bài toán NP-khó, nghĩa là không tồn tại giải thuật hiệu quả tổng quát để giải quyết trong thời gian đa thức Điều này cho thấy rằng không có phương pháp nhanh chóng và chính xác cho mọi trường hợp Thay vào đó, để giải quyết bài toán này, chúng ta thường phải áp dụng các phương pháp gần đúng hoặc giải thuật heuristic.

Khi số lượng biến và ràng buộc trong bài toán tăng lên, độ khó của bài toán cũng gia tăng Đối với các bài toán có kích thước lớn, việc tìm kiếm một giải pháp tối ưu trở nên khó khăn và tốn nhiều thời gian tính toán.

Vì vậy, tùy từng bài toán mà ta có thể chỉ tìm nghiệm gần tối ưu hoặc thậm chí chỉ tìm nghiệm chấp nhận được

Giới thiệu về tối ưu hóa

Tối ưu hóa là một lĩnh vực quan trọng trong Toán học, tập trung vào việc tìm ra giải pháp tốt nhất cho các bài toán thực tế Các bài toán này thường được đơn giản hóa và mô hình hóa bằng các công thức toán học Tối ưu hóa được ứng dụng rộng rãi trong nhiều lĩnh vực, chẳng hạn như trong sản xuất, với mục tiêu giảm thiểu chi phí sản xuất, hoặc trong việc tìm kiếm lộ trình tối ưu cho việc vận chuyển đến các địa điểm cụ thể.

Bài toán xếp lịch là một trong những bài toán tối ưu quan trọng trong nhiều lĩnh vực hiện nay, như xếp thời khóa biểu cho trường học, lịch làm việc cho nhân viên và lịch bay cho hàng không Mục tiêu chính là tìm ra phương án tối ưu, vừa khả thi trong thực hiện, vừa đáp ứng yêu cầu của các nhóm và bộ phận liên quan Tối ưu hóa là kỹ thuật hiệu quả để giải quyết nhiều vấn đề, nhưng với các bài toán lớn và phức tạp, việc tìm kiếm phương án tối ưu thường tốn thời gian Tuy nhiên, nhờ vào sự phát triển của các kỹ thuật hiện đại, nhiều bài toán hiện nay đã có thể được giải quyết hiệu quả hơn.

Tổng quan về bài toán xếp lịch thi

Tổng quan về bài toán xếp lịch thi tại trường Đại học 11

Các tổ chức như công ty, trường học, đại học và bệnh viện thường phải đối mặt với những thách thức trong việc xếp lịch Việc tạo ra một thời gian biểu hiệu quả không chỉ tốn nhiều thời gian mà còn đòi hỏi nỗ lực lớn để đáp ứng các yêu cầu và ràng buộc phức tạp.

Bài toán xếp lịch tại các trường đại học ngày càng thu hút sự chú ý do tính phức tạp và yêu cầu cao trong việc đáp ứng nhu cầu của giáo viên và sinh viên Việc lập lịch thường dựa trên lịch của các năm trước với một số điều chỉnh nhỏ, nhưng sự thay đổi nhanh chóng trong các ngành học, chương trình đào tạo, và số lượng sinh viên đã làm cho phương pháp này không còn hiệu quả Do đó, nghiên cứu và phát triển các mô hình xếp lịch tối ưu và hiệu quả trở nên cần thiết để đáp ứng các yêu cầu ngày càng đa dạng trong môi trường giáo dục hiện đại.

Bài toán xếp lịch thi tại trường Đại học là một vấn đề quan trọng, bên cạnh bài toán xếp thời khóa biểu Việc xếp lịch thi tự động và tối ưu không chỉ nâng cao năng suất lao động mà còn góp phần quan trọng vào việc vận hành đào tạo của nhà trường Do đó, nghiên cứu và phát triển phương pháp giải quyết bài toán xếp lịch thi là rất cần thiết.

Bài toán xếp lịch thi là việc tìm phương án sắp xếp các bài thi vào các ca thi và phòng thi cụ thể, đồng thời phân công giáo viên coi thi, đảm bảo tất cả các ràng buộc về thời gian, phòng thi, thí sinh và giám thị được đáp ứng Trong các phần tiếp theo, chúng ta sẽ phân tích sâu hơn về bài toán này.

Bài toán xếp lịch thi: Các quy tắc xếp lịch thi

Việc xếp lịch thi phải tuân thủ một số quy tắc nhất định sau a, Không xảy ra xung đột

Trong lịch thi, xung đột xảy ra khi hai hoặc nhiều bài thi được tổ chức cùng một thời điểm, do cùng một giáo viên coi thi, cho cùng một nhóm sinh viên hoặc trong cùng một phòng học Ngoài ra, xung đột cũng có thể xảy ra khi nhiều phòng thi được phân bổ cho cùng một bài thi Do đó, cần phải có các ràng buộc để quản lý lịch thi hiệu quả.

+ Tại một thời điểm, mỗi bài thi cho 1 nhóm sinh viên được tổ chức tại duy nhất 1 phòng thi

+ Tại một thời điểm, mỗi sinh viên thi nhiều nhất một bài thi.

+ Tại một thời điểm, mỗi giáo viên coi thi nhiều nhất một lớp thi.

+ Tại một thời điểm, mỗi một phòng thi chỉ được sử dụng nhiều nhất cho 1 bài thi với một nhóm sinh viên cụ thể. b, Lịch thi phải hoàn chỉnh

Một lịch thi hoàn chỉnh cần bao gồm tất cả các bài thi cho từng nhóm sinh viên Đồng thời, lịch thi cũng phải đảm bảo thời gian thi hợp lý.

Lịch thi cần được sắp xếp sao cho các lớp thi cùng mã bài thi (cùng đề thi) diễn ra trong cùng một ca thi để bảo mật đề thi Hơn nữa, các bài thi của cùng một môn cũng nên được tổ chức trong cùng một ngày.

Các phần mềm xếp lịch thi

a, Một số phần mềm xếp lịch thi trên thế giới

Số lượng các phần mềm xếp lịch thi trên thế giới không nhiều Sau đây là một số phần mềm tiêu biểu:

• ExamSoft là một công ty có trụ sở tại Mỹ, cung cấp phần mềm Examplify cho các trường đại học để tạo lịch thi và tự động chấm điểm.

Phần mềm này rất thân thiện với người dùng, tích hợp tính năng đồng bộ hóa với hệ thống quản lý sinh viên, giáo viên và kế hoạch giảng dạy Ngoài ra, nó còn giúp tối ưu hóa lịch thi và tự động chấm điểm, mang lại hiệu quả cao trong quản lý giáo dục.

• Tuy nhiên, Examplify không hỗ trợ tính năng tạo lịch thi tự động và có phí sử dụng.

• CollegeNET là một công ty cung cấp giải pháp phần mềm quản lý đại học và tạo lịch thi, có trụ sở tại Mỹ.

Phần mềm xếp lịch thi R25 của CollegeNET cung cấp tính năng tạo lịch thi tự động, giúp đồng bộ hóa dữ liệu với hệ thống thông tin của sinh viên và giảng viên.

• Tuy nhiên, phần mềm này có giao diện không thân thiện và yêu cầu kiến thức kỹ thuật cao để sử dụng.

• SmartExam là một công ty cung cấp giải pháp phần mềm tạo lịch thi, có trụ sở tại Úc.

• Phần mềm này hỗ trợ tính năng tạo lịch thi tự động, gợi ý giờ thi phù hợp cho từng sinh viên, hỗ trợ đa ngôn ngữ.

• Tuy nhiên, SmartExam không có tính linh hoạt trong việc tùy chỉnh lịch thi. b, Một số phần mềm xếp lịch thi tại Việt Nam

Hiện nay, nhiều trường đại học tại Việt Nam đang sử dụng các phần mềm xếp lịch thi để quản lý lịch thi hiệu quả Dưới đây là một số phần mềm phổ biến được áp dụng trong các cơ sở giáo dục đại học.

• Là phần mềm do Công ty Cổ phần Giải pháp Công nghệ Dịch vụ Việt Nam phát triển.

Hệ thống hỗ trợ tính năng tạo lịch thi tự động với nhiều thuật toán tối ưu, giúp đồng bộ dữ liệu hiệu quả với hệ thống quản lý đào tạo.

• Phần mềm được ứng dụng trong 1 số trường đại học tại Việt Nam.

• Là phần mềm do Trung tâm Công nghệ thông tin và Thống kê, Đại học Quốc gia Hà Nội phát triển.

Phần mềm hỗ trợ tính năng tạo lịch thi tự động với nhiều thuật toán tối ưu, giúp đồng bộ dữ liệu với hệ thống quản lý đào tạo Được ứng dụng tại nhiều trường đại học trong hệ thống Đại học Quốc gia Hà Nội, phần mềm này mang lại hiệu quả cao trong việc tổ chức lịch thi.

Các phần mềm xếp lịch thi hiện nay đã tự động hóa quy trình này tại nhiều cơ sở giáo dục, nhưng mỗi trường có quy tắc riêng mà không phải phần mềm nào cũng đáp ứng Đại học Bách Khoa Hà Nội là một ví dụ điển hình, nơi không sử dụng phần mềm xếp thời khóa biểu do những đặc thù phức tạp Thay vào đó, trường áp dụng phương pháp bán tự động, kết hợp Excel với kinh nghiệm và nghiệp vụ của chuyên gia để xây dựng lịch thi cho từng kỳ thi.

Đặc điểm của bài toán xếp lịch thi tại trường Đại học Bách Khoa Hà Nội

Các đặc điểm chung của bài toán xếp lịch thi tại trường học

a Các ràng buộc của bài toán xếp lịch thi tại trường học

Bài toán xếp lịch thi gặp nhiều ràng buộc như đối tượng tham gia (giảng viên, bài thi, sinh viên), tài nguyên tổ chức thi (phòng học), thời gian (ca thi, ngày thi) và chuyên môn, cùng nhiều ràng buộc khác tùy thuộc vào từng trường Mục tiêu là xây dựng một thời khóa biểu đáp ứng tất cả các ràng buộc này và tối ưu hóa việc sử dụng nguồn tài nguyên Đặc biệt, bài toán xếp lịch thi được xác định là bài toán NP-đầy đủ.

Bài toán xếp lịch thi là một bài toán NP-đầy đủ, do đó việc tìm ra lời giải tối ưu có thể gặp khó khăn Khi số lượng sinh viên gia tăng và chương trình học trở nên phức tạp, thời gian giải bài toán sẽ tăng theo cấp số mũ Để giải quyết bài toán này, cần áp dụng các kỹ thuật giải quyết hiệu quả.

Bài toán xếp lịch thi tại trường học đã được nghiên cứu từ lâu, với nhiều kỹ thuật và phương pháp như giải thuật luyện thép (Simulated annealing), giải thuật di truyền (genetic algorithm), và giải thuật Tabu Search Tuy nhiên, các giải thuật này thường thiếu tính tổng quát và chỉ hiệu quả cho các trường học có quy mô nhỏ và ít ràng buộc phức tạp.

Một số đặc điểm của bài toán xếp lịch thi tại trường Đại học Bách Khoa Hà Nội

Khoa Hà Nội a, Hướng tiếp cận

Hướng tiếp cận giải bài toán xếp lịch thi tại HUST rất khác biệt và phức tạp do dữ liệu lớn và nhiều yêu cầu Công việc này được chia thành hai phần liên quan: đầu tiên là xếp các bài thi cho nhóm sinh viên vào phòng học và ca thi để hình thành lớp thi; thứ hai là xếp giảng viên coi thi vào các lớp này Việc chia nhỏ này giúp giảm kích thước bài toán, từ đó rút ngắn thời gian giải quyết.

Tại HUST, mỗi môn thi được chia thành nhiều bài thi với các bộ đề và ca thi khác nhau trong cùng một ngày Chẳng hạn, môn Giải tích I có tổng cộng 4 bài thi, mỗi bài được thiết kế cho một nhóm ngành cụ thể, đảm bảo tính đa dạng và phù hợp với từng đối tượng thí sinh.

HUST sở hữu các phòng thi đa dạng, được thiết kế phù hợp với từng loại bài thi và có kích thước tương ứng với số lượng sinh viên tham gia.

Mỗi sinh viên có thể tham gia vào nhiều nhóm khác nhau dựa trên việc đăng ký lớp học, và mỗi nhóm sẽ có danh sách các bài thi cụ thể trong kỳ thi Đồng thời, cần lưu ý đến đặc điểm của giáo viên coi thi.

Một số bài thi đặc thù sẽ yêu cầu giáo viên có chuyên môn coi thi bài thi đó.

Các giáo viên có thể đăng ký lịch rảnh/bận của họ và chỉ nhận coi thi những khung giờ mà họ rảnh

Có 2 bài toán con trong vấn đề xếp lịch thi ở HUST, gọi là bài toán 1 và bài toán 2 a Bài toán 1: Bài toán xếp bài thi - sinh viên - phòng thi - ca thi - ngày thi để hình thành các lớp thi. b Bài toán 2: Sau khi có lịch của các lớp thi, trường sẽ giao việc xếp giáo viên coi thi vào từng lớp thi cho các Viện/Khoa.

Chương 2 đã cung cấp cái nhìn tổng quan về bài toán xếp lịch thi cho trường học, cùng với các quy tắc đặc trưng trong việc sắp xếp thời gian thi tại Trường Đại học Bách Khoa Hà Nội Chương tiếp theo sẽ tập trung vào việc trình bày mô hình đề xuất cho bài toán xếp lịch thi tại trường này.

Mô hình đề xuất cho bài toán xếp lịch thi tại Đại học Bách Khoa Hà Nội, kết quả thực nghiệm

Chương này là phần quan trọng trong luận văn của tôi, trong đó tôi dựa trên kết quả nghiên cứu trước đây của mình về bài toán xếp thời khóa biểu tại Đại học Bách Khoa Hà Nội Tôi đề xuất một mô hình toán học để giải quyết bài toán xếp lịch thi tại trường, sử dụng phương pháp quy hoạch nguyên nhị phân Sau đó, tôi đã cài đặt và thử nghiệm mô hình này với bộ dữ liệu được trích xuất từ lịch thi của Viện Toán Ứng dụng và Tin học.

Giới thiệu một số kỹ thuật biểu diễn ràng buộc điều kiện

Trong việc mô hình hóa và giải quyết các bài toán tối ưu, có thể sử dụng một số kỹ thuật để biểu diễn các ràng buộc điều kiện.

Linear constraints are techniques that utilize linear equations and inequalities to represent restrictions For instance, they can be expressed as \$Ax \leq b\$, \$Ax = b\$, or \$Ax \geq b\$, where \$A\$ is a matrix, \$x\$ is a vector of variables, and \$b\$ is a vector of constants.

Ràng buộc nguyên (Integer Constraints) là một kỹ thuật quan trọng trong tối ưu hóa, cho phép giới hạn các biến quyết định chỉ nhận giá trị nguyên Ví dụ, biến x có thể được giới hạn trong các tập hợp như x ∈ {0, 1} hoặc x ∈ {1, 2, 3}.

Logic constraints utilize logical operators such as AND, OR, and NOT to represent complex restrictions For instance, a condition can be expressed as (x1 AND x2) OR x3.

• Ràng buộc biểu thức (Expression Constraints): Kỹ thuật này sử dụng các biểu thức toán học hoặc logic để biểu diễn ràng buộc

• Ràng buộc điều kiện (Conditional Constraints): Kỹ thuật này sử dụng các ràng buộc được kích hoạt bởi các điều kiện đặc biệt

• Ràng buộc bất đẳng thức (Inequality Constraints): Kỹ thuật này sử dụng các bất đẳng thức để giới hạn giá trị của các biến Ví dụ: x > y, x ≤ 2y.

Mô hình đề xuất trong luận văn sử dụng ràng buộc tuyến tính, ràng buộc nguyên, ràng buộc biểu thức, và ràng buộc bất đẳng thức

Mô hình xếp lịch thi đề xuất áp dụng cho trường Đại học Bách Khoa Hà Nội

Bài toán 2: Bài toán xếp giảng viên vào các lớp

Sau khi giải Bài toán 1, ta thu được tập dữ liệu C chưa tất cả các lớp thi đã được xếp lịch.

Input: Các tập dữ liệu

Output: Lịch thi của các lớp thi đã được xếp thêm giảng viên coi thi

Bài toán 2 yêu cầu các tập dữ liệu đầu vào sau

1 T : Tập chứa tất cả các ca thi trong kỳ thi mà các lớp thi được xếp vào Tập này được tạo ra từ output của bài toán 1

T = {dp} trong đó dp là tiết thứ p của ngày d

2 C: Tập tất cả các lớp thi đã xếp lịch được lấy từ output của bài toán 1

Ví dụ: C = {’C0’:[’E1’, ’G2’, ’10’], } Lớp thi có mã ’C0’: bài thi ’E1’ của nhóm sinh viên ’G1’ được xếp lịch vào ca thi thứ 2 của ngày thi đầu tiên.

3 L: Tập tất cả các giảng viên coi thi

Ví dụ: L = {L0: ’Ta Anh Son’, L1: ’Le Chi Ngoc’, }

4 El: Tập tất cả các môn thi e đi kèm với giảng viên l có chuyên môn có thể coi thi bài thi đó

Từ tập E, ta xây dựng tập C, bao gồm tất cả các lớp thi có giảng viên l chuyên môn đủ khả năng coi thi cho các lớp đó.

5 Tc: Tập tất cả các ca thi đi kèm với các lớp thi được xếp vào ca thi đó

6 Lt1: Tập các giảng viên đi kèm với thời gian mà họ bận không thể tham gia coi thi được

Lt: được tạo ra từ 2 tập Lt1 và T , là tập các giảng viên đi kèm với thời gian thi thực tế mà họ bận

Có 2 tập biến trong bài toán này

+ Biến chính: Biến nhị phân ký hiệu bởi x l,t,c trong đó l ∈ L, t ∈ T, c

• xl,t,c = 1 khi giảng viên l được xếp vào coi thi lớp thi c tại thời điểm t,

• xl,t,c = 0, các trường hợp còn lại.

+ Biến phụ: Biến nhị phân ký hiệu bởi w l

• wl = 1 khi giảng viên l được xếp coi thi trong kỳ thi,

• wl = 0 khi giảng viên l không được xếp coi thi trong kỳ thi.

1 Tại mỗi thời điểm, mỗi giảng viên chỉ coi thi tối đa 1 lớp thi

2 Tại mỗi thời điểm, mỗi lớp thi được coi bởi 2 giảng viên

3 Một số bài thi cần được coi thi bởi ít nhất 1 giảng viên có chuyên môn

4 Không xếp giảng viên coi thi vào những khung giờ mà họ bận

5 Ràng buộc liên quan đến biến wl, đảm bảo số ca thi tối thiểu và tối đa của 1 giảng viên

Trong kỳ thi, mỗi giảng viên được yêu cầu coi thi với số ca tối thiểu là A và tối đa là B Tổng số ca thi mà giảng viên l được phân công trong các kỳ thi t∈T và c∈C được ký hiệu là xl,t,c.

Việc phân công giáo viên coi thi rải rác cho các lớp thi gây ra nhiều khó khăn trong việc sắp xếp nhân sự Những giáo viên chỉ được phân công coi thi vài ca sẽ gặp khó khăn trong việc tổ chức công việc và kế hoạch cá nhân Do đó, mục tiêu là giảm thiểu số lượng giáo viên tham gia coi thi, chỉ sử dụng một số giáo viên nhất định, để những giáo viên còn lại có thể tập trung vào kế hoạch riêng trong suốt kỳ thi.

Hàm mục tiêu sẽ như sau:

Tối thiểu số lượng giảng viên đi coi thi trong kỳ thi min wl. l∈L

Mô hình xếp lịch thi tại trường Đại học Bách Khoa Hà Nội đã được trình bày trong phần (3.2), dựa trên các đặc điểm, quy tắc và yêu cầu được nêu trong chương 2.

Phần cuối cùng của bản luận văn (3.3) sẽ trình bày kết quả thử nghiệm mô hình trên bộ dữ liệu thực.

Kết quả thử nghiệm mô hình

Giới thiệu tổng quan về công cụ CPLEX Opti-

IBM CPLEX Optimizer, được phát triển bởi IBM, là một công cụ tối ưu hóa hiệu suất cao, chuyên giải quyết các bài toán quy hoạch tuyến tính, quy hoạch nguyên, quy hoạch nguyên hỗn hợp và quy hoạch toàn phương.

• CPLEX Optimizer có khả năng giải các bài toán tối ưu thực tế với dữ liệu lớn trong thời gian tương đối nhanh, đem lại kết quả chính xác [6].

• CPLEX Optimizer đã giải được các mô hình tối ưu với hàng triệu ràng buộc và biến citecp.

Giới thiệu về khái niệm MIP gap trong CPLEX 28

MIP gap là phần trăm chênh lệch giữa giá trị tối ưu đang tìm kiếm và giá trị tối ưu hiện tại Chẳng hạn, nếu giá trị tối ưu cần đạt là 100 và giá trị tối ưu hiện tại là 90, thì MIP gap sẽ là 10%.

MIP gap nhỏ hơn mang lại giá trị tối ưu chính xác hơn, nhưng yêu cầu thời gian tính toán lâu hơn Ngược lại, MIP gap lớn hơn giúp giảm thời gian tính toán, nhưng kết quả có thể chưa đạt được tối ưu.

Trong CPLEX, người dùng có thể thiết lập giá trị MIP gap tối thiểu mà họ mong muốn Nếu MIP gap hiện tại nhỏ hơn ngưỡng này, CPLEX sẽ dừng tìm kiếm và cung cấp giá trị tối ưu hiện tại Việc xác định giá trị MIP gap tối thiểu giúp điều chỉnh thời gian tính toán của CPLEX, từ đó đạt được sự cân bằng giữa chất lượng giải pháp và thời gian xử lý.

• Câu lệnh khai báo MIP gap là model.parameters.mip.tolerances.mipgap = giá trị mip gap

Các bước thực thi mô hình với Cplex

1 Bước 1 : Tiền xử lý dữ liệu và khai báo các tập dữ liệu đầu vào

2 Bước 2 : Khai báo mô hình tối ưu hóa, sử dụng module Cplex để khởi tạo một đối tượng mô hình.

3 Bước 3 : Thêm các biến vào mô hình bằng cách sử dụng hàm model.binary_var_dict()

4 Bước 4 : Thêm các ràng buộc vào mô hình bằng cách sử dụng hàm model.add_constraint()

5 Bước 5 : Thêm hàm mục tiêu vào mô hình, bằng cách sử dụng hàm model.minimize() hoặc model.maximize()

6 Bước 6 : Giải mô hình bằng cách gọi hàm model.solve()

7 Bước 7 : Xử lý dữ liệu đầu ra của model để in ra lịch thi

Kết quả thử nghiệm mô hình với dữ liệu thực

a, Đầu tiên chạy thử mô hình với dữ liệu nhỏ:

Các tập dữ liệu đầu vào của bài toán 1

Chạy chương trình, ta thu được kết quả của bài toán 1 ở bảng (3.1) Kết quả hiển thị ví dụ bài toán 1 thể hiện ở hình (3.1)

Bảng 3.1: Kết quả ví dụ bài toán 1 với dữ liệu nhỏ

Code Group Exam Sub Room Per Day

Hình 3.1: Kết quả hiển thị ví dụ bài toán 1 với dữ liệu nhỏ

Các tập dữ liệu đầu vào của bài toán 2

• Output của bài toán 1 là C={’C0’: [’E0’, ’G0’, ’13’], ’C1’: [’E1’,

• L ={’L0’: ’Lê Chí Ngọc’, ’L1’: ’Tạ Anh Sơn’, ’L2’: ’Nguyễn Danh

Tú’, ’L3’: ’Vương Mai Phương’, ’L4’: ’Nguyễn Tuấn Dũng’, ’L5’:

’Nguyễn Xuân Trường’, ’L6’: ’Nguyễn Thị Thu Hương’, ’L7’:

’Nguyễn Thị Ngọc Anh’, ’L8’:’Nguyễn Văn Huy’}

Chạy chương trình, ta thu được kết quả của bài toán 2 ở bảng (3.2).

Bảng 3.2: Kết quả ví dụ bài toán 2 với dữ liệu nhỏ

Code Group Exam Proctor 1 Proctor 2 Per Day

C3 TT01, TT02 XSTK N.T.Dũng N.X.Trường 4 4

Thời gian giải và giá trị hàm mục tiêu của bài toán 1 và bài toán 2 được thể hiện ở bảng (3.3)

Bảng 3.3: Thời gian giải và giá trị hàm mục tiêu khi chạy với dữ liệu nhỏ

Bài toán Thời gian giải Giá trị hàm mục tiêu

Chúng tôi đã thực hiện bài toán 2 1s 6 b và tiến hành chạy mô hình với bộ dữ liệu được trích xuất từ lịch thi của Viện Toán Ứng dụng và Tin học (SAMI).

Kích thước của 2 bài toán được chỉ ra ở bảng (3.4) và bảng (3.5).

Bảng 3.4: Kích thước của bài toán 1 với dữ liệu thực tế

Số bài thi Số nhóm sinh viên Số phòng thi

Số ràng buộc Số biến

Bảng 3.5: Kích thước của bài toán 2 với dữ liệu thực tế

Số giảng viên Số lớp thi

Số ràng buộc Số biến

Thời gian giải và giá trị hàm mục tiêu của bài toán 1 và bài toán 2 với giá trị MIP gap 10% và 20% thể hiện ở bảng (3.6) và bảng (3.7)

Trong bài toán có số chiều lớn và độ phức tạp cao, khi giá trị MIP gap nhỏ (10%), ta có thể đạt được lời giải tốt hơn, với giá trị hàm mục tiêu là 26 so với 29 khi MIP gap là 20% Tuy nhiên, thời gian thực thi của Cplex khi MIP gap là 10% lại lớn hơn nhiều so với khi MIP gap là 20% Ngược lại, trong bài toán có số chiều nhỏ hơn và ít ràng buộc phức tạp hơn, sự chênh lệch về chất lượng lời giải và thời gian thực thi của Cplex giữa hai giá trị MIP gap khác nhau là không đáng kể.

Cụ thể kết quả thực thi cplex bài toán 1, bài toán 2 với MIP gap 10% và 20% được thể hiện ở các hình (3.2), (3.3), (3.4), (3.5)

Bảng 3.6: Thời gian giải và giá trị hàm mục tiêu bài toán 1 với dữ liệu thực tế

Bài toán Thời gian giải Giá trị hàm mục tiêu

Bảng 3.7: Thời gian giải và giá trị hàm mục tiêu bài toán 2 với dữ liệu thực tế

Bài toán Thời gian giải Giá trị hàm mục tiêu

Hình 3.2: Kết quả thực thi cplex của bài toán 1 với MIP gap 10%

Hình 3.3: Kết quả thực thi cplex của bài toán 2 với MIP gap 10%

Hình 3.4: Kết quả thực thi cplex của bài toán 1 với MIP gap 20%

Hình 3.5: Kết quả thực thi cplex của bài toán 2 với MIP gap 20%

Ngày đăng: 04/06/2023, 13:08

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] Michael W. Carter, Gilbert Laporte and Sau Yan Lee, Examination Timetabling: Algorithmic Strategies and Applications, The Journal of the Operational Research Society Vol. 47, No. 3 (Mar., 1996), pp. 373-383 (11 pages) Sách, tạp chí
Tiêu đề: Examination Timetabling: Algorithmic Strategies and Applications
Tác giả: Michael W. Carter, Gilbert Laporte, Sau Yan Lee
Nhà XB: The Journal of the Operational Research Society
Năm: 1996
[3] Di Gaspero L. and Schaerf, A. (2001), Tabu search techniques for examination timetabling, In: Burke, E., Erben, W. (Eds.):Practice and Theory of Automated Timetabling III (PATAT 2000, Konstanz Germany, August, selected papers). Lecture Notes in Computer Sci-ence, Vol. 2079. Springer-Verlag, Berlin Heidelberg New York (2001) 104-117 Sách, tạp chí
Tiêu đề: Practice and Theory of Automated Timetabling III (PATAT 2000, Konstanz Germany, August, selected papers)
Tác giả: Di Gaspero L., Schaerf A
Nhà XB: Springer-Verlag
Năm: 2001
[4] Nuno Leite, Fernando Melício, Agostinho C. Rosa, A fast simulated annealing algorithm for the examination timetabling problem, Expert Systems with Applications, Volume 122, 2019, Pages 137-151, ISSN 0957-4174 Sách, tạp chí
Tiêu đề: A fast simulated annealing algorithm for the examination timetabling problem
Tác giả: Nuno Leite, Fernando Melício, Agostinho C. Rosa
Nhà XB: Expert Systems with Applications
Năm: 2019
[5] Dener, M., Calp, M. H., (2018). Solving the exam scheduling problems in central exams with genetic algorithms, Mugla Journal of Science and Technology, 4(1), 102-115 Sách, tạp chí
Tiêu đề: Solving the exam scheduling problems in central exams with genetic algorithms
Tác giả: Dener, M., Calp, M. H
Nhà XB: Mugla Journal of Science and Technology
Năm: 2018
[7] Son, T.A., Ngan, N.T. (2021). An Integer Programming Model for Course Timetabling Problem at HUST. In: Tran, DT., Jeon, G., Nguyen, T.D.L., Lu, J., Xuan, TD. (eds) Intelligent Systems and Networks. ICISN 2021. Lecture Notes in Networks and Systems, vol Sách, tạp chí
Tiêu đề: Intelligent Systems and Networks
Tác giả: Son, T.A., Ngan, N.T
Nhà XB: Lecture Notes in Networks and Systems
Năm: 2021

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