Lý thuyết độ phức tạp tính toán

195 752 3
Lý thuyết độ phức tạp tính toán

Đ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

L600T AM KHOA HOC VA CONG NGHE VIET NAM iw^ACH DAI HOC VA SAU DAI HOC • • • • • LE CONG THANH NHA XUAT BAN KHOA HOC TU" NHIEN VA CONG NGHE L LE CONG THANH Bien muc tren xuat ban pham cua Thu vien Quoc gia Viet Nam Le Cong Thanh Ly thuyet do phiic tap ciia tinh loan : Sach chuyen khao / Le Cong Thanh. - H. : Khoa hoc Tu nhien va Cong nghe, 2013. - 372tr. : hinh ve ; 24cm Thiimuc: tr. 259-362 ISBN 9786049131158 1. Toantin 2. Li thuyet tinh toan 3. Sach chuyen khao 004.01 - de 14 KTF0003p-CIP VIEN HAN LAM KHOA HOC VA CONG NGHE VIET NAM BO SACH DAI HOC VA SAU DAI HOC HOI DONG BIEN TAP Chu t[ch HQI dong: GS. TSKH. NGUYEN DINH CONG Cac uy vien: 1. GS. TSKH. Ngo Viet Trung, 2. GS. TS. Nguyen Dai Hung, 3. GS. TSKH.Tn\nVanSung, 4. GS. TS. Le Tran Binh. 'i'f I (if \ I Lo'i gioi thieu Vien Khoa hoc va Cong nghe Viet Nam la ca quan nghien cuu khoa hoc tu nhien va cong nghe da ngdnh Ian nhdt cd nuac, CO thi mgnh trong nghien cuu ca bdn, nghien cuu va phdt triin cong nghe, dieu tra tdi nguyen thien nhien va moi truang Viet Nam. Vien tap trung mot doi ngU cdn bo nghien cuu c6 trinh do cao, ca sa vat chdt ky thudt hi^n dgi ddp ung cdc yeu cdu vi nghien cuu va thuc nghiem cua nhieu ngdnh khoa hoc tu nhien va cong nghe. Trong gdn 40 nam xdy dimg vd phdt trien, nhieu cong trinh va kit qua nghien cuu cd gid tri cua Vien da ra dai phuc vu ddc luc cho su nghiep xdy dung vd bdo v^ To quoc. De tong hap vd giai thieu c6 he thong a trinh do cao cdc cong trinh vd ket qud nghien cuu tai ban doc trong nuac vd quoc te, Vien Khoa hoc vd Cong nghe Viet Nam quyet dinh xudt bdn bo sdch chuyen khdo. Bo sdch tap trung vdo bdn iTnh vuc sau: - ling dung vd phdt trien cong nghe cao; - Tdi nguyen thien nhien vd mdi truang Viet Nam; - Bien vd cong nghe bien; - Gido trinh dgi hQC vd sau dgi hoc. Tdc gid cm cdc chuyen khdo la nhung nhd khoa hoc ddu ngdnh cua Vien hogc cdc cong tdc vien da timg hop tdc nghien cuu. Vien Khoa hoc vd Cong nghe Viet Nam xin trdn trong giai thi^u tai cdc quy doc gid bo sdch ndy vd hy vong bo sdch chuyen khdo se Id tdi lieu tham khdo bo ich, c6 gid tri phuc vu cho cong tdc nghien cuu khoa hoc, ung dung cong nghe, ddo tgo dgi hoc vd sau dgi hgc. HOI D6NG BIEN TAP Ldi tifa Ly thuyet do philc tap tinh toan diroc hinh thanh do nhu can cua boat dong thirc ti6n va duoc phat tridn manh me trong khoang bon miroi nam qua. Ly thuyet nay nghien ciiu tinh hieu qua cua cac mo hinh tinh toan va cua thuat toan noi rieng, nhSm phan chia cac bai toan theo do phiic tap cua thuat toan giai chung thanh nhiing Idp phutc tap khac nhau, va qua do tao nen mot hinh anh khai quat ve tinh phiic tap cua cac bai toan noi chung. Ly thuyet do philc tap tinh toan, dac biet nhiing kgt qua khao sat ve moi quan he giiia cac 16p phiic tap va ve ban chat cua mot so Idp quan trong, cho ta nhiing hidu biet t6ng quat ve van de phiic tap va hudng dan ta each xii ly diing dan trong triidng hop cu thg. Noi rieng, nhiing higu biet nhu vay giup ta ly giai vi sao c6 su khac biet giiia "giai ducc ve mat ly thuyet" va "giai diioc mot each thuc te" doi vdi nhieu bai toan kho ma ta gap phai. Mat khac, ly thuyet do phiic tap tinh toan cung cap cho ta cac y niem cung nhu nhfrng khia canh don gian va trang nha cua cac qua trinh tinh toan va cua thuat toan noi rieng. Nhiing hiiu biet sau sic vg qua trinh tinh toan cua thuat toan giiip ta phan tich va danh gia mot each chuin xac do phiic tap ciia thuat toan. Han niia, nhiing hi6u biet ay c6 thg goi md cho ta hudng cai tign hoac tim kiem thuat toan tot hon. Nhu vay, ly thuyet do phiic tap tinh toan khong chi cho ta mot each nhin thong nhat ve van de phiic tap cua cac bai toan ma con giiip ta tim ra hudng giai quyet hop ly khi xem xet nhiing bai to^n cu thg. Dg thay dudc ly thuyet nky hap dan the nao, xin hay tim higu no mot each ki luOng. iv Ldi tua Duong nhien, tim hieu ki bat ci3 chu de m6i nao cung viec lam kho, nhung no trd nen d§ dang va thu vi hon ngu nhu chu de ay duoc trinh bay mot each thoa dang. Muc tieu hang dau cua tac gia khi viet cuon sach nay la muon bay to cho doc gia cac khi'a canh thuc sir hijtng thu cua ly thuyet do phutc tap tinh toan, nhung khong bi sa lay vao nhiing dieu qua nang ne va buon te. Muc tieu thii hai la nham dap ling phan nao nhu cau cua doc gia muon tim hi6u noi dung cd ban cua ly thuyet nay, trong boi canh tai lieu tieng Viet vg linh vuc nay con rat khan hiem. Mong muon la vay, nhimg nhOlng muc tieu nay kho c6 the dat dUdc tron ven. B5i vi, ly thuyet do phiic tap tinh toan qua that la philc tap va dang diroc phat trign manh me, cho nen mot vai hu6ng nghien cilu md\i nhuing ket qua ly thu va nhieu ufng dung hieu qua cua no ciing kho c6 the duoc trinh bay trong mot khuon kh5 han che. V6i muc tieu kg trgn, tac gia c6 gSng lua chon nhflng chu de thiet thuc va trinh bay rnot each ranh mach nhat c6 thg, nhSm dam bao doc gia vdi mot so lirong kien thufc toi thigu van c6 thg tim higu va nhanh chong di vao nhung vka de thdi su nhat cua ly thuyet do phiic tap tinh toan. . , . ; Noi dung cuon sach nay duoc chia thanh 6 chuong, trong do Chuong 0 la chuong md dau nhSm g\6\u khai quat ve ly thuyet do phiic tap tinh toan va trinh bay mot each tigp can thich hop cac bai toan thuoc nhieu iTnh vUc khae nhau, tao tien de cho viec giai cac bai toan ay tren ciing mot mo hinh tinh toan tSng quat, mo hinh may Turing, cung nhu viec phan chung thanh nhUng Idp phiic tap. Chuong 1 nghien ciiu may Turing va cac bien thg chinh cua no, chii yeu la khao sat kha nSng doan nhan ngon ngu cua may, nhSim ly giai tai sao may Turing duoc chon lam mo hinh tmh toan tSng quat. Do may Turing duoc de xuat v6i muc dich chinh xac hoa khai niem thuat toan, tao co sd dg c6 thg chiing minh "cac bai toan khong giai duoc", cho ngn phan cuoi chuong nay gidi thieu mot vai VI du don gian nhu nhung minh chiing ve cac bai toan khong giai duoc de doc gia tham khao them. Hon nfla, noi dung ciia phan nay tuy nam ngoai pham vi cua ly thuygt do phiic tap tinh toan, nhung no chUa dung mot phuong phap ma ta can den 6 Chuong 4 Ldi tua V cac Chuong 2 va 3 tign hanh khao sat do philc tap thdi gian va do phUc tap khong gian cua thuat toan, thuc hien phan Idp cac bai toan theo do phutc tap cua cac thuat toan giai chung. Mot s6 Idp phiic tap bao gdm cac bai toan thuoc nhieu linh vuc khac nhau vdi nhflng dac tinh thu vi duoc kham pha. NOi dung cua hai chuong nay bao ham nhflng kgt qua cd ban ve do phflc tap tinh toan. Trong ChUdng 4 thigt lap trat tu thdi gian va trat tu khong gian doi vdi cac Idp phflc tap nham chflng to tinh nan giai cua nhigu bai toan. Phan con lai ciia chfldng nay gidi thieu each tiep can mot van d^ trung tarn va kha nan giai hien nay, van dg P = NP. Chuong cuoi ciing, CliUdng 5, danh dg gidi thieu cac hudng nghign cflu ma e6 kha nang mang lai nhflng giai phap tich cue doi vdi cac van de nay sinh, dac biet trong hoat dong thuc tign. Nhu tren da ngu, do khuon kho han che, mot so chu de ly thu nhung khong dUOc dua vao cuon sach nay, nhu He bhng chiing xac suat va Tinh toan luong tit hay Mat md hoc - mot linh vue flng dung hieu qua cua ly thuyet do phflc tap tinh toan. Doe gia cd thg tim higu nhflng chii de nay trong nhigu tai lieu hien ed, ehang han nhflng tai lieu cd trong phan Tai lieu tham khao d cuoi sach nhu [2, 10, 12, 31]. Nhflng tai lieu ay va hai tai lieu [11, 13] cung duoc tac gia tham khao nhieu khi viet cuon sach nay. Tuy duoc xuat ban kha sdm, nhung cuon sach [13] cung da chfla dung nhieu van dg cd ban cua ly thuygt tinh toan va ciia ly thuygt do phflc tap tinh toan noi rigng; cuon sach [11] chuygn ve tinh NP-day du, ngn cd phan Phu luc - mot Danh sach bao gom hon ba tram bai toan NP-day dii duoc biet dgn cho tdi thdi digm do. Danh sach nay hien nay vln duoc nhieu ngudi sfl dung. B6n chuong dau cua cuon sach nay cd thg dung lam chuygn de giang day cao hoc hoac sinh vign nhflng nam cuoi, chuygn nganh toan hoc va tin hoc ly thuygt. Noi dung nay da duoc tac gia giang day cho hoc vien cao hoc trong nhieu nam qua, tai Vien Toan hoc, Vien han lam Khoa hoc va Cong nghe Viet Nam, va tai Dai hoc Bach khoa Ha Noi. Do sach dudc viet vdi kha day du cac khai niem can thiet va dudc dien dat tudng doi mach lac, nen nd cung cd the bo ich cho nhflng ai muon bat dau tim higu ly thuygt nay. vi Ldi tixa ' Tac gia chan thanh cam dn GS. Le Tuan Hoa da doc ki ban thao, siia I5i vk cho nhflng y kien dong gop quy bau dg chinh siia noi dung tot hon; GS. Ngo DSc Tan cung da doc, sijta I6i ban thao va iing ho tac gia vigt cuon sach nay. Mac dil tac gia da rat c6 gang khi viet, nhung cuon sach nay khong thi tranh khoi thieu sot. Tac gia mong muon nhan duoc nhung nhan xet va gop y cua dong nghiep va cua doc gia gan xa ve cuon sach nay. Moi nhan xet v^ gop y xin dtroc giii vg dia chi: leecthanhSgmail. com/. Ha Noi, thang 8 nam 2013 Tac gia Muc luc L6i tiia iii 0 Md d§u 1 0.1 Cac thuat ngu: va khai niem 2 0.1.1 Tap hop 2 0.1.2 Ham 4 0.1.3 Bicn do tiem can cua ham 6 0.1.4 Logic Boole 8 0.1.5 Dothi 13 0.1.6 Ngon ngu: hinh thiic 18 0.2 Vc ly thuyet do phurc tap tinh toan 20 0.2.1 Vi tri trong Ly thuyet tinh toan 20 0.2.2 Sir ra ddi va phat trien 22 0.3 Cach tiep can cac bai toan 25 0.3.1 Bai toan tim kiem va bai toan quyet dinh . 27 0.3.2 Ngon ngfl bigu dign bai toan quygt dinh . . 29 0.3.3 Doan nhan ngon ngii 32 Bai tap 32 1 May Turing va Thuat toan 35 1.1 May Turing 36 1.1.1 Mo ta 36 1.1.2 Dinh nghia hinh thi'ic 42 1.1.3 Cac chute nang chinh cua may Turing 49 1.2 Mot vai bien thg ciia may Turing 58 1.2.1 May Turing nhieu bang 59 1.2.2 May Turing khong tat dinh 69 MUC LUC 1.3 Luan d6 Church-Turing va Thuat toan 77 L3.1 Thuat toan theo ngliia true giac 77 L3.2 Luan de Church-Turing va Dinh nghia thuat toan 79 lA Mot vai bai toan khong giai duac 84 L4.1 Bai toan chap nhan 85 L4.2 Bai toan diing 99 L4.3 Bai toan taong i3ng Post 102 Bai tap 113 2 Do phufc tap thdi gian 117 2.1 Do phufc tap thdi gian cua cac loai may Turing . . . 118 2.1.1 Quy chuin ve thdi gian hoat dOng cua may . 118 2.1.2 Phan tich thuat toan 122 2.1.3 Quan he tlidi gian giiia cac loai may 132 2.2 May Turing tat dinh thdi gian da thufc 138 2.2.1 Thdi gian da thufc va Idp P 138 2.2.2 Thi du ve cac bai toan thuOc Idp P 142 2.3 May Turing khong tat dinh thdi gian da thufc . . . 153 2.3.1 Ldp NP va ngon ngfr kic^m chiing nhanh . . 154 2.3.2 Thi du vg cac bai toan thuoc ldp NP 161 2.3.3 VandeP = NP 166 2.4 Tinh NP-day du 168 2.4.1 Quy dan thdi gian da thi'rc 169 2.4.2 Ngon ngir NP-day du va ldp NPC 176 2.4.3 Dinh ly Cook-Levin ve tinh NP-day du 178 2.4.4 Mot vai bai toan NP-day du 182 2.5 Cau true cua cac ldp NP va eo-NP 191 2.5.1 Ldp trung gian NPI giiia P va NPC 192 2.5.2 Quan he gifra ldp NP va ldp co-NP 195 Dm tap 201 3 Do phiJc tap khong gian 207 3.1 Do phiic tap khong gian cua cac may Turing 208 3.1.1 Do phvjfc tap khong gian eiia may Turing tat dinh mot bang 208 MUC LUC , ix 3.1.2 Do phufc tap khong gian cua may Turing tat dinh nhigu bang 215 3.1.3 Do phufc tap khong gian cua may Turing khong tat dinh 222 3.2 Nhiing moi quan he co ban ve do phufc tap 224 3.2.1 Quan he giiia thdi gian va khong gian 225 3.2.2 Quan he giiia tat dinh va khong tat dinh . . 227 3.3 Do phiic tap khong gian da thiic 229 3.3.1 Cac ldp phufc tap PS va NPS 230 3.3.2 Tinh PS-day du 232 3.4 Do phiic tap khong gian loga 242 3.4.1 Cac ldp phiic tap LS va NLS 243 3.4.2 Tinh NLS-day du 245 3.4.3 Quan he giiia NLS va eo-NLS 251 Bai tap 255 4 Tinh nan giai 259 4.1 Trat tu cua cac ldp phufc tap 260 4.1.1 Trat tir khong gian 260 4.1.2 Trat tii thdi gian 267 4.2 Phuong phap quan he hoa va van de P = NP . . . . 271 4.2.1 May Turing vdi tii van 271 4.2.2 Han chl ciia phuong phap dudng cheo 275 4.3 Maeh Boole doi vdi van de P = NP 278 4.3.1 Mach Boole doan nhan ngon ngii 279 4.3.2 Cach chiing minh khac cho Dinh ly Cook-Levin289 . Bai tap 292 5 Cac giai phap 295 5.1 Tinh toan kinh luan 296 5.1.1 Thdi gian va khong gian kinh luan 298 5.1.2 Vg trat tii thdi gian da thiic 304 5.2 Tinh toan song song 305 5.2.1 Cac mach Boole dong bo 305 5.2.2 Ldp phiic tap NC 308 5.2.3 Tinh P-day du 311 X MUC LUC 5.3 Thuat toan xac suit 312 5.3.1 May Turing xac suat va Idp BPP 312 5.3.2 Tinh nguyen to 316 5.3.3 Cac chuong trinh phan nhanh 324 5.4 Thuat toan xap xi , 331 5.4.1 Bai toan tap bao quat nho nhat 333 5.4.2 Bai toan do thi con day du Idn nhat 336 5.5 Phan tich xac suat cac thuat toan 338 5.5.1 Hieu suit hau chac chan cua thuat toan . . 343 5.5.2 Do phirc tap thdi gian trung binh da thiic . 353 Bai tap 357 Tai lieu tham khao . ; ,^ 359 Ky hieu va Tuf khoa 363 ChLfdng 0 McT dau Trirdc khi muon tim higu ki mot chu de nao do, c6 le tot nhat \k hay xem xet mot each khai quat nhflng net ca ban cua chu de ay. B6i vay, muc tieu tM nhat cua Chuong Md dau la gidi thieu sd luoc ve ly thuygt do phutc tap tinh toan, bao gom: su ra ddi cua ly thuyet nay, vi tri cung nhu moi tucing quan gifla no v6i cac chu de khac trong ciing mot llnh vuc - ly thuyet tinh toan, va cuoi cung la gidi thieu noi dung chinh cua ly thuyet do phirc tap tinh toan, do la viec phan chia cac bai toan thanh cac Idp theo "dO phiic tap" cua thuat toan giai chiing. Dg CO the phan Idp d6i vdi cac bai toan thuoc nhigu linh vuc khac nhau, ly thuyet do phutc tap tinh toan xem xet cac bai toan theo mot thg thong nhat, nhd do dign dat chung bang ngon ngiJ hinh thufc va tien hanh giai chung trgn cung mot mo hinh tinh toan. Do do, myc tieu tM hai cua chuong nay la trinh bay each tiep can cua ly thuyet do-phiic tap tinh toan doi vdi cac bai toan noi chung. Trudc khi cu the hda cac muc tigu vtta ngu, giong nhu cac tai lieu chuyen khao khac, ta hay bat dau bang viec gidi thieu mot so thuat ngu: va khai niem toan co ban; dac biet la cac khai niem ve ngon ngU hinh thitc, dd thi va logic Boole. Chung khong chi can thiet cho viec cu thg hoa muc tigu de ra ma con duoc sii dung thudng xuyen trong tai lieu nay. 2 Md dau 0.1 Cac thuat ngvt va khai niem 0.1.1 Tap hgfp TSiP hop Ih mot khai niem co ban cua toan hoc vk khong thi dinh nghia duoc mot each chinh xac. Theo true quan, tap hdp (hay c6n diroc goi tat la tap) bao gom cac doi tuong c6 thg thuoc mot hay nhi^u chung loai khae nhau, chang han nhir cac eon so, cdc ky tu va kg ca cac do vat, v.v M5i doi tuong do duoc goi la phcin tH hay la thanh vien cua tap hop. Cac tap hop thudng duge ky hieu bdi cac chu: cai La tinh A,B,C, , hoac hdi cac chii cai Hy Lap c6 nhir r, E, f), Dg bilu thi "x la phan tijf cua tap hop E" ta dung ky hieu x G E (doc la "x thuoc E"). Trong trudng hop nguoc lai, khi "y khong la phan tii cua E", ta viet y ^ E ("y khong thuoc E"). Tap hop dugc thg hien bang nhieu each khae nhau. Caeh don gian nhat la liet kg tat ca cac phan tii cua tap hop ay roi dg vko gifla hai'dau ngoac nhgn. Thi du, E = {3,5,15,a,i,c,«} la tap hop bao gom cac so 3,5,15, cac chii cai a, b, c va ky ttr [t- Ta CO 3 e E va 5 6 E, con 35 ^ E, v.v Viee mo ta tap hop b^ng each liet kg tat ca cac phan tiJf cua no doi khi khong don gian doi vdi nhiing tap hop bao gom nhieu phan tijf, dac biet la tap v6 han - tap vdi vo so cac phan tii. Tuy nhign, dg mO ta tap vo han, ta c6 thi diing dau ba eham " " vdi nghia thong thudng la "cac phan tii con duoc tiep tuc liet kg mai mai". Chang han, b^ng each nay ta dign ta tap cdc s6 tii nhien N va tap cdc so nguyen Z nhu sau: < N = {i,2,3, } Z = { ,-2,-1,0,1,2, }. Rlt tiee cdeh mo ta "true giae" tren chi dting doi vdi loai tap hop dugc ggi la tQp dim dU0c trong ly thuyet tap hgp. 0.1 Cdc thuat ngU va khai niem 3 Mot each thong dung hon, tap hgp dugc dign ta bang each bilu thi dac tinh cua cac phan tijt tao nen tap hgp iy, ta eo thg viet { X I X CO dac tinh nao do }. Thi du, tap cac so chinh phuong dugc dign ta bdi { n \ = vdi mot m nao do thuoc N }. Dg mo ta eac tap philc tap hgn, ngudi ta con dung cac phep toan va cac each xay dung khae. Do day khong phai la mot giao trinh ve ly thuygt tap hgp, ngn chung toi se khong di sau vao cac khia canh do. Nhan thg ta ky hieu tap cdc sd hitu ti va tap cdc s6 thiic tuong ling la Q va R. Cac ky hieu Z+, Q+ va R+ dugc dung dg chi cdc tap nhflng s6 khong am thuoc Z, Q va R tuong ling. Tap khong ehiia phan tii nao dugc ggi la tap rSng va dugc ky hieu la 0. Hai tap hgp A R dugc coi la bang nhau, va dugc ky hieu la A = R,neu chung gom cac phan tiJt nhu nhau. Trong trudng hgp ngugc lai, chiing dugc coi la khdc nhau va dugc ky hieu \h A ^ R. Doi vdi hai tap hgp A vk R, ta. noi rang A la tap con cua R, va ky hieu Ik A C B hoac R D A,neu m5i phan tii cua A eung deu la phan tii cua R. Ta eon noi f&ng A la tap con thtXc sytcna. R, ky higu la /I C ngu /I la tap eon cua R va khae R. Tap hdp tdt ca cdc tap con cua R dugc ky hieu lkV{R). Cho hai tap Avk R. Hdp cua AvkR, dugc ky hieu \kAuR,\k tap bao gom tat ca eac phan tii thuoc A hoac thuoc R. Giao cua A va S, dugc ky hieu IkAOR, la tap bao gom cac phan tii eung thuOe A va thuoc R. Hieu cua Avk R, dugc ky hieu la >1 \a tap bao gom cac phan tii thuoc A va khong thuoc R. AUR AnR Hinh 0.1 Hgp, giao va hieu cua hai tap hgp

Ngày đăng: 16/07/2015, 19:36

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

Tài liệu liên quan