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

Ứng dụng giải thuật tô màu đồ thị trong bài toán sắp xếp lịch thi

47 10 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

LỜI CẢM ƠN Trong thời gian cho phép nhờ nỗ lực, cố gắng thân quan tâm giúp đỡ thầy giáo, gia đình bạn bè em hồn thành khố luận Nhân dịp em xin gửi lời cảm ơn sâu sắc tới thầy giáo, Th.s Trần Xuân Hào Thầy người hướng dẫn, bảo, đề phương hướng cho em suốt trình, bước giải vấn đề Nhờ giúp đỡ bảo tận tình thầy em hồn thành khố luận Đồng thời em xin cảm ơn tới thầy cô giáo khoa cơng nghệ thơng tin dạy dỗ, dìu dắt em q trình học tập để em có kiến thức tảng hồn thành khố luận Cuối em xin cảm ơn gia đình bạn bè động viên, quan tâm, khích lệ giúp đỡ em Em xin chân thành cảm ơn! Vinh, tháng4 năm 2008 Sinh viên: Lê Thị Phượng Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi CHƢƠNG I GIỚI THIỆU ĐỀ TÀI 1.1 LỜI NÓI ĐẦU Như biết sống ngày công nghệ thông tin phát triển mạnh mẽ có ảnh hưởng sâu sắc đến đời sống xã hội Nó xem nguồn tài nguyên mới, mũi nhọn và thu hút quan tâm, đầu tư tồn nhân loại Cơng nghệ thơng tin không giúp việc giao tiếp, trao đổi thơng tin mà cịn giúp xử lí thơng tin cách nhanh chóng, xác hiệu Với nhiều ưu điểm đưa vào hầu hết lĩnh vực: y tế, văn hoá, thể dục thể thao Và đặc biệt thiếu ngành giáo dục Sự phát triển sống đòi hỏi ngành khoa học phải thường xuyên đổi mới, thay đổi cập nhập để đáp ứng với nhu cầu xã hội đề Ở nước ta công nghệ thông tin đặc biệt quan tâm không thua nghành khoa học khác.Nhiều công việc chân tay thay máy móc Các phần mềm quản lí đàn dần thay cho thao tác thủ công người.Trước mà công nghệ thông tin chưa thực phát triển quy mơ đào tạo trường đại cịn nhỏ lịch thi thường xếp thủ công vô vất vả Nhưng ngày với bước phát triển vượt bậc, với phương thức mẽ, nhanh chóng, xác hiệu giúp giải tốn quản lí cách dễ dàng Trong đề tài em đề cập đến “Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi” Ngơn ngữ lập trình mà em sử dụng việc giả toán ngôn ngữ C# Với thời gian cho phép em hồn thành khố luận q trình phân tích tốn cịn khơng thể tránh khỏi nhiều thiếu sót Mong thầy bạn đóng góp ý kiến để chương trình hồn thiện Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi 1.2 LÍ DO CHỌN ĐỀ TÀI - Tốn học rời rạc có nhiều ứng dụng tin học.Bài tốn xếp lịch thi có nhiều ứng dụng tin học nhiều lĩnh vực khác đời sống xã hội Có nhiều cơng trình nghiên cứu vấn đề này, có số giải thuật tô màu đồ thị (graph coloring), giải thuật di truyền (genetic algorithms), lập trình ràng buộc (constraint programing), … Tuy nhiên chưa có giải thuật tối ưu mà mục tiêu chung muốn tìm kết xếp lịch gần tối ưu, nghĩa kết tốt -Trước kia, việc xếp lịch thi phần nhiều làm tay Trong năm gần đây, có nhiều trường cho triển khai hình thức học theo tín chỉ, sinh viên chọn đăng kí mơn học theo ý thích kế hoạch học tập Điều làm cho việc xếp lịch thi trở nên khó khăn Nên địi hỏi phải có phần mềm xếp lịch thi cần thiết - Em định chọn đề tài “Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi”với hy vọng biết thêm ngôn ngữ mới, ngơn ngữ lập trình C# làm hành trang trước trường Để thể phần kiến thức mà nghiên cứu em cài đặt thuật tốn tơ màu đồ thị cho tốn xếp lịch thi 1.3 MỤC ĐÍCH CỦA ĐỀ TÀI Mục tiêu khoá luận nghiên cứu việc “Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi” kết hợp với số Heurstic để tiùm kết xếp lịch thi cách tối ưu 1.4 PHẠM VI NGHIÊN CỨU - Lí thuyết đồ thị - Tìm hiểu tốn tơ màu số Heurstic - Tìm hiểu tốn xếp lịch thi - Tìm hiểu C# , thiết kế thực chương trình dạng đơn giản 1.4 ĐỐI TƢỢNG NGHIÊN CỨU - Tốn rời rạc - Ngơn ngữ lập trình C# - Tìm hiểu tốn xếp lịch thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi CHƢƠNG II KIẾN THỨC LIÊN QUAN 2.1 LÝ THUYẾT ĐỒ THỊ 2.1.1 Định nghĩa phân loại đồ thị Định nghĩa đồ thị  Định nghĩa 1: Một đơn đồ thị vô hướng G = (V, E) gồm tập không rỗng V mà phần tử gọi cấc đỉnh tập E mà phần tử gọi cạnh, cặp khơng thứ tự đỉnh phân biệt  Định nghĩa 2: Một đa đồ thị vô hướng G = (V, E) gồm tập đỉnh V, tập cạnh E hàm f từ E tới {{u, v} / u, v  V, u  v} Các cạnh e1 e2 gọi song song hay cạnh bội f(e1) = f(e2)  Định nghĩa 3: Giả đồ thị vô hướng G=(V,E) gồm tập đỉnh V E họ cặp khơng có thứ tự gồm hai phần tử (không thiết phải khác nhau) V gọi cạnh, cạnh e gọi khuyên có dạng e=(u,u)  Định nghĩa 4: Đơn đồ thị có hướng G=(V,E) bao gồm tập đỉnh V tập cạnh E cặp có thứ tự phần tử thuộc V  Định nghĩa 5: Đa đồ thị có hướng G=(V,E) bao gồm V tập đỉnh E họ cặp có thứ tự gồm hai phần tử khác V gọi cung Hai cung e1 e2 tương ứng với cặp đỉnh gọi cung lặp Phân loại đồ thị: a Đồ thị vơ hướng đồ thị có hướng:  Đồ thị vô hướng : Là đồ thị không phân biệt cạnh nối từ đỉnh A đế đỉnh B ngược lại.(h.vẽ) A F B C H1.a Đồ thị hình DD D H1b.Đồ thị hình Lờ Th Phng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi  Đồ thị có hướng: Phân biệt cạnh nối từ đỉnh A đến đỉnh B từ đỉnh B đến đỉnh A khác .(h.vẽ) B A C A BB B B B B B B D C D H2 Đồ thị có h-ớng b th cú trng số khơng có trọng số: B  Đồ thị có trọng số: đồ thị cạnh gán giá trị.(h.vẽ) A A A C D H3 Đồ thị có trọng số  Đồ thị khơng có trọng số: (h.vẽ) B B C A D H4.a Đồ thị vô h-ớng có trọng số C A D H4.b Đồ thị có h-ớng có träng sè 2.1.2 Các thuật ngữ đồ thị Những thuật ngữ sở a Các định nghĩa:  Định nghĩa 1: Hai đỉnh u v đồ thị vô hướng G gọi liền kề (u,v) cạnh G Nếu e=(u,v) e gọi cạnh liên thuộc với đỉnh u v Cạnh e đuợc gọi cạnh nối đỉnh u v Các đỉnh u v gọi đỉnh đầu mút cạnh (u,v)  Định nghĩa 2: Bậc đỉnh đồ thị vô hướng số cạnh liên thuộc với nó, riêng khun đỉnh đựoc tính hai lần cho bậc Ngược lại ký hiệu bậc đỉnh v deg(v) Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi  Định nghĩa 3: Khi (u,v) cạnh đồ thị có hướng G, u gọi nối tới v, v gọi nối tới u Đỉnh u gọi đỉnh đầu, đỉnh v gọi đỉnh cuối cạnh (u,v) Đỉnh đầu đỉnh cuối có khuyên trùng  Định nghĩa 4: Trong đồ thị có hướng bậc vào đỉnh v kí hiệu deg -(v) số cạnh có đỉnh cuối v Bậc đỉnh v, ký hiệu deg +(v) số cạnh có đỉnh đầu v b.Các định lí:  Định lí 1: Định lí bắt tay: Cho G = (V,E) đồ thị vơ hướng có e cạnh Khi đó: e =  deg( v) vV ( Định lí tổng bậc tất đỉnh đị thị vơ hướng số chẵn.)  Định lí 2: Một đồ thị vơ hướng có đỉnh số chẵn bậc lẻ Chứng minh : Giả sử V1 V2 tương ứng tập đỉnh bậc chẵn tập đỉnh bậc lẻ G = (V, E) Khi đó: 2e =  deg( v) =  deg( v) +  deg( v) vV vV1 vV2 Vì v chẵn với v  V1, nên tổng vế phải số chẵn Mặt khác vế trái (bằng 2e) số chẵn nên tổng lại vế phải số chẵn Vì tất số hạng tổng số lẻ, nên từ suy số hạng chẵn Hay số đỉnh bậc lẻ chẵn Những đồ thị đơn đặc biệt: a Đồ thị đầy đủ: Đồ thị đầy đủ n đỉnh, kí hiệu Kn, đơn đồ thị chứa cạnh nối cặp đỉnh phân biệt Các đồ thị Kn, với n= 1, 2, 3, 4, biểu diễn hình sau: H5.a Đồ thị đơn đầy đủ K1 H5.b Đồ thị đơn đầy đủ K2 H5.c Đồ thị đơn đầy đủ K3 Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tơ màu đồ thị tốn sp xp lch thi H5.d Đồ thị đơn đầy đủ K1 H5.e Đồ thị đơn đầy đủ K5 b Chu trình (vịng) H6.a Chu tr×nh c3 H6.b Chu tr×nh c4 H6.c Chu tr×nh c5 Chu trình Cn, n>=3 đồ thị có n đỉnh, v1, v2, ,vn cạnh { v1, v2},{ v2, v3}, { vn-1, vn}và { vn, v1} Các chu trình C3, C4, C5 biểu diễn sau: c Đồ thị khác Ngồi cịn số đồ thị khác : đồ thị bánh xe, khối n chiều Đồ thị phân đôi: Định nghĩa: Một đồ thị đơn G gọi đồ thị phân đơi tập đỉnh V phân làm hai tập không rỗng rời V1 V2 cho cạnh đồ thị nối đỉnh V1 với đỉnh V2 A B G C F E D H7 Đồ thị đơn đầy đủ K5 2.1.3 Biu din th trờn máy tính Lĩnh vực đồ thị có nhiều ứng dụng thực tế, mơ hình nhiều ứng dụng đồ thị sử dụng máy tính để giải tốn ứng dụng Nên việc biểu diễn lưu trữ đồ thị máy tính vấn đề trọng tâm, phương thức biểu diễn loại đồ thị máy tính ảnh hưởng đến giải thuật, phương pháp giải ứng dụng máy tính 1.Biểu diễn ma trận kề, ma trận trọng số Xét đơn đồ thị vô hướng G=(V,E), với tập đỉnh V=(1,2, ,n), tập cạnh E Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi =(e1,e2, ,en) Ta gọi ma trận kề đồ thị G (0,1)_ ma trận A=(aịj: i,j=1,2, ,n) Và phần tử xác định theo quy tắc sau đây: Aij =0, (i,j)  E Aij =1, (i,j)  E (i,j =1,2,3, ,n) Ví dụ: Ma trận kề đồ thị vô hướng G cho hình là: 1 0 1 1 1 0 0 1 1 1 H8.a Đồ thị vô h-ớng G H8.b Ma trận kề cđa G  Các tính chất ma trận kề  Rõ ràng ma trận kề đồ thị vô hướng ma trận đới xứng , tức là: a[i,j]=a[i,j], i,j=1,2, ,n Ngược lại, (0,1)-ma trận đối xứng cấp n tương ứng, xác đến cách đánh số đỉnh (hay xác đến đẳng cấu) với đơn đồ thị vô hướng n đỉnh  Tổng phần tử dòng i (cột j) ma trận kề bậc đỉnh i (đỉnh j)  Nếu ký hiệu aijp, i,j=1,2, ,n phần tử ma trận Ap = A.A…A /P thừa số Khi apij, i,j=1,2,…,n cho ta số đường khác từ đỉnh i đến đỉnh j qua p-1 đỉnh trung gian Ma trận kề đồ thị có hướng định nghĩa cách hoàn toàn tương tự Chú ý: Trên ta xét đơn đồ thị Ma trận kề đồ thị xây dựng hồn tồn tương tự khác thay ghi vào vị trí a[i,j] (i,j) cạnh đồ thị, ghi k số cạnh nối hai đỉnh i j Trong nhiều vấn đề ứng dụng lý thuyết đồ thị, cạnh e = (u,v) đồ thị gán với số c(e) (hay c(u,v)) gọi trọng số cạnh e Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi Đồ thị trường hợp gọi đồ thị có trọng số Trong trường hợp đồ thị có trọng số, thay ma trận kề, để biểu diễn đồ thị ta sử dụng ma trận trọng số: C = c[i,j], i,j = 1,2,…,n Với c[i,j] = c(i,j), (i,j)  Và c[i,j] =  , (i,j)  E số  , tuỳ trường hợp cụ thể, đặt giá trị: 0, -∞, +∞  Ưu điểm: ưu điểm lớn phương pháp biểu diễn đồ thị ma trận kề để trả lời câu hỏi: hai đỉnh u,v có kề đồ thị hay không, phải thực phép so sánh  Nhược điểm: nhược điểm lớn phương pháp không phụ thuộc vào số cạnh đồ thị, ta phải sử dụng n đơn vị nhớ để lưu trữ ma trận kề Biểu diễn danh sách cạnh (cung) Cho đồ thị G = với số cạnh m, số đỉnh n Nếu m < 6n G thường biểu diễn dạng danh sách cạnh (cung) Theo cách danh sách tất cạnh (cung) đồ thị vơ hướng (có hướng) Mỗi cạnh (cung) e = (x, y) đồ thị tương ứng với hai biến Dau[e], Cuoi[e] 1 3 44 4 thị H9.a Đồ h-ớng G2 H9.a Đồ thị vô h-ớng G1 có Vớ d: Hỡnh đồ thị G1 G2 biểu diễn danh sách cạnh (cung) sau: Dau 1 2 Cuoi 3 4 Danh s¸ch c¹nh G1 Dau 4 Cuoi 1 Danh s¸ch cung G2 Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi Như để lưu trữ đồ thị cần sử dụng 2m đơn vị nhớ Nhược điểm phương pháp để xác định đỉnh đồ thị kề với đỉnh cho trước phải làm cỡ m phép so sánh Biểu diễn danh sách kề Phương pháp biểu diễn danh sách kề sử dụng phổ biến thường hay dùng cho đồ thị có hướng Danh sách kề cho đỉnh xi danh sách gồm tất đỉnh kề xi theo thứ tự đỉnh tập đỉnh X Ta biểu diễn đồ thị mảng FIRST, với phần tử FIRST[i] trỏ trỏ tới danh sách kề cho đỉnh xi Ví dụ: Ở hình đồ thị G1 G2 biểu diễn danh sách kề sau: FIRST 3 Nil Nil a) Danh sách kề đồ thị G1 FIRST Nil Nil 4 4 b) Danh sách kề đồ thị G2 4 Nil NilNil 3Nil Nil NINill 1NiNil Nil NillNil nnNi8l Nil NịNil Bộ nhớ sử dụng cho phương pháp biểu diễn danh sách kề tỷ lệ thuận với tổng số đỉnh cạnh đồ thị Nhược điểm cách biểu diễn thời gian cần thiết để xác định có cạnh từ đỉnh xi tới đỉnh xj có hay khơng O(n) Cách biểu diễn thích hợp cho thuật tốn mà cấu trúc đồ thị hay thay đổi thêm bớt cạnh Lí thuyết tơ màu  Định nghĩa 1: Tơ màu đơn đồ thị gán màu cho đỉnh khơng có hai đỉnh liền kề đựơc gán màu Một đồ thị tô màu cách gán màu khác cho đỉnh Tuy với hầu hết đồ thị, ta tơ màu chúng với số màu số đỉnh Vậy số màu cần thiết la bao nhiêu? Lê Thị Phượng- 45A2- CNTT- Đại học Vinh Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi 3.3.2 Lựa chọn giải thuật Giải thuật chọn lựa Best Fit cộng thêm số heuristic để giải ràng buộc Để giảm khoảng cách di chuyển phịng thi mơn ta phải cố xếp phịng thi vào dãy Để xếp nhóm tổ mơn thi vào dãy ta xếp nhóm vào dãy, tính độ lãng phí dãy (nghĩa tổng số chổ thừa phòng xếp thi dãy đó) Dãy chọn dãy xếp thi với độ lãng phí Khi khơng thể xếp hết nhóm thi vào dãy, nhóm cịn lại xếp vào phịng dãy khác gần dãy tiếp tục xếp hết nhóm thi mơn Nếu khơng kiếm đủ phịng để xếp thi vào thời đểm giải thuật báo cho chương trình chọn tiết quay lui đến tiết khác để xếp phòng 3.4 QUÁ TRÌNH XẾP LỊCH THI Hệ thống chương trình bao gồm thủ tục nạp tham số cần thiết (LoadConfiguration), khởi tạo liệu (MakeExamGroupData), tính bậc mơn thi xếp chúng (ExamsDegree), tính điểm phạt cho mơn thời điểm phịng cho mơn thời điểm điểm phạt bé (LeastPenalty) Các bước q trình xếp lịch thi sau :  Khởi động thông số cần thiết cho q trình xếp lịch  Tính bậc mơn thi xếp môn thi theo thứ tự giảm dần bậc  Khởi tạo penalty matrix Xét yêu cầu đặt biệt thời gian thi ngày bận, ngày thi ưu tiên, tiết thi ưu tiên để cập nhật penalty matrix phù hợp While cịn mơn không xếp Chọn ngẫu nhiên môn es từ bias-size môn danh sách Chọn tiết pi mà có pmis < wcconflict xếp tiết theo thứ tự tăng dần pmis Nghĩa tiết tiết có điểm phạt thấp nhất, tức thõa mãn nhiều ràng buộc mềm xếp trước Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 32 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi Sắp lịch cho mơn es vào tiết có điểm phạt thấp ps mà có đủ chổ cho tất sinh viên môn es từ tiết Gán mơn es vào tiết ps gán nhóm mơn học vào phịng thi Nếu khơng xếp phịng thời điểm ps quay lui chọn ps khác danh sách tiết sau ps không xếp Cập nhật penalty matrix đánh dấu phòng xếp thi bận thời điểm ps end while 3.5 ĐẶC TẢ YÊU CẦU Yêu cầu hệ thống phải nắm bắt thông tin thí sinh, phịng thi Cung cấp cho người dùng số thông tin cần thiết đặc biệt phải giải yêu cầu toán đặt Để xếp lịch thi chương trình cần thực hịên số công việc sau:  Thu thập thông tin cần thiết thí sinh dự thi như: Lớp, nhóm, mơn thi, ngày sinh, Thu thập thơng tin phịng thi, sức chứa phịng.v.v…  Quản lí tổ chức liệu thu thập Từ thông tin thu thập phải đưa yêu cầu cần thiết cho người dùng Dựa vào vấn đề nêu chương trình cần tập chung vào phần là:  Hệ thống  Đăng nhập: Yêu cầu người dùng đăng nhập vào hệ thống muốn sử dụng  Đăng xuất: người dùng muốn tạm dừng thực chương trình  Kết thúc: người dùng muốn khỏi chương trình  Nhập thơng tin  Nhập lớp: nhập ds lớp, nhóm có sinh viên dự thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 33 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi  Nhập sinh viên:gồm thông tin: Mã sinh viên, ngày sinh, ten sinh viên, lớp  Nhập môn học: gồm có mã mơn, tên mơn,  Nhập phịng thi:nhập mã phịng, tên phịng, kích cỡ  Xếp lịch thi:  Nhập sinhviên-mơnthi: gồm có masv, tên mơn thi, lớp  Xếp lịch thi:Người dùng nhập thông số cho lịch thi thực xem lịch thi, in muốn  Trợ giúp  Lời cảm ơn  Thông tin trợ giúp Biểu đồ phân cấp chức CHƢƠNG TRÌNH XẾP LỊCH THI Hệ thống Nhập thơng tin Xếp lịch thi Trợ giúp Đăng nhập Nhập Lớp Mụn hcsinh viờn Lời cảm ơn ng xut Nhp sinh viên Xếp lịch thi Th«ngTin CT Kết thúc Mơn học Phòng thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 34 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi Biểu đồ luồng liệu y/c xếp lịch Chương trình Người dùng T/tin thí sinh Đáp ứng yêu cầu Y/c cung cÊp tt Người quản lí Biểu đồ luồng liệu møc ®Ønh TT đăng nhập TT đăng nhập HỆ THỐNG Nhập thơng tin TT cập nhập CẬP NHẬP THƠNG TIN TT Xác nhận Ngƣời quản lí Yêu cầu nhập tt Ngƣời sử dụng liệu xếp lịch liệu sinh viênh TT Xác nhận Xếp lịch thi XẾP LỊCH THI TT đăng nhập TRỢ GIÖP Yêu cầu xếp lịch TT trợ giúp Yêu cầu trợ giúp Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 35 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi Sơ đồ thực thể quan hệ 5.Thiết k ế file liệu Fi le Phòng thi File Sinh viên File Sinh viên môn thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 36 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi File lớp File lịch thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 37 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi CHƢƠNG IV KẾT QUẢ 4.1 CÁC GIAO DIỆN Các herstic, ràng buộc nêu điều cần thiết cho toán thực tế yêu cầu khoá luận chủ yếu nghiên cứu giải thuật tô màu đồ việc xếp lịch thi nên em làm ứng dụng dành cho chương trình xếp lịch thi dạng Tức giải số xung đột khơng có sinh viên thi môn vào thời điểm Menu Nhập liệu chứa tác vụ liên quan đến việc chuẩn bị liệu cho việc xếp lịch Menu Xếp lịch thi chứa tác vụ liên quan đến việc chỉnh thông số cho giải thuật, xếp lịch, xem sửa lịch thi Menu In ấn Hệ thống chứa tác vụ liên quan đến việc in lịch thi kết thúc chương trình 4.1.1 Giao diện chƣơng trình  Gồm có danh mục như:  Hệ thống: gồm chức năng: Đăng nhập, đăng xuất kết thúc  Nhập thông tin: Nhập lớp, nhập sinh viên, nhập mơn học, nhập phịng thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 38 Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi  Xếp lịch thi: Sinh vien-Môn thi, xếp lịch 4.1.2 Dialog Đăng nhập : Dùng người sử dụng đăng nhập vầo hệ thống.Hệ thống yêu cầu người dùng nhập tên truy nhập mật Nếu mật khơng chương trình không cho người dùng truy nhập vào hệ thống 4.1.3 Dialog Danh mục nhập lớp Danh mục cập nhật lớp.Dùng để nhập lớp có sinh viên dự thi mơn Có thể thêm, sửa, xố, lưu, huỷ kết thúc không cần bổ sung, thay đổi thông tin Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 39 Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi 4.1.4 Dialog Danh mục nhập phòng thi Dùng để nhập phòng thi: Mã phòng, tên phòng, số thí sinh (số lượng thí sinh chứa phòng) Cũng gồm chức 4.1.5 Dialog Cập nhật môn học Dùng để nhập tên môn thi mã môn thi tương ứng Sau nhập tên mơn mã mơn ta thực lưu lại, sửa chữa, xố, huỷ lưu Danh mục cập nhật môn học Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 40 Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi 4.1.6 Dialog Sinhviên - M ôn thi Dùng để lưu thông tin sinh viên môn mà sinh viên dự thi Gồm có: Mơn thi, tên sinh viên, lớp mà sinh viên theo học 4.1.7 Dialog xếp lịch thi: Yêu cầu người dùng thiết lập thông số cần thiết ngày thi, ca thi, phòng thi muốn in danh sách thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 41 Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi 4.1.8 Dialog in lịch thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 42 Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi CHƢƠNG V KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 5.1 Kết luận Chương trình sử dụng giải thuật tơ màu đồ thị giải toán xếp lịch thi đơn giản Tuy nhiên chương chương nhiều hạn chế Nhưng toán yêu cầu thực tế phức tạp nhiều ràng buộc Để giải tốn thực tế chương trình địi phải giải số ràng buộc kết hợp số heuristic nêu Thực chưa có giải thuật tối ưu toán xếp lịch thi (thuộc lớp Np-Complete) nên mục tiêu giải thuật xếp lịch thi tìm giải thuật tốt Ngồi mơn khơng lịch bỏ qua lịch cho môn chế quay lui (backtracking) Mọi liệu dùng cho chương trình mang tính chất thử nghiệm 5.2 Hƣớng phát triển - Phát triển chương trình hồn chỉnh giải ràng buộc từ C1->C11 - Sử dụng số heuristic để công việc xếp lịch thi đem lại kết tốt Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 43 Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi Tài liệu tham khảo [1] Đỗ Đức Giáo, Toán rời rạc, NXB Đại Học Quốc Gia Hà Nội, 1999 [2] Nguyễn Đức Nghĩa-Nguyễn Tơ Thành, Tốn rời rạc, NXB Giáo Dục,1999 [3].Kenneth H.Rosen, Discrete Mathematics And Its Applications Bản dịch tiếng việt: Toán học rời rạc ứng dụng Tin học, NXB Khoa học kỹ thuật, Hà Nội 1998 Người dịch: Phạm Quang Thiều- Đặng Hữu Thịnh [4].Nguyễn Cam- Chu Đức Khánh, Lý thuyết đồ thị , NXB Tp Hồ Chí Minh, 1999 [5] Đỗ Xuân Lôi, Cấu Trúc liệu giải thuật, NXB thống kê, 1999 [6].Phạm Quang Trình, Phân tích thiết kế hệ thống thông tin, ĐHVinh, 2000 [7].Jes Liberty, O’Reilly, Program C# [8] T.s Dương Tuấn Anh, Đề tài nghiên cứu khoa học ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi, ĐH Bách khoa TP Hồ Chí Minh, 2003 Wetside http://WWW.Bách khoa Wikipedia Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 44 Ứng dụng giải thuật tơ màu đồ thị tốn xếp lịch thi MỤC LỤC Trang Lời cảm ơn Chương Giới thiệu đề tài 1.1 Lời nói đầu 1.2 Lí chọn đề tài 1.3 Mục đích đề tài 1.4 Phạm vi nghiên cứu 1.4 Đối tượng nghiên cứu Chương 2.Kiến thức liên quan 2.1 Lý thuyết đồ thị 2.1.1 Định nghĩa phân loại đồ thị Định nghĩa đồ thị Phân loại đồ thị: 2.1.2 Các thuật ngữ đồ thị Những thuật ngữ sở Những đồ thị đơn đặc biệt: Đồ thị phân đôi: 2.1.3 Biểu diễn đồ thị máy tính 1.Biểu diễn ma trận kề ma trận trọng số Biểu diễn danh sách cạnh (cung) Biểu diễn danh sách kề Lí thuyết tơ màu 2.2 Giải thuật tô màu đồ thị 12 2.2.1 Tìm hiểu tốn 12 2.3 Mô tả toán xếp lịch thi 17 2.3.1.Tìm hiểu tốn 17 2.3.2 Một số thuật ngữ 18 2.4 Tìm 20 2.4.1 Ngôn ngữ lập trình C# 20 2.4.2 Ngơn ngữ lập trình C# ngôn ngữ khác 24 Chương 3.Thiết kế thực 26 3.1 Lựa chọn giải thuật tô màu 26 3.1.1 Lựa chọn giải thuật 26 3.1.2 Giải thuật sử dụng đề tài 26 3.2 Giải ràng buộc 27 3.2.1.Tính bậc mơn thi 27 3.3 Giải thuật xếp phòng thi 30 3.3.1 Bài toán Packing 30 3.3.2 Lựa chọn giải thuật 32 3.4 Qúa trình xếp lịch 32 3.5 Đặc tả yêu cầu 33 Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 45 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi Biểu đồ luồng liệu 35 Biểu đồ luồng liệu 35 5.Thiết k ế file liệu 36 Chương 4.Kết 38 4.1 Các giao diện 38 4.1.1 Giao diện chương trình 38 4.1.2 Dialog Đăng nhập 39 4.1.3 Dialog Danh mục nhập lớp 39 4.1.4 Dialog Danh mục nhập phòng thi 40 4.1.5 Dialog Cập nhật môn học 40 4.1.6 Dialog Sinhviên - M ôn thi 41 4.1.7 Dialog xếp lịch thi 41 4.1.8 Dialog in lịch thi 42 Chương Kết luận hướng phát triển 43 5.1 Kết luận 43 5.2 Hướng phát triển 43 Tài liệu tham khảo 44 Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 46 ... 15 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi 6, 7, Biểu diễn đồ thị tương ứng Việc lập lịch thi việc tơ màu đồ thị Số màu đồ thị Có nghĩa ta cần màu để tơ màu đồ thị Cách tô đồ thị màu. .. học Vinh 41 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi 4.1.8 Dialog in lịch thi Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 42 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi CHƢƠNG V... nhận Xếp lịch thi XẾP LỊCH THI TT đăng nhập TRỢ GIÖP Yêu cầu xếp lịch TT trợ giúp Yêu cầu trợ giúp Lê Thị Phượng- 45A2- CNTT- Đại học Vinh 35 Ứng dụng giải thuật tô màu đồ thị toán xếp lịch thi

Ngày đăng: 02/12/2021, 23:29

Xem thêm:

HÌNH ẢNH LIÊN QUAN

Bảng sau liệt kờ cỏc từ khúa của ngụn ngữ C#. - Ứng dụng giải thuật tô màu đồ thị trong bài toán sắp xếp lịch thi
Bảng sau liệt kờ cỏc từ khúa của ngụn ngữ C# (Trang 24)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN