Thuật toán gale shapley sửa đổi cho bài toán hôn nhân ổn định với số lượng nam và nữ khác nhau

60 89 0
Thuật toán gale   shapley sửa đổi cho bài toán hôn nhân ổn định với số lượng nam và nữ khác nhau

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH _ NGUYỄN THỊ HỒI PHƯƠNG THUẬT TỐN GALE-SHAPLEY SỬA ĐỔI CHO BÀI TỐN HÔN NHÂN ỔN ĐỊNH VỚI SỐ LƯỢNG NAM VÀ NỮ KHÁC NHAU LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGHỆ AN, 2017 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH _ NGUYỄN THỊ HỒI PHƯƠNG THUẬT TỐN GALE-SHAPLEY SỬA ĐỔI CHO BÀI TỐN HƠN NHÂN ỔN ĐỊNH VỚI SỐ LƯỢNG NAM VÀ NỮ KHÁC NHAU Chuyên ngành: CÔNG NGHỆ THÔNG TIN Mã số: 60.48.02.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Người hướng dẫn khoa học: TS LÊ HỒNG TRANG NGHỆ AN, 2017 LỜI CAM ĐOAN Tôi xin cam đoan: Những kết nghiên cứu trình bày luận văn: “Thuật toán Gale - Shapley sửa đổi cho tốn nhân ổn định với số lượng nam nữ khác nhau” hồn tồn trung thực, khơng vi phạm luật sở hữu trí tuệ pháp luật Việt Nam Nội dung tham khảo từ sách, tài liệu khác trích dẫn đầy đủ Nếu sai, tơi hoàn toàn chịu trách nhiệm trước pháp luật TÁC GIẢ LUẬN VĂN Nguyễn Thị Hoài Phương LỜI CẢM ƠN Lời tơi xin bày tỏ lịng cảm ơn biết ơn chân thành tới tất người hỗ trợ, giúp đỡ trình thực luận văn tốt nghiệp Tơi xin cảm ơn Khoa Cơng nghệ Thơng tin, phịng Sau Đại học thầy cô giáo khoa giúp đỡ, tạo điều kiện thuận lợi nhất, hỗ trợ, giảng dạy giúp đỡ tơi q trình học tập làm luận văn tốt nghiệp Đặc biệt muốn gửi lời cảm ơn chân thành đến TS Lê Hồng Trang, người hướng dẫn, nhận xét, giúp đỡ để tơi hồn thành luận văn Tơi xin gửi lời cảm ơn đến gia đình, bạn bè, đồng nghiệp bên cạnh, động viên q trình hồn thiện luận văn Nhân đây, tơi xin kính chúc Thầy, Cơ giáo sức khỏe tiếp tục đạt nhiều thành công nghiên cứu khoa học nghiệp giảng dạy, chúc Khoa Công nghệ Thông tin ngày phát triển Mặc dù có nhiều cố gắng q trình thực luận văn khơng thể tránh khỏi thiếu sót, tơi mong nhận ý kiến đóng góp bổ sung thầy cô giáo bạn để luận văn tơi hồn thiện Tơi xin chân thành cảm ơn! Nghệ An, tháng năm 2017 Học viên Nguyễn Thị Hoài Phương MỤC LỤC Trang LỜI CAM ĐOAN LỜI CẢM ƠN MỤC LỤC DANH MỤC CÁC BẢNG, HÌNH VẼ MỞ ĐẦU Chương TỔNG QUAN VỀ BÀI TỐN HƠN NHÂN ỔN ĐỊNH 1.1 Một số khái niệm 1.2 Bài tốn nhân ổn định 1.2.1 Một số khái niệm 1.2.2 Phép gán ổn định toán hôn nhân ổn định 1.2.3 Bài tốn nhân ổn định với số lượng nam nữ khác 12 1.3 Bài toán ghép cặp đồ thị 12 1.3.1 Định nghĩa 12 1.3.2 Thuật toán Edmonds ghép cặp đồ thị 12 1.4 Một số ứng dụng tốn nhân thực tế 13 1.4.1 Bài toán phân công công việc cho công nhân 13 1.4.2 Bài tốn xếp thời khóa biểu trường đại học 13 1.4.3 Bài toán tuyển sinh đại học 14 1.4.4 Bài toán cho nhận ghép tạng 15 1.4.5 Bài tốn ghép đơi bác sĩ thực tập bệnh viện 15 1.5 Kết luận Chương 16 Chương THUẬT TOÁN GALE - SHAPLEY CHO BÀI TỐN HƠN NHÂN ỔN ĐỊNH VÀ ĐỀ XUẤT MỘT MỞ RỘNG 17 2.1 Thuật toán Gale - Shapley 17 2.1.1 Thuật toán Gale - Shapley cho toán hôn nhân ổn định với trường hợp nam nữ 17 2.1.2 Ví dụ minh họa 18 2.2 Bài tốn nhân ổn định mở rộng 21 2.2.1 Bài tốn nhân ổn định mở rộng - có số lượng nam nữ khác 21 2.2.2 Bài tốn nhân ổn định - nhiều 26 2.3 Thực thi thuật toán 33 2.4 Đánh giá hiệu thuật toán 39 2.5 Kết luận chương 39 Chương VẬN DỤNG BÀI TỐN HƠN NHÂN ỔN ĐỊNH CHO BÀI TỐN PHÂN CƠNG GIẢNG VIÊN HƯỚNG DẪN SINH VIÊN THỰC HIỆN ĐỀ TÀI 40 3.1 Giới thiệu 40 3.2 Mơ tả tốn 40 3.3 Phân tích tốn 41 3.3.1 Áp dụng thuật toán đề xuất chương giải toán 41 3.3.2 Mơ hình hố tốn dạng tốn nhân ổn định với số lượng nam nữ khác 42 3.3.3 Mô tả liệu thực nghiệm 42 3.4 Cài đặt thuật toán 46 3.5 Nhận xét đánh giá 51 KẾT LUẬN 52 TÀI LIỆU THAM KHẢO 53 DANH MỤC CÁC BẢNG, HÌNH VẼ Trang Bảng Bảng 2.1 Danh sách ưu tiên người đàn ông (a) người phụ nữ (b) 19 Bảng 2.3 Danh sách ưu tiên người đàn ông (a) người phụ nữ (b) 23 Bảng 2.4 Danh sách ưu tiên người đàn ông (a) người phụ nữ (b) .25 Bảng 2.5 Danh sách ưu tiên người đàn ông (a) người phụ nữ (b) 27 Bảng 2.6 Danh sách ưu tiên người đàn ông (a) người phụ nữ (b) 28 Bảng 2.7 Danh sách ưu tiên người đàn ông (a) người phụ nữ (b) 30 Bảng 2.8 Danh sách ưu tiên người đàn ông (a) người phụ nữ (b) 31 Bảng 3.1 Danh sách ưu tiên sinh viên (a) giảng viên (b) 43 Bảng 3.2 Danh sách ưu tiên sinh viên (a) giảng viên (b) 44 Hình Hình 2.1 Dữ liệu kết Ví dụ 2.1 Mục 2.1 37 Hình 2.2 Dữ liệu kết Ví dụ 2.2 Mục 2.2 37 Hình 2.3 Dữ liệu kết Ví dụ 2.3 Mục 2.2 38 Hình 2.4 Dữ liệu kết Ví dụ 2.4 Mục 2.2 38 Hình 3.1 Tệp danh sách ưu tiên tiêu giảng viên 49 Hình 3.2 Tệp danh sách ưu tiên sinh viên .50 Hình 3.2 Kết phân cơng hướng dẫn cho chương trình .50 MỞ ĐẦU Sự cần thiết vấn đề nghiên cứu Bài toán ghép cặp (stable matching) toán tiếng việc ghép cặp số phần tử tập X với số phần tử tập Y Vấn đề đặt tìm cách ghép cho số cặp ghép phù hợp Bài tốn nhân ổn định phiên tốn ghép cặp có nhiều ứng dụng thực tế Chẳng hạn, phân công bác sĩ thường trú cho bệnh viện, phân công thủy thủ tàu hay xếp học sinh tiểu học đến trường trung học,… Bài tốn nhân ổn định (Stable Marriage Problem - SMP) yêu cầu tìm cặp ghép ổn định phần tử hai tập hợp theo thứ tự ưu tiên phần tử Một cặp ghép ánh xạ từ phần tử tập hợp tới phần tử tập hợp Một cặp ghép ổn định hai điều kiện sau không đồng thời xảy [1]: i) Một phần tử A tập X thích phần tử B tập Y phần tử ghép với A, ii) B thích A phần tử ghép với B Nói cách khác, cặp ghép ổn định không tồn cặp (A, B) A B thích phần tử phần tử ghép với chúng Bài tốn nhân ổn định thường phát biểu sau: Có n người đàn ơng n phụ nữ, người xếp hạng tất người khác giới từ đến n theo thứ tự ưu tiên, cần tìm cách tổ chức nhân cho không tồn hai người khác giới yêu vợ/chồng họ Nếu không tồn người tất nhân "ổn định" Từ thực tế cho thấy hôn nhân có số người đàn ơng phụ nữ độc thân muốn kết Mỗi người có tiêu chuẩn riêng với người mà họ muốn kết hôn Với ràng buộc vậy, việc người kết với người lý tưởng điều gần Vậy câu hỏi đặt làm để việc "ghép đôi" thực cách tốt Năm 1962, David Gale Lloyd Shapley nghiên cứu đưa thuật toán Gale - Shapley giải cho toán ghép đơi với độ phức tạp tính tốn O(n2) Nghiên cứu thu hút nhà nghiên cứu lĩnh vực khác toán học, kinh tế học, lý thuyết trò chơi, khoa học máy tính [4] Đến năm 1980, Roth có nỗ lực liên tục để sử dụng thuật toán nhằm tìm giải pháp thực tiễn giải vấn đề thực sống thường ngày Với ứng dụng thực tiễn xuất phát từ thuật toán giúp Roth Shapley đạt giải Nobel kinh tế vào năm 2012 Thuật toán Gale - Shapley ngắn gọn dễ thực thi Tuy nhiên thuật toán tối ưu cho phía, nghĩa tìm nghiệm tối ưu cho người đàn ông cho người phụ nữ Trong số trường hợp thực tế, việc tối ưu phía chấp nhận Ngồi ra, thuật tốn Gale - Shapley áp dụng cho tốn có số lượng nam nữ Tuy nhiên toán thực tế thường xuất trường hợp mà phía ghép cặp có số lượng khơng Từ hạn chế thuật toán Gale - Shapley tốn ghép đơi, việc mở rộng thuật tốn cho trường hợp số lượng nam nữ khác vấn đề cần thiết Vì vậy, tơi chọn đề tài “Thuật toán Gale - Shapley sửa đổi cho tốn nhân ổn định với số lượng nam nữ khác nhau” làm luận văn tốt nghiệp Luận văn tập trung tìm hiểu thuật tốn Gale - Shapley ứng dụng thuật toán toán nhân ổn định Từ luận văn nghiên cứu mở rộng thuật toán Gale - Shapley cho toán hôn nhân ổn định với số lượng nam nữ khác Đờng thời, vận dụng tốn nhân ổn định mở rộng cho tốn phân cơng giảng viên hướng dẫn sinh viên thực đề tài Mục tiêu nghiên cứu 2.1 Mục tiêu tổng quát Nghiên cứu tốn nhân ổn định với số lượng nam nữ nhau, khác nhau, thuật toán Gale - Shapley sửa đổi cho toán với số lượng nam, nữ khác nhau, chứng minh tính đắn nó, đưa ví dụ áp dụng cho trường hợp khác Thêm vào đó, luận văn sẽ trình bày mơ thuật tốn kết đạt sau cài đặt thuật toán 2.2 Mục tiêu cụ thể Luận văn tập trung vào mục tiêu sau: (i) Tìm hiểu thuật tốn Gale - Shapley tốn nhân ổn định; (ii) Mở rộng thuật tốn Gale - Shapley cho tốn nhân ổn định với số lượng nam nữ khác nhau; (iii) Vận dụng tốn nhân ổn định mở rộng cho tốn phân cơng giảng viên hướng dẫn sinh viên thực đề tài Đối tượng phạm vi nghiên cứu 3.1 Đối tượng nghiên cứu (a) Nghiên cứu lý thuyết Nghiên cứu tài liệu tốn nhân ổn định cơng bố nước; kết khảo sát có tính chất đánh giá nghiên cứu trước; tài liệu lập trình để thực thi thuật tốn (b) Nghiên cứu thực nghiệm Sử dụng ngơn ngữ lập trình để thực thi thuật tốn cho ví dụ ứng dụng thực tế tốn nhân ổn định 39 2.4 Đánh giá hiệu thuật toán Các thuật toán đề cập chương giải hiệu tốn nhân ổn định với trường hợp khác Việc ghép cặp sử dụng thuật tốn đảm bảo tờn cách ghép cặp N cô gái với N chàng trai cho lấy người có cảm tình Ở người có cảm tình với nhiều người khác giới Hơn áp dụng thuật tốn để giải cách ghép cặp ổn định luôn tồn tại, với đồ thị lưỡng phân thứ tự ưa thích Và tồn cách ghép đôi N cô gái với N chàng trai cho không xuất cặp ngoại tình Việc áp dụng thuật tốn Gale - Shapley chứng minh cách ghép đôi kết thuật tốn Gale Shapley, chàng trai ln lấy người có thứ hạng cao vùng khả thi họ, đồng thời cô gái lấy chàng trai có thứ hạng thấp vùng khả thi 2.5 Kết luận chương Chương trình bày thuật toán Gale - Shapley giải toán hôn nhân ổn định trường hợp nam, nữ nhau; nam, nữ khác Nội dung chương đề cập đến mở rộng thuật toán Gale - Shapley để giải tốn nhân ổn định ứng dụng giải tốn thực tế Nội dung chương xét ví dụ để làm rõ thuật toán Gale Shapley trường hợp số lượng nam nữ khác Chương sở quan trọng để vận dụng vào giải toán đề cập chương 40 Chương VẬN DỤNG BÀI TỐN HƠN NHÂN ỔN ĐỊNH CHO BÀI TỐN PHÂN CƠNG GIẢNG VIÊN HƯỚNG DẪN SINH VIÊN THỰC HIỆN ĐỀ TÀI Chương mô tả tốn phân cơng giảng viên hướng dẫn sinh viên thực đề tài dựa tốn nhân ổn định Việc phân công giảng viên hướng dẫn sinh viên việc làm thực nhiều trường đại học cao đẳng Chương cấu trúc sau: Mục 3.1 3.2 trình bày tốn Nội dung phân tích tốn trình bày Mục 3.3 Cài đặt thử nghiệm toán đề cập Mục 3.4 cuối phần nhận xét đánh giá, trình bày Mục 3.5 3.1 Giới thiệu Bài tốn phân cơng giảng viên hướng dẫn sinh viên thực đề tài toán thường gặp trường đại học Bài toán thường thực cách khoa đào tạo phân công trực tiếp giảng viên hướng dẫn sinh viên sinh viên xin xác nhận giảng viên sau đăng ký giảng viên hướng dẫn với khoa đào tạo Khi giảng viên bị hạn chế số lượng hướng dẫn sinh viên hướng giải khơng hiệu khó đáp ứng thỏa mãn đờng thời yêu cầu chọn sinh viên giảng viên chọn giảng viên sinh viên Vì vậy, dựa vào thuật tốn Gale - Shapley tìm hiểu mở rộng nó, áp dụng để tìm lời giải ổn định tốt cho toán đặt 3.2 Mơ tả tốn Bài tốn trở thành toán ghép cặp sinh viên giảng viên cho ghép đôi ổn định, thỏa mãn u cầu giống tốn nhân ổn 41 định đưa Trong sinh viên đề xuất danh sách giảng viên theo thứ tự ưu tiên ngược lại giảng viên đề xuất danh sách sinh viên theo thứ tự ưu tiên Cùng với giảng viên đưa số lượng tối đa sinh viên (chỉ tiêu) hướng dẫn Trong thực tế, việc giảng viên sinh viên đưa danh sách ưu tiên sẽ dựa vào tiêu chí khác Đề tài tập trung vào việc áp dụng thuật toán Gale - Shapley nên bỏ qua yếu tố mà giả sử có danh sách ưu tiên giảng viên, danh sách ưu tiên sinh viên 3.3 Phân tích tốn Trong tốn phân cơng giảng viên hướng dẫn sinh viên thực đề tài, giảng viên sẽ đề xuất danh sách sinh viên xếp theo thứ tự ưu tiên sinh viên đề xuất danh sách giảng viên theo thứ tự ưu tiên Như toán trở thành toán ghép cặp phần tử tập hợp T (Tập giảng viên) S (Tập sinh viên) khơng giao Tức tìm cặp ghép (giảng viên - sinh viên) cho cặp đôi ổn định 3.3.1 Áp dụng thuật toán đề xuất chương giải toán Đề xuất toán cho theo dạng: cho m giảng viên n sinh viên Mỗi giảng viên sẽ đề xuất hướng dẫn sinh viên theo thứ tự ưu tiên giảm dần từ 1, 2, …, n ngược lại sinh viên sẽ đưa danh sách giảng viên sẽ hướng dẫn theo thứ tự ưu tiên giảm dần từ 1, 2, …, m Sở thích người phải cố định trước thực q trình ghép cặp, khơng phát sinh thực thuật tốn Nếu khơng phải bắt buộc, sẽ không dẫn đến kết ổn định toán Ở đây, để đơn giản, ta giả sử tiêu giảng viên q = 42 3.3.2 Mô hình hố tốn dạng tốn nhân ổn định với số lượng nam nữ khác Bài tốn đề xuất mơ hình hóa dạng tốn nhân ổn định với số lượng nam nữ khác nhau: Input: Danh sách giảng viên, danh sách sinh viên, danh sách xếp theo thứ tự ưu tiên họ tiêu q Output: Những cặp đơi ổn định Thuật tốn Gale - shapley giải toán sau: Bước 1: Mỗi sinh viên gửi lời đề nghị tới giảng viên mà ưu tiên danh sách Mỗi giảng viên sẽ loại tất ngoại trừ người mà Giảng viên nói tạm thời chấp nhận thời điểm Bước 2: Những sinh viên bị loại tiếp tục gửi lời đề nghị tới giảng viên ưu tiên Giảng viên sẽ chấp nhận yêu cầu sinh viên nếu: - Giảng viên chưa lấy đủ tiêu - Giảng viên thích sinh viên người nằm danh sách - Ngược lại, Giảng viên sẽ loại sinh viên Bước 3: Tiếp tục sinh viên chọn giảng viên, bị từ chối tất giảng viên danh sách Thuật toán Gale - Shapley mở rộng giải cho tốn ghép đơi với độ phức tạp tính tốn O(m×n) Thật vậy, thuật tốn thực chuỗi đề nghị từ sinh viên, tức là, giảng 43 viên sẽ thực việc “trì hỗn-chấp nhận” cách thực thi thuật tốn Gale - Shapley gốc cho tốn nhân ổn định Mọi sinh viên đề nghị để mong muốn tìm giáo viên hướng dẫn Trong trường hợp tồi tất giảng viên đề nghị số lần thực thi thủ tục “trì hỗn-chấp nhận” m×n 3.3.3 Mô tả liệu thực nghiệm Để hiểu rõ tốn ta xét ví dụ sau: Ví dụ 3.1: Có sinh viên giảng viên tiêu giảng viên q = với danh sách ưu tiên cho Bảng 3.1 Bảng 3.1 Danh sách ưu tiên sinh viên (a) giảng viên (b) (a) (b) s1 t2 t1 t1 s1 s5 s4 s2 s3 s2 t1 t2 t2 s3 s4 s5 s2 s1 s3 t1 t2 s4 t1 t2 s5 t2 t1 Ban đầu, s1 gửi lời đề nghị đến t2 Do w2 chưa có gửi lời đề nghị nên t2 sẽ chấp nhận lời đề nghị s1, ta có cặp (t2, s1) - s2 gửi lời đề nghị đến t1 Do t1 chưa có gửi lời đề nghị nên t2 sẽ chấp nhận lời đề nghị s2, ta có cặp (t1, s2) - s3 gửi lời đề nghị đến t1, ta có cặp (t1, s3) t1 tiêu - s4 gửi lời đề nghị đến t1, ta có cặp (t1, s4) t1 tiêu - s5 gửi lời đề nghị đến t2, ta có cặp (t2, s5) t2 tiêu 44 Vậy sau vòng tất giảng viên nhận hướng dẫn sinh viên, ta có sau: {( t1, s2), (t1, s3), (t1, s4)}; {(t2, s1), (t2, s5)} Ta nhận rằng, có giảng viên mà tiêu người q=3 nên có sinh viên sẽ có giảng viên khơng đủ số sinh viên hướng dẫn tiêu đặt Và trường hợp ví dụ này, t2 người khơng lấy đủ tiêu Ví dụ 3.2: Có sinh viên, giảng viên tiêu giảng viên q = với danh sách ưu tiên người đề xuất Bảng 3.2 Bảng 3.2 Danh sách ưu tiên sinh viên (a) giảng viên (b) (a) (b) s1 t1 t2 t3 t1 s1 s2 s3 s4 s5 s6 s7 s2 t2 t1 t3 t2 s2 s4 s6 s1 s3 s7 s5 s3 t1 t3 t2 t3 s5 s3 s7 s2 s1 s4 s6 s4 t3 t2 t1 s5 t2 t3 t1 s6 t3 t1 t2 s7 t1 t3 t2 Theo thuật toán Gale - Shapley mở rộng, ta thực sau: - s1 gửi lời đề nghị đến t1 Do t1 chưa có gửi lời đề nghị nên t1 sẽ nhận lời đề nghị từ s1, ta có cặp (t1, s1) - s2 gửi lời đề nghị đến t2 Do t2 chưa có gửi lời đề nghị nên t2 sẽ nhận lời đề nghị từ s2, ta có cặp (t2, s2) - s3 gửi lời đề nghị đến t1, ta có cặp (t1, s3) t1 cịn tiêu 45 - s4 gửi lời đề nghị đến t3 Do t3 chưa có gửi lời đề nghị nên t3 sẽ nhận lời đề nghị từ s4, ta có cặp (t3, s4) - s5 gửi lời đề nghị đến t2, ta có cặp (t2, s5) t2 cịn tiêu - s6 gửi lời đề nghị đến t3, ta có cặp (t3, s6) t3 cịn tiêu - s7 gửi lời đề nghị đến t1 Lúc t1 chọn với s1 s3, ta so sánh mức độ ưu tiên s1, s3 s7 s7 người khơng ưu tiên Vì vậy, s7 người bị từ chối - s7 gửi lời đề nghị đến giảng viên ưu tiên t3 Lúc t3 chọn s4 s6, ta so sánh mức độ ưu tiên s4, s6 s7 s6 người khơng ưu tiên Vì vậy, t3 sẽ từ chối s6 để nhận lời đề nghị từ s7, ta có cặp (t3, s7) - s6 bị t3 từ chối nên sẽ gửi lời đề nghị đến người ưu tiên t1 Lúc t1 chọn s1 s3, ta so sánh mức độ ưu tiên s1, s3 s6 s6 người khơng ưu tiên Vì vậy, s6 người bị từ chối - s6 tiếp tục gửi lời đề nghị đến t2 Lúc t2 chọn s2 s5, ta so sánh mức độ ưu tiên s2, s5 s6 s5 người khơng ưu tiên Vì vậy, t2 sẽ từ chối s5 để nhận lời đề nghị từ s6, ta có cặp (t2, s6) - s5 bị t2 từ chối nên sẽ gửi lời đề nghị đến người ưu tiên t3 Lúc t3 chọn s4 s7, ta so sánh mức độ ưu tiên s4, s7 s5 s4 người khơng ưu tiên Vì vậy, t3 sẽ từ chối s4 để nhận lời đề nghị từ s5, ta có cặp (t3, s5) - s4 bị từ chối nên sẽ tìm đến người ưu tiên t2 Lúc t2 chọn s2 s6, ta so sánh mức độ ưu tiên s2, s6 s4 s6 người khơng ưu tiên nhất.Vì vậy, t2 sẽ từ chối s6 để nhận lời đề nghị từ s4, ta có cặp (t2, s4) 46 - s6 bị t2 từ chối, người cuối danh sách ưu tiên, sinh viên người khơng chọn tất người giảng viên mà sinh viên gửi lời đề nghị từ chối Vậy sau thuật tốn kết thúc ta có kết sau:{(t1, s1), (t1,, s3)}, {(t2, s2), (t2, s4)}, {(t3, s5), (t3, s7)} s6 người không chọn Phần chương trình bày việc thực thi tốn Gale Shapley mở rộng cho ứng dụng ví dụ kết chương trình 3.4 Cài đặt thuật tốn Trong phần trước, sinh viên s6 khơng tìm người hướng dẫn đồ án Điều thường không cho phép việc đào tạo trường học Do đó, với ứng dụng phân cơng giảng viên hướng dẫn giả thiết số lượng tiêu giảng viên đáp ứng đủ số lượng sinh viên đăng ký Một vấn đề khác nữa, sẽ thực tế số tiêu giảng viên khác không trình bày ví dụ Thuật tốn Gale - Shapley dựa ý tưởng gồm dãy đề xuất chấp chận từ chối Tại số người nữ đính hơn, nhận đề xuất người nam đó, người có độ ưu tiên thấp đối tác đính người nữ sẽ từ chối Điều dẫn đến quan sát rằng, người nữ chấp nhận đề nghị từ người nam tất người danh sách ưu tiên người nữ mà nằm sau người nam vừa đề nghị sẽ khơng có hội đính với Do đó, người nữ xố hết người nam danh sách ưu tiên Tương tự, người nam xố khỏi danh sách Với việc tổng qt hố tính chất vừa đề cập, thuật tốn cải tiến cho tốn nhân ổn định với số lượng nam nữ khác nhau, ghép cặp môt - nhiều, tiêu kết hôn khác cho 47 function LectStudMatching { M := ∅; while (một sinh viên si chưa gán) { lj := giảng viên danh sách ưu tiên si; Tạo cặp (si,lj); Đưa (si,lj) vào M; if (lj tải) { sk := học sinh có độ ưu tiên bé M(lj); Loại (sk,lj) khỏi M; } if (lj nhận đủ số sinh viên) { sk := học sinh có độ ưu tiên bé M(lj); for each (sinh viên sl đứng trước sk danh sách hj) Xố cặp (sl,lj) khỏi M; } } Nhờ có việc xoá cặp (sl, lj) thuật toán trên, ta loại bớt nhiều cặp giảng viên, sinh viên chắn khơng có ghép cặp ổn định Điều giúp việc tính tốn thuật toán trở nên hiệu hơn, ta bớt nhiều phép tính Đây cải tiến đáng kể thuật toán Gale - Shapley cho việc giải tốn nhân ổn định tổng qt Ứng dụng xây dựng với thuật tốn mới, cho phép sinh viên đưa danh sách ưu tiên với tất giảng viên sẵn sàng hướng dẫn sinh viên Tương tự, tất giảng viên có danh sách ưu tiên với tất sinh viên tìm giảng viên hướng dẫn đề tài Mỗi giảng viên cần đưa số 48 lượng tối đa sinh viên nhận hướng dẫn, gọi tiêu Chỉ tiêu giảng viên khác Với giả thiết việc đáp ứng đủ nhu cầu hướng dẫn sinh viên nêu trên, tổng số tiêu giảng viên phải lớn tổng số sinh viên tìm giảng viên hướng dẫn Chương trình viết ngơn ngữ C, biên dịch chạy máy Laptop Toshiba Intel Core i5 CPU M460 @2.53GHz 2.53GHz Dữ liệu vào cho dạng tệp văn với cấu trúc mô tả - Tệp chứa danh sách ưu tiên giảng viên gồm hàng, mà hàng mô tả danh sách ưu tiên giảng viên: Chỉ tiêu, tên: danh sách thứ tự ưu tiên chọn sinh viên Ví dụ 3.2(a): 2, T.Nam: Hồ, Thịnh, Linh, Hồi 2, C.Bình: Hồ, Linh, Thịnh, Hồi 1, C.Thắm: Thịnh, Hoà, Hoài, Linh Với danh sách cho trên, T.Nam, C.Bình, C.Thắm có số lượng tiêu hướng dẫn 2, - Tệp chứa danh sách ưu tiên sinh viên gồm hàng, hàng mô tả danh sách ưu tiên sinh viên: Tên: danh sách thứ tự ưu tiên chọn giảng viên Ví dụ 3.2(b): Hồ: T.Nam, C.Thắm, C.Bình Linh: C.Bình, T.Nam, C.Thắm Thịnh:C.Thắm, T.Nam, C.Bình Hồi: C.Bình, T.Nam, C.Thắm Chương trình chạy với liệu Ví dụ 3.2(a), 3.2(b) cho kết C.Thắm: Thịnh T.Nam: Hồ 49 C.Bình: Hồi, Linh Chúng ta thấy rằng, T.Nam có nhu cầu hướng dẫn tổng số sinh viên đăng ký, với ưu tiên sinh viên thầy hướng dẫn sinh viên Hoà (tức khơng lấy hết tiêu đề xuất) Trong đó, danh sách Thịnh mà C.Thắm xếp cuối phân cơng hướng dẫn chương trình T.Nam sẽ hướng dẫn sinh viên C.Thắm sẽ không hướng dẫn sinh viên cả, kết C.Thắm: T.Nam: Thịnh, Hồ C.Bình: Hồi, Linh Với tập liệu kích thước lớn hơn, hình thể liệu đầu vào kết cho dạng tệp văn Hình 3.1 Tệp danh sách ưu tiên tiêu giảng viên 50 Hình 3.2 Tệp danh sách ưu tiên sinh viên Hình 3.2 Kết phân cơng hướng dẫn cho chương trình 51 3.5 Nhận xét đánh giá Nhìn vào kết tốn, thấy áp dụng thuật toán Gale - Shapley mở rộng cho toán này, sẽ có sinh viên khơng chọn hướng dẫn đề tài Tuy nhiên, thực tế tất sinh viên tham gia làm đề tài Thuật tốn Gale - Shapley[4] tìm nghiệm tối ưu cho giảng viên tối ưu cho sinh viên Vì người không chọn cần xử lý thêm để sinh viên tham gia làm đề tài, điều có nghĩa phải tìm nghiệm tối ưu theo (giảng viên - sinh viên) 52 KẾT LUẬN Sau thời gian thực luận văn, bên cạnh cố gắng thân nhờ giúp đỡ tận tình thầy giáo hướng dẫn Luận văn thực theo nhiệm vụ giao thời hạn theo yêu cầu Bản thân tự đánh giá thu số kết sau: - Tìm hiểu nắm rõ thuật tốn tốn nhân ổn định Gale Shapley - Tìm hiểu ứng dụng mà thuật tốn tốn nhân ổn định đem lại, thấy tác dụng thuật toán áp dụng thực tế sống - Mở rộng tốn nhân ổn định số lượng phần tử tập không (số lượng nam số lượng nữ) đưa tiêu đưa toán toán đa nhân - Đề xuất thuật tốn Gale - Shapley mở rộng cho tốn nhân ổn định mở rộng Chứng minh tính đắn thuật tốn - Áp dụng thuật toán Gale - Shapley mở rộng cho tốn phân cơng giảng viên hướng dẫn sinh viên thực đề tài Hạn chế đề tài: - Thuật toán Gale - Shapley mở rộng chưa áp dụng cho tốn nhân ổn định mở rộng trường hợp nhiều-nhiều - Chưa nghiên cứu sâu ứng dụng khác tốn nhân ổn định Hướng khắc phục phát triển đề tài: - Hồn thiện ứng dụng phân cơng giảng viên hướng dẫn sinh viên thực đề tài - Nghiên cứu mở rộng thuật toán Gale - Shapley cho toán hôn nhân ổn định mở rộng trường hợp nhiều - nhiều - Kết có đề tài đóng góp vào việc tiếp tục nghiên cứu sâu toán biến thể chúng, việc áp dụng chúng cho số toán thực tế 53 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Bách khoa toàn thư mở Wikipedia, https://vi.wikipedia.org [2] Đặng Trường Sơn, Lê Văn Vinh, Giáo trình lý thuyết đồ thị, NXB Đại học Quốc gia TP.Hờ Chí Minh, 2012 [3] Vài nét tốn nhân bền vững, https://thcmn.wordpress.com, 2016 Tiếng Anh [4] D Gale and L S Shapley, College Admissions and the Stability of Marriage, American Mathematical Monthly, Vol 69, pp 9-15, 1962 [5] D.Gusfield, R W Irving, The Stable Marriage Problem Structure and Algorithms, the MIT press, 2003 [6] K Iwama, S Miyazaki, A Survey of the Stable Marriage Problem and Its Variants, International Conference on Informatics Education and Research for Knowledge-Circulating Society, IEEE, 2010 ... gán ổn định toán nhân ổn định; Bài tốn nhân ổn định với số lượng nam nữ giống nhau; Bài toán hôn nhân ổn định với số lượng nam nữ khác số toán ứng dụng thực tế như: toán cho nhận ghép tạng; Bài. .. khác - Mở rộng thuật toán Gale - Shapley cho tốn nhân ổn định với số lượng nam nữ khác - Chứng minh tính đắn thuật toán Gale - Shapley mở rộng - Áp dụng thuật toán Gale - Shapley mở rộng cho tốn... Chương trình bày nhân nhân ổn định; Tiêu chuẩn phép gán; Phép gán ổn định tốn nhân ổn định; Bài tốn nhân ổn định với số lượng nam nữ giống nhau; Bài tốn nhân ổn định với số lượng nam nữ khác Nội dung

Ngày đăng: 10/02/2021, 21:57

Tài liệu cùng người dùng

Tài liệu liên quan