Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 38 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
38
Dung lượng
1,02 MB
Nội dung
TRƯỜNG ĐẠI HỌC VINH KHOA CÔNG NGHỆ THÔNG TIN NGUYỄN THỊ LAM BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Tên đồ án: THUẬT TOÁN GALE-SHAPLEY CHO BÀI TỐN HƠN NHÂN BỀN VỮNG VÀ MỘT MỞ RỘNG CỦA NÓ Nghệ An, tháng 01 năm 2016 Đồ án tốt nghiệp Đại học TRƯỜNG ĐẠI HỌC VINH KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Tên đồ án: THUẬT TỐN GALE-SHAPLEY CHO BÀI TỐN HƠN NHÂN BỀN VỮNG VÀ MỘT MỞ RỘNG CỦA NÓ Sinh viên thực hiện: Nguyễn Thị Lam – Mã sinh viên: 1151073718 Lớp:52K2 - CNTT Giáo viên hướng dẫn: TS Lê Hồng Trang Nghệ An, tháng 01 năm 2016 Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học LỜI CẢM ƠN Trong lời báo cáo đồ án tố nghiệp “Thuật toán Gale-Shapley cho toán nhân bền vững mở rộng nó” này, em muốn gửi lời cảm ơn biết ơn chân thành tới tất người hỗ trợ, giúp đỡ em trình thực đồ án Trước hết em xin cảm ơn đến Khoa Công nghệ Thông tin thầy cô giáo khoa tạo điều kiện, hỗ trợ, giảng dạy giúp đỡ em trình học tập làm đồ án tốt nghiệp, đặc biệt TS Lê Hồng Trang hướng dẫn, nhận xét, giúp đỡ để em hồn thành đề tài đồ án Nhân đây, em 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 kiến thức hạn chế với kinh nghiệm chưa có nên khơng thể tránh khỏi thiếu sót.Vì em mong nhận ý kiến đóng góp bổ sung thầy cô giáo bạn để đề tài em hoàn thiện Em xin chân thành cảm ơn ! Vinh, ngày 08 tháng 01 năm 2016 Sinh viên Nguyễn Thị Lam Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học LỜI MỞ ĐẦU Bài toán ghép cặp (stable matching) toán tiếng việc ghép cặp người đàn ông người phụ nữ để đạt kết hợp “ổn định” Mỗi người thể thứ tự ưu tiên chặt chẽ thành viên khác phái Mục đích để ghép người đàn ông người phụ nữ cho khơng có hai người khác giới thích đối tác họ Bài toán nhân bền vững, phiên tốn ghép cặp tốn có nhiều ứng dụng thực tế, ví dụ phân cơng bác sĩ thường trú cho bệnh viện, thủy thủ cho tàu, học sinh tiểu học đến trường trung học, giao dịch thị trường (Xem [2, 4] Bài toán giới thiệu đưa với Thuật toán Gale - Shapley vào năm 1962 báo Gale Shapley, 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 (Xem [3]) Đến năm 1980, Roth có nỗ lực liên tục để sử dụng thuật tốn tìm giải pháp thực tiễn nhằm 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 tốn giúp Roth Shapley đạt giải Nobel kinh tế vào năm 2012 Thuật toán thuật tốn tuyến tính nên ưu điểm chạy nhanh với độ phức tạp thuật toán O(n) n kích thước liệu đầu vào Tuy nhiên, nhược điểm 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ữ mà Trong đề tài đồ án tốt nghiệp em lần này, em tìm hiểu “Bài tốn nhân bền vững” thuật tốn Gale - Shapley ứng dụng mà thuật toán tốn nhân bền vững đem lại Đồng thời, đề xuất mở rộng ví dụ ứng dụng từ thuật toán Nội dung toán thuật toán Gale - Shapley từ báo hai tác giả tạp chí “ American Mathematical Monthly” [1] Nội dung đồ án tổ chức dạng chương sau: Chương 1: Giới thiệu toán nhân bền vững Chương 2: Tìm hiểu thuật tốn Gale - Shapley đề xuất mở rộng Chương 3: Ví dụ ứng dụng cho thuật tốn Gale - Shapley mở rộng Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học MỤC LỤC LỜI CẢM ƠN LỜI MỞ ĐẦU Chƣơng 1: GIỚI THIỆU VỀ BÀI TỐN HƠN NHÂN BỀN VỮNG (The Stable Marriage Problem) 1.1 Tuyển sinh đại học vấn đề hôn nhân bền vững 1.1.1 Giới thiệu vấn đề tuyển sinh đại học 1.1.2 Tiêu chuẩn phép gán 1.2 Phép gán ổn định tốn nhân bền vững Chƣơng 2: TÌM HIỂU THUẬT TỐN GALE – SHAPLEY VÀ ĐỀ XUẤT MỘT MỞ RỘNG CỦA NÓ 11 2.1 Thuật toán Gale – Shapley 11 2.1.1 Phát biểu toán: 11 2.1.2 Thuật toán 11 2.2 Bài tốn nhân bền vững với số lƣợng ngƣời đàn ông phụ nữ khác 15 2.4 Một mở rộng thuật toán Gale - Shapley 19 2.5 Thuật toán Gale – Shapley mở rộng 24 2.6 Thực thi thuật toán 24 Chƣơng 3: VÍ DỤ ỨNG DỤNG 34 BÀI TOÁN PHÂN CÔNG SINH VIÊN SƢ PHẠM ĐẠI HỌC VINH THỰC TẬP TẠI CÁC TRƢỜNG THPT 34 3.1 Giới thiệu 34 3.2 Mơ tả tốn 34 3.3 Ví dụ áp dụng cho tốn 35 KẾT LUẬN 37 TÀI LIỆU THAM KHẢO 38 Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học Chƣơng 1: GIỚI THIỆU VỀ BÀI TỐN HƠN NHÂN BỀN VỮNG (The Stable Marriage Problem) 1.1 Tuyển sinh đại học vấn đề hôn nhân bền vững 1.1.1 Giới thiệu vấn đề tuyển sinh đại học Vấn đề quan tâm liên quan đến tình tiêu biểu sau: Một trường đại học có hạn ngạch/chỉ tiêu q ứng cử viên nhận, số n ứng cử viên tham gia xét tuyển (mỗi ứng cử viên chấp nhận đề nghị nhập học) Đánh giá cách định tính, văn phịng tuyển sinh phải định đưa ứng cử viên đủ tiêu chuẩn Việc xác định có người chấp nhận yêu cầu theo đốn Chúng ta khơng thể biết ứng cử viên đăng ký trường nào, đứng vị trí thứ trường mà đăng ký, chí khơng thể biết trường khác có chấp nhận hay không Kết điều không chắn trường đại học mong đợi kết chất lượng mong muốn tiêu đưa Thông thường, thủ tục tuyển sinh đưa vấn đề cho ứng cử viên trường đại học Một ứng cử viên yêu cầu ghi danh sách nộp đơn tất trường tham gia ứng cử theo thứ tự ưu tiên giảm Có lẽ với lý này, cho trường đại học lựa chọn thứ 3, điều khiến bị tổn thương với hội chấp nhận vào trường Một việc làm tỉ mỉ đưa “danh sách chờ” để ứng cử viên thơng báo khơng chấp nhận có hội sau cịn chỗ trống Đó vấn đề Cho ứng cử viên chấp nhận trường đại học đặt danh sách chờ trường mà ưu tiên Cho khó khăn mơ tả tránh Chúng ta mơ tả thủ tục giao nộp đơn vào đại học mà nên thỏa đáng cho hai nhóm, loại bỏ tất bất ổn giả sử có đủ ứng cử viên, giao cho trường đại học xác hạn ngạch/chỉ tiêu 1.1.2 Tiêu chuẩn phép gán Danh sách n ứng cử viên gán cho m trườn đại học, qi tiêu trường đại học thứ i Mỗi ứng cử viên đưa danh sách trường đại học theo mức độ ưu tiên giảm dần, bỏ qua trường mà người không lựa chọn hoàn cảnh Để thuận tiện, giả sử khơng có ràng buộc nào, Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học ứng cử viên không quan tâm đến hai hay nhiều trường cần phải liệt kê chúng theo trật tự Mỗi trường đại học xếp thứ hạng ứng cử viên mong muốn vào trường theo danh sách có thứ tự ưu tiên Các ý tưởng quan trọng nói đến sau khẳng định phép gán định cuối - mong muốn cách rõ ràng tình mơ tả định nghĩa sau không nên xảy Định nghĩa 1.1 [1] Một phép gán cho ứng cử viên tới trường đại học gọi khơng ổn định có ứng cử viên α β gán cho trường đại học A B tương ứng β thích A B A thích β α Cho tình miêu tả xảy ra, ứng cử viên β nên trường A trường mà thích hơn, A đáp ứng việc chấp nhận β, α trường A nhận đủ tiêu Cả A B cân nhắc việc thay đổi Do đó, phép gán ban đầu khơng ổn định với nghĩa khơng dễ dàng việc trường đại học ứng cử viên làm việc với để hai có lợi Yêu cầu việc chuyển nhượng khơng phải biểu khơng ổn định, điều đặt câu hỏi toán học: Sẽ ln ln tìm thấy phân cơng hay không? Một câu trả lời khẳng định cho câu hỏi đưa phần chứng khó khăn, kết dường khơng hồn tồn rõ ràng số ví dụ điều Giả sử thời điểm phép gán ổn định tồn tại, phải định số có nhiều giải pháp ổn định ưa thích Bây quay trở lại nguyên lý triết học đề cập trước cung cấp cho cơng thức xác Định nghĩa 1.2.[1] Một phép gán gọi tối ưu với ứng cử viên nh t c ng có phép gán tốt b t kỳ phép gán ổn định khác Thậm chí việc cơng nhận tồn phép gán ổn định xa vời so với phép gán tối ưu Tuy nhiên, điều thấy là, phép gán tối ưu, tồn tại, Do đó, có phép gán, phép gán tốt cịn lại, phép gán tối ưu 1.2 Phép gán ổn định tốn nhân bền vững Trong việc cố gắng giải câu hỏi việc tồn phép gán ổn định dẫn đến việc xem xét trường hợp đặc biệt Trong trường hợp này, số lượng ứng cử viên trường đại học tất tiêu Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học thống Dĩ nhiên tình khơng tự nhiên tốn tuyển sinh đại học, có câu chuyện khác mà khởi đầu dễ dàng Một cộng đồng định bao gồm n người đàn ông n người phụ nữ Mỗi người đưa danh sách xếp hạng với người khác giới theo ưu tiên cho đối tác hôn nhân Vấn đề đặt là: Ghép đôi người lại với cho hôn nhân bền vững, tức không tồn cặp mà người chồng bên cặp lại thích người vợ bên cặp vợ mình, đồng thời người vợ bên cặp lại thích người chồng bên cặp chồng Câu hỏi: Với danh sách tìm ổn định hay không? Để trả lời câu hỏi ta xét xem ví dụ đây: Ví dụ 1.1: Cho ma trận xếp thự tự ưu tiên Hình 1.1 người đàn ơng α, β γ người phụ A, B, C Hình 1.1 Ma trận xếp thứ tự ưu tiên người đàn ông người phụ nữ Chỉ số cặp ma trận đưa thứ hạng người phụ nữ xếp người đàn ông, số thứ thứ hạng người đàn ông xếp nhữngngười phụ nữ Trong α chọn A đầu tiên, B thứ C thứ A chọn β đầu tiên,γ thứ thứ α …vv Có trường hợp xảy ra, có trường hợp ổn định Một số trường hợp người đàn ông lựa chọn Lúc này, α kết hôn với A, β kết hôn với B, γ kết với C Khi cho dù người phụ nữ đưa lựa chọn cuối cùng, ghép cặp ổn định Một trường hợp khác người phụ nữ đưa lựa chọn đầu tiên, lúc cặp ghép đôi α với C, β với A, γ với B Trường hợp thứ lựa chọn thứ người đàn ơng phụ nữ ta có α kết hôn với B, β kết hôn với C, γ kết với A Người đọc nhận trường hợp cịn lại khơng ổn định Ví dụ 1.2: Cho ma trận xếp Hình 1.2 Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học Hình 1.2 Ma trận xếp thứ tự ưu tiên người đàn ông người phụ nữ Sẽ có trường hợp ổn định đường tròn ma trận Ta thấy tình khơng có lựa chọn người đàn ông hay phụ nữ đạt ổn định Ví dụ 1.3: Một vấn đề tương tự vấn đề nhân “vấn đề tìm bạn phịng” Một số chàng trai chí cịn chia thành cặp bạn phòng Việc tạo cặp gọi ổn định khơng có chàng trai khơng phịng mà lại người thực muốn với Một ví dụ đơn giản cho thấy trường hợp tồn trường hợp không ổn định Cụ thể là, xem xét chàng trai α, β, γ δ α chọn β đầu tiên, β chọn γ đầu tiên, γ chọn α đầu tiên, α, β, γ tất chọn δ cuối Sau sở thích δ xảy ghép cặp không ổn định, cho phải δ muốn chuyển Định lý 1.1.[1] Luôn tồn hôn nhân ổn định Chúng ta chứng minh tồn cách cho lặp lại thủ tục để thực tìm thấy hôn nhân ổn định Thủ tục lặp thuật tốn Gale - Shapley mà thảo luận kỹ chương Định lý 1.2.[1] Mọi ứng cử viên nh t c ng đưa phép gán cho thủ tục hoãn ch p nhận anh y b t kỳ phép gán ổn định khác Chứng minh: Chúng ta gọi trường “có thể” cho ứng cử viên cụ thể β có phép gán ổn định gửi tới anh ta.Việc chứng minh mở đầu sau: Giả sử có đến thời điểm định thủ tục khơng có ứng cử viên chuyển từ trường đại học mà phù hợp với Tại thời điểm cho trường đại học A, sau nhận ứng dụng từ tiêu đầy đủ ứng viên đủ điều kiện tốt β1, βq bác bỏ đơn α Chúng ta phải thấy A α Chúng ta biết βi thích đại học A tất trường đại học khác, ngoại trừ trường trước từ chối anh ta, (theo giả thiết) khơng thể chấp nhận Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT Đồ án tốt nghiệp Đại học Xem xét phép gán giả thuyết α gửi đến A người khác đến trường đại học phù hợp cho họ Ít βi phải trường đại học khác mong muốn so với A Nhưng xếp khơng ổn định, βi A làm đảo lộn cho lợi ích hai □ Vậy chương này, tìm hiểu tính tiêu biểu tuyển sinh đại học nội dung tốn nhân bền vững Trong chương đồ án, em xin giới thiệu Thuật toán Gale – Shapley đưa mở rộng cho thuật toán Nguyễn Thị Lam - Lớp 52K2 - Khoa CNTT 10 Đồ án tốt nghiệp Đại học 2.5 Thuật toán Gale - Shapley mở rộng Thuật toán mở rộng dựa thuật tốn Gale - Shapley trình bày Phần 2.1 Tuy nhiên, liệu đầu vào lúc số lượng người đàn ơng người phụ nữ mà cịn có tiêu số lượng chồng mà người phụ nữ kết Trước thực thuật tốn, người đàn ơng người phụ nữ đưa danh sách thứ tự ưu tiên 1, 2… n Bƣớc 1: Mỗi người đàn ông gửi lời đề nghị tới người phụ nữ mà ưu tiên danh sách Mỗi người phụ nữ loại tất ngoại trừ người mà nói tạm thời chấp nhận thời điểm Bƣớc 2: Những người đàn ông bị loại tiếp tục gửi lời đề nghị tới người phụ nữ ưu tiên Người phụ nữ chấp nhận yêu cầu người đàn ông nếu: - Cô chưa lấy đủ tiêu - Cơ thích anh người nằm danh sách hứa hôn Ngược lại, cô loại anh Bƣớc 3: Tiếp tục người đàn ông kết hôn, bị từ chối tất người phụ nữ danh sách Khi thuật toán kết thúc, ta có ghép đơi ổn định người đàn ông người phụ nữ 2.6 Thực thi thuật tốn Các thuật tốn trình bày Phần 2.1 Phần 2.5 thực ngôn ngữ Java môi trường NetBeans, chạy máy tính laptop ASUS Intel Core i5 - 4210U, up to 2.7Hz Các phương thức viết lớp khác nhau, trong lớp Men, phương thức để người đàn ông gửi lời đề nghị theo thứ tự ưu tiên viết sau: public boolean propose() { for(int i=0;i