L V. Thdnh, L. Q. Anh / Tim kiim cue bp gidi bdi todn dinh hdn 6n dinh T I M K I E M c u e BO GIAI BAI TOAN DINH H O N ON DINH
Le VSn Thanh, Le Quoc Anh Khoa Cdng nghe thong tin, Trudng Dai hgc Vinh Ngay nhan bai 02/6/2016, ngay nban dSng 20/8/2016
Tdm tdt. Bai bao dl xudt mot thu^t todn lira kiem cue bO dS tim cac nghiem on dinh tdi uu binh ding va on dinh tdi uu tuong duang cua bdi loan dinh hdn dn djnh (stable marriage problem). B^g cdeh sir dung mot chiSn luge be gay cac bO gb^p dn dinh dl sinh ra cac bp ghep dn djnh lan can v^ di chuyin tdi bp ghep 6n dinh lan can tdt nhdt, Uiuat loan dl xudt tim nghiem ciia bai toan ttong kbi di cbuyin tii bp ghep dn dinh tdi uu cho tap nam (man-optimal) din bp ghep dn dinh tdi uu cho tap nu (woman- optimal). Day la mot hudng tilp can tdng qudt d& gidi bdi todn vi no co thi dugc md rpng dl lim kilm cdc nghiem dn dinh tdi uu theo cac diiu kien khdc nhau. Kit qud thu nghiem chi ra rang thuat loan de xuat cd hieu qua cbo bdi loan dinh hdn dn dinh.
1. Gidi thieu
Bdi todn dinh hdn dn dinh (stable marriage problem - SMP) la mpt vi d\i dien binh cua bdi todn ghep ddi (two-sided matching) nhdm ghep cde cdp (nam, nii) dd lao ra mgt bg ghep tdi im theo mgl tieu chudn ndo dd. Bai toan ndy dugc gidi tbi^u bdi D.Gale vd cdng su 131 va da dugc cdng ddng nghien eiiu ddnh nhieu quan lam vi vai ttd quan ttgng cua no ttong rat nhieu ling dyng nhu bdi loan phan cdng sinh vien thye tap I9j, bai loan phdn cdng de tai/dd dn eho sinh vidn [1], bai loan ghep cdp phong d ky tuc xd [2].
Bai loan dinh hon dn dinh kich thude n gdm mdt lap n nam va mdt lap n nu ttong dd mdi ngudi cua mpt tap xdp hang tdt ed nhiing ngudi ciia lap khdc (khae gidi) theo thu lu "thich" (perference) tii 1 den n. Mdt bd gbdp (matching) M la mgl tap n cap gb6p (nam, nii). Neu mgt nam m va mpt nii w Id mgl cap ghep ttong bd ghep A/ thi m vd w duge ggi la mgl cap (chdng, vg) (partner) vd duge k^ hieu Id m = M(w) va w = M(m).
Mdt nam m va mdt nu w tgo thdnh mdt khdi (blocking pair) neu m thich w hon M(m) vd w ihi'ch m ban M(w). Mgt bd ghep M khdng chiia mdt khdi duge gpi Id bp ghep dn dinh, nguge lai M dugc ggi la bd ghep khong dn dinh. Ky hieu mrim.w) la thii tu xep hang (rank) Ihi'eb w ttong danh sach xep hang tbii lu thich ciia m va wr(w,m) la thii ty xdp hang thich m trong danh sdch xep hang thii tu thich cua w. Vdi mdi bp ghep dn dinh M, chat lugng ciia cua bp ghdp dn dinh M cbo tdp n nam va tgp n nG duge xdc dinh dya tten cac gia tri sm(M) va sw{!\4) tuong ling nhu sau:
sm(M) = y mr(m,w), fn im.w)EM
ivr(iv,m). (2) {m.w)EM
Djnh nghia 1 (dn dinh tdi uu cho tap nam (man-optimal) vd dn dinh tdi uu cho tap nu (woman-optimal) [8]). Mdt bd ghdp dn djnh M dugc ggi la bg ghep dn dinh tdi uu eho lap nam (tuong ling, cho tap nit) niu M cd gid tti sm(M) (tuong ling, sw(M)) bd nhat ttong tat cd cac bd ghep dn dinb.
A^(M)= ^
Email: [email protected] (L. V. Thanh)
Trudng Dgi fioc Vinh Tgp chi kltoa hpc. Tgp 45, Sd 2A (2016). tr. 60-69 Gale vd Shapley dl xudt mdt thual loan, ggi Id thuat todn Gale-Shapley, dl tim mOt nghiem tdi uu cua bai todn dinh hdn dn djnh kich thuoc n trong thdi gian 0(n^) [3].
Y tuoTng eiia thugt todn Gale-Shapley Id ihye hidn mgt day cac de xudt (proposal) tii tdp nam ddn tap nii dl tim mdt bd gbdp dn dinh tdi uu cbo idp nam. Ndu ddi vai ird ciia nam va nu (tiic la thuat todn Uiuc hien mdt day cdc dl xudl tii tap nft toi Igp nam) thi nghiem tim dugc la bp ghep dn dinh tdi uu cho tap nii. Trong [6] da chi ra rdng ttong bd ghep dn dinh tdi uu eho tdp nam thi mdi nam chpn duge mpt ngudi "vg'' (partner) md anh ta thich nhdt trong khi mdi nii dugc ghep vdi mdt ngudi "chdng" (partner) it "thich" nhdt md cd ta ed die eo trong mgl bd ghep dn dinh. Tuong tu, ttong bg ghep dn dinh tdi im eho tgp nii thi mdi nii chgn dugc mdt ngudi "chdng" ma cd ta thich nhat ttong khi mdi nam dugc ghep vdi mdt ngudi "vp'' it "thich" nhat md anh la cd the cd ttong mgi bp ghep dn dinh.
Mdt bai todn dfnh hdn dn dinh kich tbude n cd the cd nhieu bd ghep dn dinb khdc ngodi bO ghep dn dinh tdi uu eho tap nam va bd ghep dn dinh tdi uu cho tgp nii, do do van dh dal ra Id cdn tim cdc bd ghep dn djnh tdi uu khdc nhdm iranb dugc tfnh ghep "ich ky" mot phfa nhu cac bd ghep dn dinh tdi uu cho tap nam bode tdi uu cho tap nii. Vdi mOt bd ghep dn dinh M, cdc hdm ddnh gid cua bd ghep M duge dinh ngbia nhu sau:
c(M) = sm(M) -I- sw(M), (3) d(M) = \sm(M) - sw(M)\- (4) Dinh nghia 2 (on dinh toi uu binh ddng (egalitarian stable matching) vd dn dinh
tdi iru tuang duang (sex-qual stable matching) [8]). Mgl bg ghep dn dinh M dugc ggi Id bd ghep dn dinh tdi uu binh dang (tuang ung, tdi uu tuang duang) niu M cd gid tti e(M) (tuong ung, d(M)) be nhdt ttong tdt ed cde bd ghep dn dinh.
Gdn day ed mgt sd hudng tidp can de tim ra cde bd ghep dn djnh tdi uu binh ddng va tdi uu tuang duong. Nakamura va cdng su [8] da de xudt mgl thudt todn di truyin (GA) de tim bd ghdp dn dinh Idi uu luong duong. Trong each tiep can nay, bai todn dugc md hinh theo mdt dd thj ed hudng vd tbuat todn GA duge diing d8 tim nghiSm trdn dd Ihi. Vien vd cdng sy 110] dl xudt mgt thuat loan tdi uu hda dan kien (ACS) de ttm cac bd ghep dn dinh toi uu binh ddng va bd ghep dn dinh tdi uu tuang duang. Bdng cdeh djnh nghia cdc hdm tim kilm theo kinh nghiem (heuristic) cbo cdc lidu chudn bd ghep, thuat todn ACS md phdng qua tiinh tim kidm cua m^t ddn kiln dl lim ngbidm cua bai todn.
Iwama vd cdng su da de xuat mOt thudt todn tim nghiem xap xi tdi uu binh ddng vd tdi uu tuang duong [7]. Do sd bd ghep dn dinh eua bai todn dinh hdn dn dinh kich thude n tdng theo hdm mu nen khi n Idn, ndi chung, cdc hudng tiep can tten khdng hieu qud theo thdi gian tfnh toan. Mpt hudng tilp can ^h lang nhanh qud ttinh tim kiem nghiem la sii dung phuong phap tim kilm cue bd (local search). Theo hudng tiep cgn ndy, gdn day Gelain vd epng sy da dl xudl thudt toan tim kilm mdt bd gbdp on dmb cho bdi loan dinb bdn dn dinh [4], tuy nhidn ti'nh Idi uu cua bO ghep dn dinh chua dugc nghiSn cuu.
Trong bdi bdo nay, chung tdi de xuat mdt thuat todn tim kiem cue bd (local search algorithm) de tim bd ghep dn dinh tdi im binh dang vd bd ghep dn dinh tdi uu luong duong eiia bai todn dinh hdn dn dinh dya tren thugt todn Gale-Shapley 13], thuat todn BreakMarriage 15] va mgt dudng di ngau nhien (randomwalk) vdi xdc suat nhd. Thuat todn Gale-Shapley duge dung At lim bg ghep dn dinh tdi uu cho lap nam, day la ttang thdi ban ddu eiia qud trinh tim kiem cue bg. Thugt todn BreakMarriage dugc dung de tim tap cde bg ghep on djnh lan can (neighbour) cua mgt bd ghep dn dinh. Dudng di ngdu
L V Thanh, L Q. Anh / Tim kiem cue bp gidi bdi todn dinh hdn dn dmh
nhien duge diing de thuat todn tim kiem cue bg ttdnh bi "ker a mdt nghiem cue bp (local optimum). Kel qud thii nghi$m eiia thugt todn ehi ra rang hudng tilp can ciia chung tdi ddm bdo tim duge nghiem Idi uu cua bdi loan va tbuat todn thuc hidn nhanh ban nhieu so vdi thuat loan ACS [10]. Han niia, thual loan de xudt Id mdt hudng tiep cgn long qudt vi bang each thay ddi hdm ddnh gid lieu chuan dn dinh tdi uu, thudt todn se tim ra dugc cdc bO ghep dn dinh Idi uu khdc. Phan cdn lai cua bdi bao dugc Id chiie nbu sau: phdn 2 gidi thieu CO sd iy thuyet eiia hudng tilp can, phdn 3 md ta thudt loan de xuat, phan 4 tiinh bdy mgt sd ket qud thii nghiem ciia thuat loan vd phdn 5 Id ket ludn ciia bdi bdo.
2. Cff sd- ly thuy§t
Xet mgl vi du cua bdi todn diiih hdn dn dinh gdm 8 nam va 8 nii vdi danh sdch xep hang thii ly "thich" ciia cdc ddi tugng dugc md td trong Bdng 1.
Nam mi mz mi m4 ms m^
my ms
Danh sdch xep han^ nit 7 4 3 8 1 5 2 6 5 3 4 2 1 8 6 7 6 8 2 4 3 7 5 1 5 6 8 3 4 7 1 2 1 3 5 2 8 6 4 7 8 6 2 5 1 7 4 3 2 5 8 3 6 4 7 1 5 7 4 1 6 2 8 3
m
w,W2 W3
wi Ws
V 6 W7
Ws
Dank sdch xep hang nam 1 3 5 4 2 6 8 7 8 2 4 5 3 7 1 6 5 8 1 4 2 3 6 7 8 4 3 2 5 6 1 7 6 5 4 8 1 7 2 3 7 4 2 5 6 8 1 3 5 8 6 3 7 2 1 4 4 7 1 3 5 8 2 6 Bang 1. Danh sdch xep hgng "thich" cua tgp nam vd nit
Dinh nghia 3 (tinh trdi (dominance) [5]). Ky hieu M va M' la 2 bg ghep dn dinh eiia mgl bai todn dinh hdn dn dinh, M dugc ndi Id ttdi hon M' cbo tdp nam neu vd chi neu mgi nam m il nhat la "thich" M(m) hon M'(m), tiic Id mr(m,M(m)) > mr(m,M'{ni)) vdi mgi nam m.
Thudt toan vet can (brute-force algorithm). Mdt phuang phap dl tim nghiem chinh xdc cua bdi todn dmh bdn dn dinh Id sir dung mOt thudt todn \6t can nhdm tim ra tai ca cac bg ghep dn dinh vd kiem tta dieu kien tdi uu eho eac bd ghep tim dugc de tim ra nghiem cua bai loan. Mgl thual loan vet can dan gidn dugc dl nghi nhu sau: (i) sinh ra lat cd cac hodn vi cita n nam; (ii) ghep lan lugt mdi nu eho mdi nam trong ede hodn vi dugc tao dd tgo ra n! bg ghep; (iii) lim kiem eac bp gbdp dn dinh irong lat ca cdc bd ghep vd kiem tra dieu kien tdi uu Irong cac bd ghdp dn dinh de xdc dinh nghiem ciia bdi todn.
Hinh 1 md Id tat ca cac bd ghep dn dinh duge sdp xgp theo linh ttgi ciia vi du ttdn, ttong dd Mo Id bp ghep dn dinh tdi uu cho lap nam vi 5m(Mo) cd gia tri be nbdt, M20 Id bd gh6p dn dinh tdi uu cho lap nu vi sw{M2o) cd gid tii be nbdt. Mis la bd ghep dn djnh tdi uu binh ddng vi c(Mj8) ed gia tti he nhdt vd Mw la bd ghep dn dinh tdi uu tuang duong vi d(Mio) ed gid tri be nhdl. Thuat todn vet can dcm gian vl mat ihye thi nhung cd dg phiic tap tfnh todn Id n!, do vay khi n Idn thi tiiugl loan khdng bieu qud tiieo thdi gian tinh todn.
Trudng Dai hpc Vinh Tgp chi khoa hpc. Tdp 45. So 2A (2016), tr. 60-69
_^ Cdc bo ghep dn dinh sm sw c d M„={(1,4),(2,3),(3,6),(4,5),(5,1),(6,8),C7,2),(8,7)}
M,= ((l,4),(2,3),(3,8),(4,5),(5,l),(6,6),(7,2),(8,7)) M2=f(l,3),(2,4),(3,6),(4,5),(5,l),(6,8),(7,2),(8,7)) M3={(1,3),(2,4),(3,8),(4,5),(5,1),(6,6),(7,2),(8,7)) M4=i(l,4),(2,3),(3,8),(4,6),(5,l),(6,5),(7,2),(8,7)}
M5={(1,4),(2,3),(3,2),(4,5),{5,1),(6,6),(7,8),(8,7)) M6={(1,3),(2,4),(3,8),(4,6),(5,1),(6,5),(7,2),(8,7)) M,= ((l,3),(2,4),(3,2),(4,5),(5,l),(6,6),(7,8),(8,7)) Mj={(l,4),(2,3),(3,2),(4,6),(5,l),(6,5),(7,8),(8,7)) M9={(1,3),(2,2),(3,4),{4,5),(5,1),{6,6),(7,8),(8,7)) M,„=((l,3),(2,4),(3,2),(4,6),(5,l),(6,5),(7,8),(8,7)|
M„={(1,1),(2,4),(3,2),(4,5),(5,3),(6,6),(7,8),(8,7)) M,2=((l,4),(2,3),(3,2),(4,8),(5,l),(6,5),(7,6),(8,7)|
M,3={(1,3),(2,2),(3,4),(4,6),(5,1),(6,5),(7,8),(8,7)) M,4={(1,1),(2,2),(3,4),(4,5),(5,3),(6,6),(7,8),(8,7)}
Mi5={(l,3),(2,4),(3,2),(4,8),(5,l),(6,5),(7,6),(8,7)) M,6=((l,l),(2,4),(3,2),(4,6),(5,3),(6,5),(7,8),(8,7)) M „ = {(1,3),(2,2),(3,4),(4,8),(5,1),(6,5),(7,6),(8,7))
MiB={(l,l),(2,2),(3,4),(4,6),(5,3),(6,5),(7,8).(8,7)) M,9=((l,l),(2,4),(3,2),(4,8),(5,3).(6,5),(7,6),(8,7)l M20={(1,1),(2,2),(3,4),(4,8),(5,3),(6,5),(7,6),(8,7))
11 13 13 15 16 16 18 18 19 20 21 21 22 23 23 24 24 26 26 27 29
42 35 37 30 30 32 25 27 27 23 22 23 25 18 19 20 18 16 14 16 12
53 48 50 45 46 48 43 45 46 43 43 44 47 41 42 44 42 42 40 43 41
31 22 24 15 14 16 7 9 8 3 1 2 3 5 4 4 6 10 12 11 17 Mo - bd ghep dn dinh tdi uu cho tap nam;
M20 - bg ghep dn dinh tdi uu cbo tdp nu;
M|8 - bp ghep dn dinh tdi uu binh dang;
M|o - bd ghep dn dinh tdi uu tuong duang.
Hinh 1. Ddnh gid chdt lugng cdc bd ghep dn dinh
Thuat toan Gale-Shapley. Trong hudng tilp can cua chung tdi, thuat loan Gale- Shapley [3] dugc dung dd tim bd ghep tdi uu cho lap nam, tire la trang thdi ban ddu cua thual toan tim kilm cue bd. Thuat todn Gale-Shapley dugc md la tdm tdt nbu sau. Ban ddu thudt todn khdi tao "vg hoac chdng " mdi ddi lugng nam vd nu la rdng (chua duge ghep vdi ai). 6 mdi bude lap, Ihudt loan chgn mOt nam m cbua dugc ghep cap va tim mdt nQ w md anh la tiiieh nhdt trong danh sdch xip hgng md cd ta chua dugc anh ta ebon trudc do. NIU W cbua dugc ghep cgp vdi ai thi ghep w vol m de tao thdnh mot cap (m,w).
NIU W da dugc ghdp cap vdi mgt nam m' nao do thi w dugc gbep vdi nam m hoac m' md ed ta thich ban va logi ngudi cdn lai. Thugt todn kit ihiic kbi idl ca n nam deu duge ghep voi n nu.
Thudt toan BreakMarriage. Ky bieu M la mdt bg ghep dn dinh vd (m,w) la mdt cap ghep ttong bg ghep M. Thual loan BreakMarriage [5] nhdm sinh ra mgl bg ghep dn dinh lir bg ghep 6n djnh M va nam m. Y tudng cua thudt todn BreakMarriage dugc dua trdn tiiudt todn Gale-Shapley va dugc md la nhu sau. Ban ddu thudt todn gdn "chdng" cua w la M(w) vd gdn "vg" eua la m rdng. C) mdi bude Idp, thual loan thuc hien mgl day cde
L. V. Thdnh, L Q. Anh / Tim kiim cue bp gidt bdi todn dinh hon dn dmh de nghi (proposal), iii chdi (reject) va chap nhan (acceptance) nhu trong thuat loan Gale- Shapley. Thudt todn ket ihiic khi mgt nam ndo do hi tii chdi bdi tat ed cde nu hoac w chap nhdn Id ban eua mdt nam m' ma cd ta thi'ch hon M(w). Thuat loan BreakMarriage tta ve mdt bd ghep dn dinh neu no ket thiie md tat ed cdc nam deu dugc ehdp nhdn.
Dinhly 1 ([5]). Mgibggb^pdndinhMj(/= 1, 2 , . . . , r) cd tbi dal dugc bdng cdeh thuc hien mdt day eac thugt toan BreakMarriage bat ddu tii bd ghep toi uu cho lap nam Mo, ttong do M, la bg ghep tdi uu eho tap nii.
PhiTffng phap tun kiem cue bg Ooeal search methods). Phuong phdp tim Idem cue bd la mdt Irong nhiing hudng tiep can ua thich de giai cdc bai todn Idi uu nhdm lim ra nghiem tdt nhdl theo ham mdt mue tieu. Nguydn tdc chung eila cde thuat loan tim kilm cue bp la bat dau tim nghidm td mdt nghidm ndo do vd cd gang tim ra mot nghiem tdt hon ttong tap nghiem lan can cua nghiem hien thai. Neu mgt nghiem tdt hem ttong tap nghiem Idn can dugc tim thay thi thuat todn di chuydn tdi nghiem tdt hon vd qud trinh tim kiem cue bp duge tiep tye thye bien. Ngugc lai, thual toan tim kiem cue bd se diing vd nghidm lim dugc Id nghiem tdi uu cue bd. Uu diem chinh cua cac thuat loan tim kiSm cue bg gdm: (i) sii dung rat it bd nhd; ((/) tim ra nhanh chdng mdt nghiem chdp nhdn dugc ttong khdng gian ttang thdi Idn hoac khdng gian trang thdi vd ban. Tuy nhien, nhuge dilm chinh cua cdc thudt lodn tim kiem cue bd Id thuong tim ra dugc m^t nghiem Idi mi cue bg ngay ca khi bai loan Idn lai nghiem tdi uu tdng the (global optimum). D I giai quyet nhuge diem ciia thuat todn tim kiem cue bd, nhieu thual loan da dugc de nghj nbu tim tim kiem leo ddi bdt dau tii da didm (random-restart hill climbing), thudt lodn md phdng luyen kim (simulated annealing), thuat todn tim kiem Beam (Beam search). Thudl loan 1 md la thuat loan leo ddi ciia phuang phap tim kiem cue bd.
Thugt toan 1: Thugt toan tim kiem leo doi (hill-climbing) Inputs: a problem
Output: a returns a state that is a local maximum curre«r*-inilial state;
while (true) do
neighbor *— a highest-valued successor of current;
if neighbor. VALUE < current. VA LUE then xetamcurrent. VALUE current *— neighbor,
end
3. De xuat thuat toan
Trong phan nay chung loi de xudl mdt thudt loan tim kilm cue bd dl tim bd ghep dn dinh tdi uu binh dang va bd ghdp dn dinh tdi uu luong duong cua bai loan dinh hdn dn dinh. De thill k l mdt thudt todn tim kilm cue bd, cdn phdi xdc dinh: (i) nghiem ban dau de bdi dau thuc hien qua tnnh tim kiem; (ii) tap nghiem lan can cua nghiem hien thdi; (iii) ehien luge de thuat loan ttanh duge nghidm tdi uu cue bd. Thugt todn de nghi dugc md td ttong Thuat lodn 2. Y tudng ciia thudt loan dugc dya tren Dinh ly 1, lire la thugt loan tim nghiem idt nhat (Mbea) ttong qua trinh di chuyen tii nghiem tdi uu cho tap nam den nghiem tdi uu cho tap nCr. Ban ddu thudt toan tim nghiem tdi uu eho tap nam sii
Trudng Dgi hpc Vinh Tgp chi khoa hgc, Tgp 45. Sd 2A (2016). tr. 60-69 dung thugt lodn Gale-Shapley vd Idy nghiem nay Idm nghiem tdt nhat. 0 mdi buoc lap, thual lodn tim mdt lap nghiem lan can (neighborSet) cua nghiem lot nhat (M^esi) bang each thuc hien mpt day cde thudt loan BreakMarriage cho mdi nam tu 1 den n. Tiep Iheo, thugt todn danh gia chat lugng cua tdt ed cde nghiem lan can su dung mdt ham ddnh gid f(M), ttong i6f(M) duge xac dinh theo (3) neu thudt todn tim bd ghep dn dinh tdi uu binh ddng vd duge xdc djnh theo (4) niu thuat todn tim hd ghep dn dinh tdi uu tuong duong.
Sau do thual loan chpn nghiem tdt nhat tiep theo (MnextX hie la ed ham ddnh gid be nhdt, ttong tap nghiem lan can. Tuy nhien, thuat toan cung chpn mdt nghiem ngau nhien tiep theo (M„exi) ttong tap nghidm Idn cdn vdi mdt xdc sudt p nhd de Iranh bi ket d mdt nghiem cue bd. Chii y rdng ede thudt todn tim kiem cue bd ihudng chgn 0 < p< 0,1 Neu nghiem tdt nhdl (Mhesi) da tim thay tdi hem nghiem tot nbdt tiep theo (M„exd thi nghiem tdt nhdt Idy nghiem idt nhdl tilp Iheo. Tbuat todn tilp tiic qud tiinh tim kiem cbo din khi nghiem tdt nhdt tilp theo tdi ban nghiem tdt nhat da tim ihay.
Mdt VI du minh hga cua thual loan de xuat de tim bd ghdp dn dinh tdi uu tuong duong cua Bdng 1 dugc md ta ttong Hinb 2 trong dd xdc suat de chgn mdt nghiem lan can dugc ihiel lap bang 0. Ban ddu thual todn tim nghiem tdi uu cbo tap nam MQ sii dung thual toan Gale-Shapley vd gdn nghiem tdt nhdt M^^s, = MQ. 0 vong lap 1, tiiuat loan tim cac bg ghep lan cdn dn dinh cua Mbest gSui M/ vd M2. Vi d(Mi) <d(Mi) ndn tbuat todn chgn Mnext - ^1 va vl d(Mbesi) >(i(M„„,) ndn thuat loan gdn Mbesi = M„ext =Mi.6 vong lap 2, thudt todn tim cac bg gbep Idn can dn djnh cua Mbesi gdm Ms, M4 vd M5. Vi d(M4)
<d(M3)<d(M5) nen thugt lodn ebon M„ext = M4 vd vl d(Mbesd >d(Mnexi) nen tbuat todn gan Mbesi = M„exi = M4. CJ vong Igp 3, thudt loan tim cdc bd gbep lan can dn dinh cua Mhest gdm Mfi va Ms- Vi d(M6) <d(M8) ndn tbuat todn chpn Mn^^t = Me vd vi d(Mbest) >d(M„^xt) ndn thuat todn gdn Mtes, = M„„,= M^. d vong lap 4, tiiugt todn tim cac bd ghep lan can dn dinh cua Mbe.r g6m Mw, M^ va Af/e- Vl d(Mio) <d(Mi3)<d(M,6) nen thual loan chpn M„^
= Mio vd vi d(Mhesi) >d(Mnext) ndn thudt toan gdn M^est f M„ext=MiQ. 0 vong lap 5, thuat loan tim cac bd ghep lan can dn djnh cua Mbe,i gom Mu, M15 vd M/g. Vi d(M]3)
<d(.\ln)<d\Mi() nen thudt todn chgn M„«, = M,5 va vi d(Mbe„) <d(M„exi) nen tiiudt todn kit thuc. Nhu vay sau 5 vong lap, thudt loan cbo ket qud bd ghdp tdi uu tuong duang la Mhev = M,,j. Ket qua nay gidng nhu kit qua cua thudt todn vet can da tun tiidy d Bang 1.
t h u a t toan 2: Tim kiem cue bg giai bai toan dinh hdn 6n djnh Inputs' an instance of SM
Output: a stable matching
1: M,„,,*- GALE-SHAPLEY(an instance of SM);
2: while (true) do 3: neighborSet*— 0 ;
4: for (each man m in the men set) do
5: stableMatching*- BREAK-MARRIAGE(Mt«„m);
6. addstableMatching lo neighborSet;
7: end
8: if (small random probability p) then
9: M,„-u*—2i randomly selected matching in neighborSet;
10: else
L V. Thanh. L Q. Anh / Tim kiim cue bp gidi bdi todn dinh hdn dn dinh
11 12 13 14 15 16 17 18 19
M„ext <- argmin f(.M) MeneighborSet end
mUi„.,) >f(.M„.„)tben Mt„,<-M„„;
else break;
end end retuToMh..,;
Hinh 2. Minh hga thudt todn de xudt tim nghiem cua Bdng 1 4. Ket qua thu nghiem
Phdn ndy gidi thieu cde ket qud thii nghiem ciia thugt todn duge thye hien bdng phdn mim Mallab ttdn mdy ti'nh edu hinh Core-i52430M CPU 2,4 GHz vdi 4GB RAM.
Cdc thu nghiem dugc thiet ke de danh gia su thuc hien cua thuat loan vdi cdc bd du lieu dugc sinh ngdu nhien. Xde suat chpn mot nghiem lan can dugc thiet lap ;? = 0,1.
Ddu tien chung toi thuc hien ede thu nghiem de danh gid ti'nh chinh xde eua thuat todn. Ket cua cua cac thu nghiSm duge so sdnh vdi kit qua cua thudt todn vet can. Tuy nhidn, vi Uiuat loan vdl can chi thuc hidn duge cho cdc bO dii lieu nhd, nen kich Ihudc eua bdi loan dinh hdn dn dinh dugc tiiilt lap Id « = 10. Bdng 2 md ta kit qua eua 30 tii^
nghiem tten 30 bd dS Ueu khdc nhau. Kdl qua thii nghiem ehi ra rdng thuat lodn de xudt (LS algoritiun) tim dugc nghiem hodn lodn gidng nhu thuat todn vet can (BF algoritiim).
Trudng Dgi hpc Vinh Tgp chtkhoa hpc. Tdp 45. So 2A (2016), tr 60-69 Data
Set 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
BF algorithm min{c)
69 55 61 59 66 59 60 59 62 51 51 55 57 64 57
min(d) 1 1 1 7 5 5 6 7 9 9 8 7 3 2 7
LS algorithm min(c)
69 55 61 59 66 59 60 59 62 51 51 55 57 64 57
mm(dj 1 1 1 7 5 5 6 7 9 9 8 7 3 2 7
Data Set
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
BF algorithm mm(c)
51 65 46 53 65 56 63 59 54 53 57 61 56 48 46
min(d) 1 1 20 5 3 8 4 1 2 7 1 1 2 2 3
LS algorithm min(c)
51 65 46 53 65 56 63 59 54 53 57 61 56 48 46
mm(d) 1 1 20 5 3 .8 4 1 2 7 1 1 2 2 3 Bang 2. Ket qud so sdnh cua thudt todn vet cgn vd thudt todn de xudt Tilp Iheo, chung tdi thu nghiem tren cdc bg dii li^u Idn de ddnh gid tfnh chinh xdc vd thdi gian thuc Men thudt todn. Chiing tdi lao ra nglu nhien 10 bd dir Ueu vdi cdc gid tri n€ {50, 100, 150, 200, 250, 300, 350, 400, 450, 500} vd thuc hien chuong trinh cai dal thuat todn 10 lan cho mdi bd dO Udu, sau do tfnh gid tri trung binh vd ti'nh do lenh chudn.
Ket qud eiia todn bd thu nghiem dugc md td ttong Bdng 3. Vdi mdi bd du lieu, do lech chudn bdng 0 vd gia tri trung binh chinh Id gia tti ciia bd ghep dn dinh tdi uu binh ddng va bg ghep dn dinh tdi uu tuang duang. Mgc du xde sudt dl chgn nghiem lan can dugc thiit Igp p = 0,1 nhung do leeh chudn ttong cac thii nghiem bdng 0, dieu nay cd nghia rdng thudt todn da tim dugc chinh xdc bd ghep dn dinh tdi uu binh dang va bd ghep dn dinh tdi uu tuang duong eho cdc Igp dii lidu.
Cudi ciing chung tdi Ihye hien cdc thu nghiem de so sdnh thdi gian lim nghiem eua thudt todn dk xudt vdi thuat todn ACS [10]. Kit qua cua cac tiiii nghiem da chi ra rdng thual toan ACS cdn 48.523 giay dl tim ra bg ghep dn dinh tdi uu binh ddng vd cdn 43.451 giay dk tim ra bd ghep dn dinh tdi uu tuang duong chi vain = 20. Nhin vdo bang 3, dl thdy rdng thual loan dl xudt tim nghidm voi n = 500 nhanh ban tiiudt todn ACS tim nghiem vdi n = 20. Vl mat 1^ Ihuylt, chiing la ed Ihl giai thich thudt todn ACS cham han nhidu so vdi thugt todn dl xudt vi vdi bai lodn di'nb hdn dn dinh kich thude n tiii thudt todn ACS cdn phdi tim n^ cap (nam, nii) dl lao ra mgl bg ghep dn dinh cd n cap. Ndi cdeh khdc, khong gian tim kilm cua thudt todn ACS la n^ cap va thudt todn phai lao mdt bg ghep dn dinh tfr n^ cap, ttong kbi do thual loan dl xudt ehi tim kiem bg ghep dn djnh tdi uu trong mgl sd lugng nhd cdc bp ghep dn djnh Idn cdn vi tfnh dn dinh cua cdc bp ghep lan can da dugc dam bdo ttong Ihudt todn BreakMarriage.
67
L V. Thanh, L Q. Anh/Tim kiem c^c bd gidi bdi lodn dinh hdn dn dinh
TJpdtr lieu
1 2 3 4 5 6 7 8 9 10
Kich thirac 71 = 5 0 n = 100 71 = 150 71 = 200 71=250 71 = 300 71 = 350 71 = 400 71=450 71 = 500
On dinh toi uu binh dSng Trung
binh 679 2072 3555 5816 7925 10098 13011 15461 18656 21651
Do lech 0 0 0 0 0 0 0 0 0 0
Thoi gian (giSy)
0.081 0.229 0.701 1.464 3.396 4.614 5.056 9.897 29.506 36.737
On dinh toi uu tuong duong Trung
binh 39 20 287 337 199 10 94 51 161 71
DO lech
oooooooooo
Thoi gian (giay)
0.139 0.286 0.612 1.842 5.077 6.192 7.439 9.787 13.648 27.983 Bang 3. Ket qud ddnh gid thudt todn eho cde bd die lieu Icm 5. Ket ludn
Trong bai bdo ndy, chiing Idi dd xudt mdt thudt lodn lim kiem cue bg giai bai loan dinh hdn dn djnh dya tten thuat lodn Gale-Shapley, thudt todn BreakMarriage va lua chgn ngdu nhien ttong tdp nghiem lan cgn. Thudt todn Gale-Shapley dugc dimg de tim nghiem tdi uu cbo tap nam, tiic Id nghiem khdi dau cho thudt todn tim kiem cue bd.
Thugt todn BreakMarriage duge diing de sinh ra tdt ed cdc bd ghep dn dinh Idn can cua mgt bd ghep dn djnh. Lya chgn ngdu nhien dugc diing de ttanh cho Ihugl loan cue bg hi kel a mgt nghiem tdi uu eye bg. Ket qua Ihii nghiem chi ra rang thuat loan de xudt cd bi^u qua cho viec gidi bdi loan dinh hon dn dinh.
TAI LIEU THAM KHAO
[1] Abraham D. J., hvingR. W., ManloveD. F., The student-project allocation problem, hi Proceedings of the 14lb Inlemational Symposium, 2003, pp. 474-484.
[2] Fleiner T., ttving R. W., Manlove D. F., Effeient algorithms for generalized stable marriage and roommates problems. Theoretical Computer Science, vol. 381, no. 1-3, 2007, pp. 162-176.
[3] Gale D., Shapley L. S., College admissions and the stability of marriage. The American Mathematical Monthly, vol. 9, no. 1, 1962, pp. 9-15.
[4] Gelain M., Pini M. S., Rossi F., Venable K. B., Toby Walsh, Local search approaches in stable matching problems. Algorithms, vol. 6, no. 1, 2013, pp. 591- 617.
[5] Gusfield D., Three fast algorithms for four problems in stable marriage, SIAM Joumal on Computing, vol. 16, no. 1, 1987,111-128.
[6] Gusfield D., Irving R. W., The stable marriage problem: structure and algorithms, MIT Press Cambridge, ISBN: 0-262-07118-5, 1989.
Trudng Dgi hoc Vinh Tgp chi khoa hpc. Tap 45, Sd 2A (2016), tr. 60-69 [7] Iwama K., Miyazaki S., Yanagisawa H., Approximation algorithms for the sex-equal stable marriage problem, ACM Transactions on Algorithms, vol. 7, no. 1, 2010, pp.
1-17.
[8] Nakamura M., Onaga K., Kyan S., Silva M., Genetic algorithm for sex-fairs table marriage problem. In Proceedings of Cu-euits and Systems, 1995 IEEE International Symposium, vol. 1,1995, pp. 509-512.
[9] Roth A. E., The evolution of the labor market for medical interns and residents: A case study in game theory. Journal of Political Economy, vol. 92, no. 6, 1984, pp.
991-1016.
[10] Vien N. A., Viet N. H., Kim H., Lee S., Chung T., Ant colony based algorithm for stable marriage problem. In Proceedings of Advances and Innovations in Systems, Computing Sciences and Software Engineering, vol. 1, 2007, pp. 457-461.
SUMMARY
LOCAL SEARCH FOR THE STABLE MARRIAGE PROBLEM
This paper proposes a local search algorithm for finding the egalitarian and sex- fair stable matehings of the stable marriage problem. By using a "breakmarriage"
strategy to generate stable neighbor malchings of the current stable matching and moving to the best neighbor matching, the proposed algorithm finds the solutionsof the problem while moving from the man-optimal stable matching toward the woman-optimal stable matching. This is a general approach to solve the stable marriage problem since it can be extended to seek other optimal stable malchings. Simulation results show that our proposed algorithm is efficient for the stable marriage problem.