Tải bản đầy đủ (.pdf) (40 trang)

Bài toán hôn nhân bền vững (trình chiếu)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (516.77 KB, 40 trang )

1

KHOA TỐN - TIN HỌC
BÀI TỐN HƠN NHÂN BỀN VỮNG

.

Khoa Toán - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.


.

.
.

.

.

.

.

1 / 40

.


1

LỜI MỞ ĐẦU

2

THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

3

GHÉP ĐÔI VỚI THÔNG TIN KHÔNG ĐẦY ĐỦ


4

ỨNG DỤNG 1: BÀI TOÁN TUYỂN SINH ĐẠI HỌC Ở VIỆT NAM

5

ỨNG DỤNG 2: THỊ TRƯỜNG TUYỂN DỤNG BÁC SĨ

6

ỨNG DỤNG 3: BÀI TỐN GHÉP THẬN (GHÉP NỘI TẠNG)

7

LẬP TRÌNH CHO BÀI TỐN HƠN NHÂN BỀN VỮNG
.

Khoa Tốn - Tin học

.

.

.

.

.

. . . .

. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

2 / 40

.


1. LỜI MỞ ĐẦU


1.1 Lịch sử hình thành và phát triển
- Năm 1962, David Gale và Shapley nhận thấy sự tương đồng giữa việc tuyển
sinh đại học và thị trường hơn nhân.
- Thuật tốn hơn nhân bền vững với mục đích là ghép đơi một số lượng nam, nữ
bằng nhau sao cho họ tìm được người bạn tình hợp lý nhất.
- Roth đã ứng dụng thực tiễn thuật toán vào những lịch vực khác: tuyển dụng bác
sĩ, tuyển sinh đại học, bài toán hiến tạng. Năm 1984, Roth viết chương trình lựa
chọn bác sĩ, là ví dụ về thuật tốn "chấp nhận trì hỗn" của Gale - Shapley.

.

Khoa Tốn - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .


. . . .
. . . .

.
.

.

.
.

.

.

.

.

3 / 40

.


1. LỜI MỞ ĐẦU

1.2 Động lực phát triển bài toán
- Giả sử có 10.000 sinh viên đầu vào và có 10 trường đại học, mỗi trường tuyển
1.000 sinh viên. Mỗi sinh viên lại có trình độ, sở thích của các sinh viên này đối
với các trường đại học cũng khác nhau. Như thế, giả sử một trường đại học bất kỳ

nhận được 2.000 hồ sơ dự tuyển, thì họ phải loại đi bao nhiêu và giữ lại bao nhiêu
hồ sơ khi biết rằng nhiều sinh viên trúng tuyển không tham gia học ở trường đó vì
họ được nhận vào trường khác mà họ thích hơn?
- Trong hơn nhân, giả sử số đàn ông và phụ nữ đến tuổi kết hôn nhưng cịn độc
thân bằng nhau. Mỗi người sẽ có những tiêu chuẩn riêng, rõ ràng khơng thể có
chuyện một người đàn ông nào cũng được ghép với người phụ nữ tuyệt vời nhất
trên thế gian và ngược lại.
.

Khoa Toán - Tin học

.

.

.

.

.

. . . .

. . . .

. . . .

. . . .

. . . .


. . . .

.

.

.

.

.

.

.

.

.

4 / 40

.


1. LỜI MỞ ĐẦU

1.3 Vấn đề của bài tốn hơn nhân bền vững
Trong một cộng đồng nhất định bao gồm n người đàn ông và m người phụ nữ.

Mỗi người xếp hạng những người trong giới đối lập với họ theo một thứ tự ưu tiên
nhất định để chọn người phù hợp để kết hơn. Chúng ta tìm kiếm cách phù hợp để
có thể tạo nên hơn nhân cho tất cả các thành viên trong cộng đồng người đó. Theo
như định nghĩa trước, chúng ta gọi một tập những hôn nhân khơng bền vững nếu
có một người đàn ơng và một người phụ nữ không kết hôn với nhau mặc dù họ rất
thích nhau. Câu hỏi: Với bất kỳ tiêu chí ưu tiên đưa ra, liệu có thể tìm được một
tập hơn nhân bền vững hay khơng?
.

Khoa Tốn - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .


.
.

.

.
.

.

.

.

.

5 / 40

.


1. LỜI MỞ ĐẦU

1.4 Sự xuất hiện của ngành nghiên cứu mới
- Gale và Shapley đã đặt viên gạch đầu tiên cho một ngành nghiên cứu mới là lý
thuyết gán ghép (matching theory) trong kinh tế học. Lý thuyết này hiện nay được
ứng dụng rộng rãi trong các ngành nghiên cứu khác của kinh tế học, lý thuyết về
đấu thầu, lý thuyết về tiền tệ, và là một cột trụ của lý thuyết trò chơi hợp tác.
- Một trong những người tiên phong phát triển lý thuyết của Gale - Shapley là
Alvin Roth, ơng đã ứng dụng thuật tốn này trong vấn đề tuyển bác sĩ giỏi cho các

bệnh viện ở Mỹ, vấn đề hiến tạng.
- Cống hiến của Gale - Shapley có nhiều ảnh hưởng tới lý thuyết cũng như trong
đời sống.
.

Khoa Toán - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.


.
.

.

.

.

.

6 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.1 Các định nghĩa
Cho tập X = (x[1], x[2], ..., x[n]) và Y = y[1], y[2], ..., y[n]) . Mỗi phần tử của
X có thể ghép với một số phần tử của Y. Bài tốn ghép đơi với thơng tin đầy đủ là
bài tốn ghép đơi với đầy đủ thơng tin các phần tử của X và Y.

.

Khoa Toán - Tin học

.


.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.


.

7 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

Định nghĩa 1: (Ghép đôi)
Cho hai tập rời nhau X và Y . Một phép gán :
µ : X ∪ Y → X ∪ Y ∪ {∅}

(1)

là một phép ghép một đối tượng trong một tập cho một hoặc nhiều đối tượng
trong một tập khác hoặc một "đối tượng rỗng" . Nếu một đối tượng được ghép đôi
với một "đối tượng rỗng" , chúng ta nói các đối tượng khơng ghép đơi được .

.

Khoa Tốn - Tin học

.

.

.


.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

8 / 40


.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

Định nghĩa 2: (Tính hợp lý riêng)
Một phép ghép µ là hợp lý riêng nếu không tồn tại trường hợp : đối tượng i đã
được ghép đơi với µ(i) nhưng đối tượng này lại khơng thỏa mãn với µ(i).

.

Khoa Tốn - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .


. . . .
. . . .

.
.

.

.
.

.

.

.

.

9 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

Định nghĩa 3: (Ghép cặp ổn định)
Một phép ghép µ là ổn định nếu và chỉ nếu nó là hợp lý riêng và không tồn tại một
đối tượng i, mà với µ(i) ̸= j nhưng i thích j hơn µ(i) và j cũng thích i hơn µ(i).


Định nghĩa 4: (Ghép cặp tối ưu)
Một phép ghép cặp ổn định là tối ưu nếu tất cả các đối tượng được ghép đều tốt
hơn so với bất kì phép ghép cặp ổn định khác.

.

Khoa Toán - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.


.

.
.

.

.

.

.

10 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.2 Các đặc trưng tiêu biểu của bài toán ghép cặp
1

Muốn kết hơn người thích kết hơn với họ. Tập có thứ tự về tiêu chuẩn lựa
chọn của mỗi người có thể không rõ ràng.

2

Thay đổi tâm lý, cảm xúc là không thể tránh khỏi, dẫn đến sự thay đổi về tập
có thứ tự về tiêu chuẩn của mỗi người.


3

Sẽ có những người được yêu thích hơn, người này sẽ chỉ thích nhiều nhất
một người. Vì vậy tối đa sẽ có một người đạt được lựa chọn u thích nhất
của mình.
.

Khoa Toán - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.

.

.

.
.

.

.

.

.

11 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.3 Điều kiện ràng buộc
1

Những người tham gia đưa ra tập có thứ tự về tiêu chuẩn lựa chọn của mình
trước khi thực hiện thuật tốn ghép đơi.

2


Tập có thứ tự này phải ln được cố định.

3

Tập có thứ tự này phải hồn tồn từ chính bản thân họ, khơng bị ảnh hưởng
bởi yếu tố bên ngồi nào khác.

4

Chỉ xét có những người nằm trong tập có thứ tự về tiêu chuẩn lựa chọn của
mỗi người.

Các điều kiện này phải đảm bảo để đạt được sự ổn định của thuật toán.
.

Khoa Toán - Tin học

.

.

.

.

.

. . . .
. . . .


. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

12 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.4 Thuật toán Gale - Shapley

1
2

Step 1 : Tất cả cùng lên danh sách thứ tự ưu tiên đối tượng mình muốn lấy.
Step 2 : Lần lượt các chàng trai sẽ cầu hơn người đứng đầu trong danh sách
của mình. Cơ gái nhận được nhiều lời cầu hơn thì sẽ chọn người mà mình
thích nhất (dựa theo danh sách của mình).
1

2

Nếu người được chọn là người đứng đầu trong danh sách thì cơ gái sẽ kết
hơn với người này và từ chối mọi lời cầu hôn khác ở những lượt tiếp theo .
Cịn nếu khơng phải thì cơ gái sẽ tạm nhận lời và chờ lời cầu hơn từ người có
thứ hạng cao hơn. Nếu người này xuất hiện và cầu hơn cơ gái (ở những lượt
sau) thì cơ ấy sẽ chia tay "hơn phu tạm thời" của mình mà chọn người này.

.

Khoa Toán - Tin học

.

.

.

.

.


. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

13 / 40

.



2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.4 Thuật toán Gale - Shapley
1

Step 3 : Các chàng trai sẽ xóa tên cơ gái đã từ chối mình hoặc chia tay với
mình khỏi danh sách.

2

Step 4 : Lặp lại Step 2.
Vịng lặp sẽ kết thúc khi khơng cịn chàng trai nào cầu hơn nữa. Khi đó cơ
gái nào chưa kết hôn sẽ kết hôn với "hôn phu tạm thời" của mình.

.

Khoa Tốn - Tin học

.

.

.

.

.

. . . .

. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

14 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ


2.5 Các ví dụ minh họa
Example
Dưới đây là ”ma trận xếp hạng” của 3 người đàn ông α, β, γ với 3 người phụ nữ
A, B và C :
A
B
C
α 1, 3 2, 2 3, 1
β 3, 1 1, 3 2, 2

(2)

γ 2, 2 3, 1 1, 3

Số đầu tiên trong mỗi cặp trong ma trận trên là sự xếp hạng người phụ nữ của
người đàn ông, số kia là sự xếp hạng đàn ơng của người phụ nữ.
.

Khoa Tốn - Tin học

.

.

.

.

.


. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

15 / 40

.



2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.5 Các ví dụ minh họa
Example
- Có 6 khả năng kết hơn, trong đó có 3 là bền vững:
1

2

3

Một kết hơn trong số đó được thực hiện bằng việc mỗi người đàn ơng sẽ
cưới người phụ nữ mà anh ta thích nhất, tức là α kết hôn với A, β kết hôn
với B và γ kết hôn với C.
Một cách kết hơn đó là mỗi người phụ nữ cưới người đàn ông mà họ thích
nhất, α cưới C, β cưới A và γ cưới B.
Ngồi ra cịn cách kết hơn bền vững thứ ba đó là cho họ cưới người mà họ
chọn thứ hai trong số 3 người, ta có α cưới B, β cưới C và γ cưới A.
.

Khoa Toán - Tin học

.

.

.

.


.

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

.

.

.

.

.

.

.

.


.

16 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.5 Các ví dụ minh họa
Example
Một số chàng trai muốn được chia thành các cặp để ở cùng phòng với nhau.
Xét bốn anh chàng α, β , γ và δ : α thích ở với β nhất, β chọn γ là người muốn
ở chung phịng nhất, γ chọn người mình muốn ở cùng phòng nhất là α, và cả
ba người α, β , γ đều xếp δ vào vị trí cuối cùng trong số những người mình
muốn chung phịng. Do đó bất kể sự lựa chọn của δ là như thế nào đi nữa thì
cũng khơng thể có được cặp chung phịng ổn định vì bất cứ ai được xếp ở cùng
phòng với δ đều muốn dọn đi và một trong hai chàng cịn lại sẵn sàng để cho
người đó vào ở chung phịng với mình.
.

Khoa Tốn - Tin học

.

.

.


.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

17 / 40


.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.6 Các đánh giá thuật tốn
1

Mọi người đều được ghép đơi.

2

Thuật tốn kết thúc sau hữu hạn lần lặp.

3

Khơng xuất hiện sự ngoại tình.

Chứng minh đánh giá 2
Ở mỗi lượt , mỗi chàng trai chỉ được cầu hôn với một cô gái, nếu cơ gái đó từ chối
hoặc chia tay với anh ta thì anh ta sẽ khơng được cầu hơn mà phải cầu hôn cô gái
khác ở lượt sau, do đó số vịng lặp khơng thể vượt q n2 ( ví dụ bài tốn có n
chàng trai và n cơ gái).
.

Khoa Toán - Tin học

.


.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.


.

18 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.7 Bên ”cầu hôn” luôn là bên được lợi thế?
Example
A

B

C

D

α 1, 3 2, 2 3, 1 4, 3
β 1, 4 2, 3 3, 2 4, 4

(3)

γ 3, 1 1, 4 2, 3 4, 2
δ 2, 2 3, 1 1, 4 4, 1

- Đàn ông chủ động: α với C, β với D, γ với A và δ với B.
- Phụ nữ chủ động: A với γ , B với δ , C với α và D với β .

→ Kết quả như nhau khi chỉ có 1 phương án bền vững duy nhất.
.

Khoa Toán - Tin học

.

.

.

.

.

. . . .

. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.


.
.

.

.

.

.

19 / 40

.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.7 Bên ”cầu hơn” ln là bên được lợi thế?

.

Khoa Tốn - Tin học

.

.

.


.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

20 / 40


.


2. THUẬT TỐN GHÉP ĐƠI VỚI THƠNG TIN ĐẦY ĐỦ

2.7 Bên ”cầu hơn” ln là bên được lợi thế?
Example
Có 5 ngôi trường A, B, C, D, E tổ chức tuyển sinh bổ sung thêm 1 học sinh
theo điểm thi. Giả sử các thí sinh này được xếp theo thứ tự điểm từ cao xuống
thấp là I, II, III, IV, V (điểm đôi một khác nhau).
- Bên chủ động là ai thì kết quả vẫn như nhau và có lợi nhất cho các học sinh
đạt điểm cao, lợi ích giảm dần theo điểm số.
- Nếu một trong hai bên xếp hạng bên kia theo một tiêu chí thống nhất (ví dụ
như điểm số) các đối tượng xếp hạng đôi một khác nhau, thì chỉ cho ra một kết
quả ln có lợi cho bên cịn lại.
.

Khoa Tốn - Tin học

.

.

.

.

.


. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

21 / 40

.



3.GHÉP ĐÔI VỚI THÔNG TIN KHÔNG ĐẦY ĐỦ

3.1 Giới thiệu bài toán
Cho hai tập rời nhau X và Y . Tìm cách ghép mỗi phần tử của X với một số phần
tử của Y sao cho số cặp ghép là lớn nhất.
Trong bài tốn ghép đơi này thơng tin khơng đầy đủ bao gồm các dạng sau:
1

2

Lực lượng ghép đôi của hai tập X và Y không bằng nhau.
Lực lượng ghép đôi của hai tập X và Y bằng nhau nhưng thông tin lựa chọn
giữa các phần tử trong X và Y khơng đầy đủ hoặc thiếu thơng tin.

.

Khoa Tốn - Tin học

.

.

.

.

.

. . . .
. . . .


. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

22 / 40

.


3.GHÉP ĐƠI VỚI THƠNG TIN KHƠNG ĐẦY ĐỦ


3.2 Bài tốn hơn nhân bền vững có lực lượng khác nhau
- Xét trường hợp có n chàng trai và m cơ gái:
1
2

Nếu n < m thì thuật tốn sẽ dừng khi n cơ gái được cầu hơn.
Nếu m < n thì thuật toán sẽ dừng khi mỗi chàng trai rơi vào một trong hai
trạng thái sau:
Là hôn phu tạm thời của một cơ gái nào đó.
Bị tất cả các cơ gái từ chối.

.

Khoa Toán - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .


. . . .
. . . .

.
.

.

.
.

.

.

.

.

23 / 40

.


3.GHÉP ĐƠI VỚI THƠNG TIN KHƠNG ĐẦY ĐỦ

3.2 Bài tốn hơn nhân bền vững có lực lượng khác nhau

.


Khoa Tốn - Tin học

.

.

.

.

.

. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.


.

.

.

.

24 / 40

.


3.GHÉP ĐƠI VỚI THƠNG TIN KHƠNG ĐẦY ĐỦ

3.2 Bài tốn hơn nhân bền vững có lực lượng khác nhau

.

Khoa Tốn - Tin học

.

.

.

.

.


. . . .
. . . .

. . . .
. . . .

. . . .
. . . .

.
.

.

.
.

.

.

.

.

25 / 40

.



×