Giải thuật di truyền và ứng dụng đối với bài toán vận tải

96 23 0
Giải thuật di truyền và ứng dụng đối với bài toán vận tải

Đ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

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - VŨ THỊ KHÁNH TRÌNH GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG ĐỐI VỚI BÀI TOÁN VẬN TẢI Chuyên ngành: Khoa học máy tính Thái Nguyên - 2014 i L˝I CAM OAN Sau qu¡ tr…nh håc t“p ti Trữớng i hồc Cổng nghằ thổng tin v Truyãn thổng, vợi nhng kin thức lỵ thuyt v thỹc h nh  tch lụy ữổc, vợi viằc dửng cĂc kin thức v o thỹc t, em  tỹ nghiản cøu c¡c t i li»u, c¡c cỉng tr…nh nghi¶n cøu, çng thíi câ sü ph¥n t‰ch, tŒng hỉp, óc k‚t v ph¡t tri”n ” ho n th nh lu“n v«n thc sắ ca mnh Em xin cam oan lun vôn n y l cỉng tr…nh b£n th¥n em tü tm hiu, nghiản cứu v ho n th nh dữợi sỹ hữợng dÔn ca thy giĂo, TS Vụ Vinh Quang ThĂi Nguyản, thĂng nôm 2014 Hồc viản Vụ Th Kh¡nh Tr…nh ii L˝IC MÌN Trong thíi gian hai n«m ca chữỡng trnh o to thc sắ, õ gn mºt nßa thíi gian d nh cho c¡c mỉn håc, thíi gian cỈn l⁄i d nh cho vi»c lüa chån lun vôn, giĂo viản hữợng dÔn, trung v o nghiản cứu, vit, chnh sòa v ho n thiằn lun vôn Vợi qu thới gian nhữ vy v vợi v tr‰ cỉng vi»c ang ph£i £m nh“n, khỉng ri¶ng b£n thƠn em m hu ht cĂc sinh viản cao hồc muŁn ho n th nh tŁt lu“n v«n cıa m…nh trữợc ht ãu phÊi cõ sỹ sp xp thới gian hổp lỵ, cõ sỹ trung hồc v nghiản cứu vợi tinh thn nghiảm túc, nỉ lỹc ht mnh; ti‚p ‚n l câ sü ıng hº v• tinh thƒn, sỹ giúp ù vã chuyản mổn - mt nhng i•u ki»n khỉng th” thi‚u quy‚t ành ‚n vi»c th nh cỉng cıa lu“n v«n ” ho n th nh ữổc lun vôn n y trữợc tiản em xin gòi lới cÊm ỡn sƠu sc n thy giĂo hữợng dÔn TS Vụ Vinh Quang, l ngữới nh hữợng ni dung, hữợng phĂt trin ca lun vôn v cõ nhiãu ỵ kin õng gõp quan trồng vã nhng vĐn ã chuyản mỉn cıa lu“n v«n, gióp em th¡o gï kàp thíi nhng vữợng mc quĂ trnh l m lun vôn Em cơng xin ch¥n th nh c£m ìn c¡c thƒy, cỉ gi¡o Tr÷íng ⁄i håc Cỉng ngh» thỉng tin v Truyãn thổng v bn b lợp  cõ nhng ỵ kin b ch lun vôn ữổc ho n thiằn hỡn Xin cÊm ỡn gia nh, ngữới thƠn, ỗng nghiằp luổn quan tƠm, ng h vã tinh thn suŁt thíi gian håc t“p v ho n th nh lun vôn Em xin hứa s c gng tỹ nghiản cứu, nƠng cao nông lỹc chuyản mổn ca mnh sau ho n th nh lu“n v«n n y s cõ hữợng trung nghiản cứu sƠu hỡn, tip tưc ho n thi»n lu“n v«n n y ” câ nhœng øng dưng thi‚t thüc thüc t‚ Th¡i Nguy¶n, thĂng nôm 2014 Hồc viản Vụ Th KhĂnh Trnh iii MƯC LƯC Líi cam oan i Líi c¡m ìn ii Danh möc c¡c chœ vi‚t t›t vi Danh möc c¡c b£ng vii Danh möc c¡c h…nh viii L˝I M— U Ch÷ìng B i to¡n v“n t£i 1.1 B i to¡n quy ho⁄ch tuy‚n t‰nh 1.1.1 Mæ h…nh mºt sŁ b i to¡n thüc t‚ 1.1.2 B i to¡n quy ho⁄ch tuy‚n t‰nh 1.2 B i to¡n v“n t£i 11 1.3 Thu“t to¡n ph¥n phŁi gi£i b i to¡n v“n t£i 1.3.1 ngh¾a 13 ành 13 1.3.2 Cỡ s lỵ lun ca thut toĂn 14 1.3.3 Thu“t to¡n ph¥n phŁi 16 1.3.4 VĐn ã chồn ph÷ìng ¡n ban ƒu 17 1.4 C¡c d⁄ng kh¡c cıa b i to¡n v“n t£i 18 1.4.1 B i to¡n v“n t£i khỉng c¥n b‹ng thu ph¡t 1.4.2 B i to¡n v“n t£i d⁄ng cüc 18 ⁄i 20 Ch÷ìng Gi£i thu“t di truyãn v ứng dửng i vợi b i toĂn v“n t£i 28 2.1 Giợi thiằu vã GiÊi thut di truy•n 28 iv 2.2 C¡c kh¡i ni»m cì b£n 29 2.2.1 C¡ th”, nhi„m s›c th” 29 2.2.2 Quƒn th” 29 2.2.3 Chån låc (Selection) 30 2.2.4 Lai gh†p (Crossover) 30 2.2.5 ºt bi‚n (Mutation) 30 2.3 Mæ h…nh GA 30 2.4 C¡c tham sŁ cıa GA 32 2.4.1 Kch thữợc qun th” 32 2.4.2 X¡c su§t lai gh†p 32 2.4.3 X¡c su§t ºt bi‚n 32 2.5 Cì ch‚ thüc hi»n GA 33 2.5.1 M¢ hâa 33 2.5.2 Khði t⁄o quƒn th” ban ƒu 34 2.5.3 X¡c ành h m th‰ch nghi 34 2.5.4 Cì ch‚ lüa chån 34 2.6 Thu“t to¡n di truy•n kinh i”n 36 2.6.1 M¢ hâa 36 2.6.2 To¡n tß chån låc 36 2.6.3 To¡n tß lai gh†p 37 2.6.4 To¡n tß ºt bi‚n 39 2.7 Thut toĂn di truyãn m hõa s thỹc (RCGA) 40 2.7.1 Giỵi thi»u 40 2.7.2 C¡c to¡n tß cıa RCGA 41 2.8 Thut toĂn di truyãn vợi b i to¡n v“n t£i c¥n b‹ng 46 2.8.1 Bi”u di„n líi gi£i b i to¡n v“n t£i b‹ng v†c tì 46 2.8.2 Bi”u di„n líi gi£i b i to¡n v“n t£i b‹ng ma tr“n 51 Ch÷ìng Mºt sŁ k‚t qu£ thüc nghi»m 56 3.1 Mỉ t£ c¡c thu“t to¡n di truy•n 56 3.1.1 To¡n tß khði t⁄o 56 v 3.1.2 To¡n tß lai gh†p 58 3.1.3 To¡n tß ºt bi‚n 58 3.1.4 To¡n tß lüa chån 59 3.2 Mºt sŁ k‚t qu£ c i °t 59 Phƒn k‚t lu“n 63 T i li»u tham kh£o 64 Phƒn phö löc 65 vi DANHMÖCC CCHÚVI TT T GA Genetic Algorithm: EC - Evolutionary computation: EP - Evolutionary Programming: ES - Evolutionary Strategies: GP - Genetic Programming: CS - Classifier Systems: NST: Selection: Crossover: Mutation: Reproduction: pop_size: RCGA: Arithmetic Crossover: BLX- - Blend Crossover: UNDX - Unimodal Normal Distributed Crossover: CMX - Center of Mass Crossover: MFX - Multi-parent Feature-wise Crossover: SX - Seed Crossover: vii DANH MÖC C C B NG BÊng 1.1: Hổp ỗng ch h ng BÊng 1.2: Cü ly v“n chuy”n B£ng 1.3: Kh£ n«ng thu - ph¡t B£ng 1.4: TŒng sŁ t§n km xe rØng ‰t nh§t B£ng 3.1: K‚t qu£ sau 10 lƒn ch⁄y ngÔu nhiản BÊng 3.2: Kt quÊ sau 10 ln chy ngÔu nhiản x m;2 x m;n =b =b n Khi õ cĂc iãu kiằn 3.1.2 ToĂn tò lai gh†p Łi vỵi b i to¡n v“n t£i, thüc hi»n lai gh†p, cƒn £m b£o i•u ki»n l c¡c sinh tł cha v mµ qua ph†p lai gh†p cơng ph£i £m b£o c¡c i•u ki»n r ng buc a) v b)  ữổc ữa Mt s cĂc thut toĂn lai ghp  ữổc nghiản cứu ch÷ìng nh÷ lai gh†p sŁ håc hay lai ghp dng DIV REM ãu thọa mÂn cĂc iãu kiằn n y Do vi»c thüc hi»n vi»c lai gh†p d⁄ng DIV REM l khâ c i °t tr¶n m¡y t‰nh Do â, ta s‡ chån ph÷ìng ¡n lai gh†p d⁄ng s hồc CĂc bữợc ữổc tin h nh nhữ sau: Bữợc 1: Chồn xĂc suĐt lai ghp = 50% tức l 100, ch÷ìng tr… nh s‡ chån 50 cp cha mà ngÔu nhiản lai ghp Bữợc 2: Chồn ngÔu nhiản cha v mà: + XĂc nh v tr cĂ th cha l giĂ tr ngÔu nhiản kho£ng tł (1; 100) K‰ hi»u tr‰ cha l tr‰ a + X¡c ành tr‰ c¡ th” mà l giĂ tr ngÔu nhiản khoÊng t (1; 100) K‰ hi»u tr‰ mµ l tr‰ b ( ” £m b£o cha v mµ khỉng trịng câ th” chån a (1; 50), b (51; 100) nhiản iãu n y cụng khổng Ênh hững n thut toĂn) Bữợc 3: Tin h nh lai ghp s hồc: + + Chồn s ngÔu nhiản a1 (0; 1) Ti‚n h nh lai gh†p: CON1 = a1 BO + (1 a 1) M E CON2 = (1 a1) BO + a1 M E CĂc bữợc trản s ữổc thỹc hiằn lp li vợi 50 cp b mà 3.1.3 To¡n tß ºt bi‚n ” £m b£o cho vi»c ºt bi‚n th nh cæng tøc l sau ºt bin th vÔn phÊi Êm bÊo iãu kiằn a) v b) Trong tr÷íng hỉp n y, ta chån 59 ph÷ìng Ăn nhữ thut toĂn phƠn phi  lỹa chồn tức l i vợi mt phữỡng Ăn bĐt ký, ta s thüc hi»n chån mºt vỈng v sau â ºt bi‚n s tin h nh theo nguyản tc nhữ sau: + Chån vỈng x1;1 ! x1;n ! xm;n ! xm;1 ! x1;1 (Ta cõ th chồn cĂc loi vặng khĂc, iãu n y cơng khỉng £nh h÷ðng ‚n thu“t to¡n) + X¡c ành = min(x1;1; xm;n)tøc l gi¡ trà nhä nh§t trản vặng là + t bin: - CĂc ổ trản vặng là (x1;1; xm;n) s thảm lữổng l - CĂc ổ trản vặng chfin (x 1;n; xm;1) s bợt lữổng l Trong quĂ tr…nh ºt bi‚n, ta chån x¡c su§t ºt bi‚n l 5% 3.1.4 To¡n tß lüa chån Trong qu¡ tr…nh lüa chån, ta ln l§y h m chi ph‰ l h m ¡nh gi¡ tøc l ta s‡ chån ph÷ìng ¡n cho h m chi ph‰ l nhä nh§t Qu¡ tr…nh lüa chån câ th” thüc hi»n theo ph÷ìng ¡n nh÷ sau: Ph÷ìng ¡n 1: Tł mºt c°p cha, mà v hai ữổc sinh tữỡng ứng, ta s‡ chån c¡ th” câ h m chi ph‰ nhä hìn ÷a v o quƒn th” ” tham gia qu¡ tr…nh lai t⁄o ti‚p sau Ph÷ìng ¡n 2: Xu§t ph¡t tł 100 c¡ th” ban ƒu, sau thỹc hiằn lai ghp vợi xĂc suĐt 50% ta s‡ thu ÷ỉc 200 c¡ th” Tł 200 c¡ th” n y, ta ti‚n h nh chån 100 c¡ th” câ gi¡ trà h m chi ph‰ nhä hìn ÷a v o quƒn th” ” tham gia qu¡ tr…nh lai t⁄o ti‚p sau Nh“n x†t 3.1 Trong ph÷ìng ¡n vi»c lüa chån l ìn gi£n, c¡c ph†p so s¡nh l ‰t, hi»u qu£ khæng cao phữỡng Ăn 2, cĂc php so sĂnh l nhiãu hìn nh÷ng hi»u qu£ s‡ cao hìn Trong qu¡ tr…nh thüc hi»n s‡ c i °t c£ ph÷ìng ¡n ” so s¡nh hi»u qu£ 3.2 Mºt sŁ k‚t qu£ c i t Trong chữỡng trnh c i t trản Matlab, kch thữợc cĂ th ữổc mổ tÊ l ma tr“n x = (xi;j)3 4, sŁ c¡ th” khði t⁄o ban ƒu theo thu“t to¡n l N = 100, sŁ lƒn l°p lƒn ch⁄y l 1000 SŁ li»u cư th” thüc hi»n hai ph÷ìng ¡n c i °t nh÷ sau: Test 1: (thu“t to¡n ¡p dưng cho ph÷ìng ¡n chån låc 1) K‚t qu£ nh“n ÷ỉc t chữỡng trnh ga1.m 60 + S liằu vã cĂc kho ph¡t v kho thu: a1 = 170; a2 = 200; a3 = 180 b1 = 130; b2 = 160; b3 = 120; b4 = 140 + Ma tr“n chi ph‰: c1;1 = 20; c1;2 = 18; c1;3 = 22; c1;4 = 25 c2;1 = 15; c2;2 = 25; c2;3 = 30; c2;4 = 15 c3;1 = 45; c3;2 = 30; c3;3 = 40; c3;4 = 35 STT 10 B£ng 3.1: Kt quÊ sau 10 ln chy ngÔu nhiản Hnh 3.1: ç nghi»m t⁄i lƒn ch⁄y thø 10 Test 2: (thu“t to¡n ¡p dưng cho ph÷ìng ¡n chån låc 2) (27, 80, 24, 39; (12, 62, 70, 26; (49, 8, 109, 4; 64 (74, 29, 66, 1; 42 (118, 38, 11, 3; 10 (11, 3, 119, 37; 96 (73, 14, 81, 2; 31 (5, 50, 98, 17; 12 (126, 4, 36, 4; 0, (48, 8, 104, 10; 61 K‚t qu£ nh“n ÷ỉc tł ch÷ìng tr…nh ga2.m + SŁ li»u v• c¡c kho ph¡t v kho thu: a1 = 170; a2 = 200; a3 = 180 b1 = 130; b2 = 160; b3 = 120; b4 = 140 + Ma tr“n chi ph‰: c1;1 = 20; c1;2 = 18; c1;3 = 22; c1;4 = 25 c2;1 = 15; c2;2 = 25; c2;3 = 30; c2;4 = 15 c3;1 = 45; c3;2 = 30; c3;3 = 40; c3;4 = 35 STT 10 B£ng 3.2: K‚t qu£ sau 10 lƒn ch⁄y ngÔu nhiản Hnh 3.2: ỗ th nghiằm ti ln chy thø 10 Ph (14, 30, 102, 24; 93, (95, 10, 49, 16; 35, (19, 25, 100, 26; 110 (13, 19, 106, 32; 93, (55, 103, 6, 6; 60, 5, (1, 50, 85, 34; 115, (31, 25, 110, 4; 87, (13, 29, 113, 15; 85, (51, 105, 13, 1; 74, (54, 6, 106, 4; 59, 18 62 Nh“n x†t 3.2 Tł c¡c k‚t qu£ thüc hi»n b‹ng hai ph÷ìng ¡n, ta câ mºt sŁ nh“n x†t sau: + Thu“t to¡n lai gh†p theo ph÷ìng ¡n ch⁄y tŁc º nhanh hìn v… khỉng ph£i thüc hi»n thı tửc sp xp, nhiản kt quÊ khổng ữổc tt v… ph†p chån låc mØi lƒn ch÷a chån ÷ỉc c¡c c¡ th” tŁt nh§t + Thu“t to¡n lai gh†p theo ph÷ìng ¡n ch⁄y tŁc º ch“m hìn v… ph£i thüc hi»n thı töc s›p x‚p qua mØi lƒn chån låc Tuy nhi¶n k‚t qu£ tŁt hìn v… ph†p chån låc mØi lƒn ln chån ÷ỉc c¡c c¡ th” tŁt nh§t ” tham gia v o c¡c lƒn lai gh†p th‚ h» sau + Do l thu“t to¡n chồn lồc ngÔu nhiản nản kt quÊ cĂc ln chy l khĂc thu ữổc kt quÊ tt nhĐt ta cn thỹc hiằn chy nhiãu ln vợi mt b d liằu + Vợi d liằu vã kho ph¡t, kho thu v ma tr“n chi ph‰, thu“t to¡n ph¥n phŁi gi£i b i to¡n v“n t£i cho k‚t qu£ tŁi ÷u hìn (F (x) = 12140) v tŁc chy nhanh hỡn Tuy nhiản phữỡng phĂp n y  ữổc rĐt nhiãu ngữới sò dửng, cnh õ vợi khổng gian tm kim lợn th phữỡng phĂp n y ch⁄y tŁc º ch“m Vi»c dòng gi£i thu“t di truyãn l mun ữa thảm mt cĂch giÊi cho b i to¡n v“n t£i 63 PH NK TLU N Lun vôn  nghiản cứu vã thut toĂn di truyãn GA, thut toĂn phƠn phi i vợi b i toĂn tÊi, mt hữợng nghiản cứu ang ữổc phĂt trin lắnh vỹc tnh toĂn mãm CĂc kt quÊ t ữổc ca lun vôn gỗm: Nghiản cứu mổ h…nh cıa b i to¡n quy ho⁄ch tuy‚n t‰nh tŒng quĂt Nghiản cứu vã mổ hnh toĂn hồc ca b i to¡n v“n t£i, ph÷ìng ph¡p gi£i b i toĂn tÊi bng thut toĂn phƠn phi Nghiản cứu vã thut toĂn di truyãn tng quĂt, cĂc phữỡng phĂp m  hõa truyãn thng GA, cĂc toĂn tò lai ghp v t bin, thut toĂn di truyãn m hõa s thỹc Trnh b y lỵ thuyt cì b£n v• thu“t to¡n GA gi£i quy‚t b i toĂn tÊi cƠn bng, ã xuĐt cĂc thut toĂn v• khði t⁄o quƒn th”, lai gh†p v ºt bi‚n chi tit i vợi b i toĂn tÊi cƠn bng XƠy dỹng cĂc chữỡng trnh thỹc nghiằm mổ t£ thu“t to¡n GA gi£i b i to¡n v“n t£i trản cỡ s cĂc thut toĂn  ã xuĐt trản mổi trữớng Matlab version 7:0 Hữợng nghiản cứu tip theo cıa lu“n v«n l ph¡t tri”n thu“t to¡n GA Łi vợi b i toĂn tÊi khổng cƠn bng thu ph¡t v mºt sŁ b i to¡n quy ho⁄ch nguy¶n câ t‰nh øng döng cao thüc t‚ 64 T ILI UTHAMKH O T i li»u ti‚ng Vi»t [1] Nguyn ức Nghắa, Ti ữu hõa (Quy hoch tuyn tnh v ríi r⁄c), Nh xu§t b£n Gi¡o dưc, H Nºi, 1999 [2] Bũi Th TƠm, Trn Vụ Thiằu, CĂc phữỡng ph¡p tŁi ÷u hâa, NXB Giao thỉng v“n t£i, H Nºi, 1998 [3] Bòi Minh Tr‰, Quy ho⁄ch to¡n håc, NXB Khoa håc kÿ thu“t, H Nºi, 2001 [4] Nguy„n Anh TuĐn, Quy hoch gn lỗi - gn lêm ứng dưng v o quy ho⁄ch tuy‚n t‰nh, Nh xu§t b£n Khoa håc v Kÿ thu“t, H Nºi, 2011 T i li»u ti‚ng Anh [5] David, A.Coley (1995), An Instroduction to Genetic Algorithm [6] Eiben, E et al (1994), Genetic algorithms with multi-parent recombination PPSN III: Proceedings of the International Comference on Evolutionary Computation 78-87 [7] Charbonneau, Paul (1995), Genetic algorithms in astronomy and astrophysics, The Astrophysical Jornal Supplement Series, vol 101, pp 309-334 [8] Adam Marcryk (2004), Genetic Algorithms and Evolutionary Com-putation [9] Randy L Haupt and Douglas (1998), Genetic Algorithms in Elec-tromagnetics 65 PH N PHƯ LƯC Phư lưc 1: Ch÷ìng tr…nh gi£i b i to¡n v“n t£i theo phữỡng Ăn chồn lồc thứ nhĐt function ga1=ga1(popsize); clc; count=0; s1=170;%So luong cac luong hang phat s2=200; s3=180; d1=130;%So luong cac luong hang thu d2=160; d3=120; d4=140; c=cell(3,4,1);% Ma tran chi phi c{1,1,1}=20; c{1,2,1}=18; c{1,3,1}=22; c{1,4,1}=25; c{2,1,1}=15; c{2,2,1}=25; c{2,3,1}=30; c{2,4,1}=15; c{3,1,1}=45; c{3,2,1}=30; c{3,3,1}=40; c{3,4,1}=35; % Khoi tao Quan the ban dau sd=cell(3,4,popsize); 66 x=cell(3,4,popsize); dem=0; for h=1:popsize % Dong sd{1,1,h}=randint(1,1,[0,min(s1,d1)]); sd{1,2,h}=randint(1,1,[0,min(s1-sd{1,1,h},d2)]); sd{1,3,h}=randint(1,1,[0,min(s1-sd{1,1,h}sd{1,2,h},d3)]); sd{1,4,h}=s1-(sd{1,1,h}+sd{1,2,h} +sd{1,3,h}); % Dong sd{2,1,h}=randint(1,1,[0,min(s2,d1-sd{1,1,h})]); sd{2,2,h}=randint(1,1,[0,min(s2-sd{2,1,h},d2-sd{1,2,h})]); sd{2,3,h}=randint(1,1,[0,min(s2-sd{2,1,h}-sd{2,2,h},d3sd{1,3,h})]); sd{2,4,h}=s2-(sd{2,1,h}+sd{2,2,h}+sd{2,3,h}); % Dong so sd{3,1,h}=d1-sd{1,1,h}-sd{2,1,h}; sd{3,2,h}=d2-sd{1,2,h}-sd{2,2,h}; sd{3,3,h}=d3-sd{1,3,h}-sd{2,3,h}; sd{3,4,h}=d4-sd{1,4,h}-sd{2,4,h}; if sd{3,4,h}>=0; % Neu ca the hop le thi bo sung vao quan the dem=dem+1; x(:,:,dem)=sd(:,:,h); end; end; popsize=dem; % Kich thuoc quan the thuc te sau khoi tao for h=1:popsize sd(:,:,h)=x(:,:,h); end; min_ga=10^7 while countFitness(i) min_ga1=Fitness(i); sdmin(:,:,1)=sd(:,:,i); end; if min_ga1=0; % Neu ca the hop le thi bo sung vao quan the dem=dem+1; x(:,:,dem)=sd(:,:,h); end; end; popsize=dem; % Kich thuoc quan the thuc te sau khoi tao for h=1:popsize sd(:,:,h)=x(:,:,h); end; % Bat dau thuc hien thuat toan GA min_ga=10^7 ; while count

Ngày đăng: 25/12/2020, 09:09

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan