You are on page 1of 24

Li ni u

Nhng nm gn y, cng vi s pht trin ca khoa hc k thut, ngi ta gii quyt c nhiu bi ton hc ba bng my tnh. Nhng bn cnh , vn cn kh nhiu cc bi ton vn cha tm c gii thut ph hp gii n, l cc bi ton ti u, tr tu nhn to v cc bi ton xut pht t thc t cuc sng nh bi ton lp lch, bi ton iu khin Robot, bi ton ngi du lch,... y l cc bi ton c kh nhiu rng buc phc tp, khng r rng, ko gian tm kim ln. Do cc phng php truyn thng nh quay lui vt cn, leo i, m phng luyn thp, t ra t hiu qu, v ngi ta s dng mt phng php kh ti u l phng php CHC v s dng trong m hnh song song. Trong bi nghin cu ny nhm tc gi nghin cu v phng php CHC s dng m hnh song song gii quyt bi ton MAXSAT. Chng ta s thy c s ti u khi s dng m hnh song song so vi m hnh tun t v thi gian, thch nghi Trong tng lai nhm s tip tc pht trin ti nghin cu bng cch s dng thut ton gii quyt mt s bi ton khc. Nhm tc gi xin chn thnh cm n s gip tn tnh ca thy gio Trung Kin gip cho nhm trong qu trnh thc hin. Cui cng xin chc hi ngh nghin cu khoa hc ca chng ta thnh cng rc r.

H Ni, thng 04 nm 2008. Nhm tc gi.

MC LC
[2]. Sushil J. Louis, A Genetic Algorithm.........................................................................23 [3]. Helmut Pekari and Robert Clariso, MALLBA: instantiating SAT and MAXCUT....24 [4]. M.B Menai Dpartement dinformatique, Extremal Optimization for Max - SAT. 24

BO CO KHOA HC
ti:: PHNG PHP CHC SONG SONG

Chng I: Tng quan v phng php CHC


I. Tm hiu chung v thut ton di truyn Gii thut di truyn l k thut gip gii quyt bi ton bng cch m phng theo s tin ho v u tranh sinhh tn ca sinh vt trong t nhin theo thuyt tin ho mun loi ca Darwin. Mc tiu ca gii thut di truyn: gii thut di truyn khng a ra li gii ti u m l a ra li gii gn ng (tng i ti u). Bn cht ca thut ton di truyn l bi ton tm kim da theo qui lut ca qu trnh tin ho t nhin. Thut ton di truyn kt hp s sng st ca cu trc kho nht trong s cc cu trc biu din cc nhim sc th (NST) vi s trao i thng tin c la chn ngu nhin to thnh mt thut ton tm kim. Thut ton di truyn s dng cc biu din nh phn kt hp vi s m hnh ho s chn lc, lai ghp v t bin. ng dng ca thut ton di truyn: + Trong tin hc: xy dng chng trnh tin hc c bit nh tr tu nhn to hng dn ngi s dng trong lnh vc gio dc, qun tr. + Trong cc cng vic khc: ng dng gii bi ton sp xp thi kho biu, iu khin robot, bi ton vn ti, bi ton th

II. Tng quan v phng php CHC 1. Khi nim CHC l gii thut di truyn phi truyn thng kt hp chin lc chn lc (da trn nhng c th n l tt nht) a ra con lai tt nht khc vi c cha v m. 2. T tng ca thut ton CHC CHC l t vit tt ca cross generational selection, Heterogeneous recombination, and Cat aclysmic mutation. Gii thut CHC c pht trin bi Eshelman (1991) c trnh by nh hnh v:

CHC la chn mt trang ca qun th c kch c ( =50) nhng thay v chn nhng cha m tt ti kt hp ging cch lm ca gii thut gi truyn, cha m c chn mt cch ngu nhin mt cp duy nht v iu kin sinh ra con chung. Gii thut sau s chn tp c th tt nht t cha m c kt hp v qun th con c sinh ra th h tip theo. V vy gii thut CHC s duy tr c qun th tt nht m c bt gp qua qu trnh tm kim. Cha m khng c php giao phi nu nh chng khng c s khc bit thch ng nh c xc nh bi ngng giao phi lin tc gim. Ton t cho (crossover) c s dng bi CHC l ton t HUX, vi HUX l i din cho crossover mt na khng i. Ton t HUX m bo chnh xc mt na ca s bit khc nhau gia cha m c trao i sn sinh ra con ci.

CHC khng c s dng cc ton t t bin trong trng hp thng thng, v thc t cng vi nhng qun th nh trong CHC v s la chn th h giao lm cho qun th c hi t nhanh chng. Khi qun th c hi t, CHC s c khi ng li tng phn bi vic sao chp bi thnh vin tt nht ca qun th hin ti sang mt qun th mi v sinh ra phn cn li ca qun th mi vi nhng phin bn c bin i t (35% ca cc bit) ca thnh vin tt nht ca qun th hin ti. 3. S Chn lc Elitist Trong sut s chn lc cho vic sinh sn thay v s thin v chn lc C(t) cho vic sinh sn hn v li ch ca nhng thnh vin thc hin tt hn trong qun th cha m P(t-1). Mi thnh vin ca P(t-1) c sao chp thnh C(t) v c ghp i mt cch ngu nhin. (Ni cch khc, C(t) ng nht vi P(t-1) ngoi tr khi trt t ca cc cu trc b thay i). Mt khc, trong sut giai on chn lc sinh tn thay v thay th qun th cha m c P(t-1) bng qun th con C(t) hnh thnh P(t), th h con mi c to ra phi c cnh tranh vi cc thnh vin ca qun th cha m P(t-1) cho s sinh tn - v d cnh tranh chnh l th h lai. C th hn, cc thnh vin ca P(t-1) v C(t) c ho trn v c xp hng theo s thch hp, v P(t) c to ra bng vic chn lc M tt nht (trong M l kch thc qun th), cc thnh vin ca qun th c ho trn. (Trong cc trng hp m mt thnh vin ca P(t-1) v mt thnh vic ca C(t) c s thch hp ging nhau, thnh vin ca P(t-1) c xp hng cao hn). Ta s gi th tc gi li cc thnh vin c xp hng tt nht ca cc qun th con v qun th cha m c xo trn l s chn lc elitist bi v n m bo rng cc c th M tt nht s lun sng st. Mt vi s chn lc sinh tn thin v tnh thch hp s dng ca gii thut di truyn khc - Whitleys GENITOR (1989), Syswerdas Steady State GA (SSSGA(1989), v Ackleys Iterated Generic Search(IGS) (1987). CHC khc vi tt c ba loi gii thut ny trong vic cnh tranh sinh tn l th h lai-th h con ch thay th mt thnh vin ca qun th cha m nu n tt hn. Hn na, khng ging nh ba gii thut ny, CHC vn hnh trong cc chu k th h vi rt
5

nhiu bn i ch khng phi ch mt bn i cho mi chu k. S tin cy duy nht i vi s chn lc sinh tn cho s thin lch ca n v li ch ca nhng c nhn thc thi tt hn hn v cng phn bit n vi GENITOR v SSSGA nhng khng phi l IGS. Cui cng, phng php c da trn s xp hng tt yu ca vic thc hin s chn lc phn bit n vi SSGA V IGS nhng khng phi l GENITOR. 4. Trnh s giao phi gn S tng trng theo s m ca cc trng hp lc tt th c gi tr t hn nu n dn n s quy t cn non. Mt trong nhng hu qu ca php lai mt na bit khc nhau gia cc th h cha m l s nguy c ca s hi t cn non s gim i. Thm ch mi th h th th h con chu gn y nht giao phi vi mt trong nhng t tin u tin (con ging nhau trong mi ln). N s mang cc th h log2h quy t (trong vng 1 bit) n t tin u tin h l khong cch tn hiu gia cc th h cha m u tin. Mc khc, trong trng hp ca php lai hai im hai th h con s khc so vi th h cha m gn nht ca n (c o bi khong cch tn hiu) bng s lng dao ng t 1 bit cho n khng qu mt na chiu di ca chui L. Chnh v vy, thi gian di nht m n c th to ra s quy t trong vng 1 bit ca t tin ca n l cc th h log2h v thi gian ngn nht l mt th h. Tt nhin, th h con khng c giao phi li vi mt trong nhng t tin xa ca n nhng bi v cc c th tt hn s c nhiu hu du hn. V vy, s rt hp l khi mt c th c giao phi vi mt trong nhng h hng gn nht ca n. Cho n by gi, iu ny dn n vic lai cc c th m chia s rt nhiu Alen, s thng d i vi s ti t hp nhanh chng thoi ho. Mc d lun lun lai mt na nhng s khc nhau( s dng HUX) s lm chm i qu trnh ny nhng i khi cc c th c ghp i li c mt vi s khc bit. Nu mt hay hai th h con sng st i vi s giao phi ny th n chc chn s vic nh vy cng s xy ra th h k tip. CHC c mt c ch b sung lm chm li tc ca s quy t- mt c ch gip trnh s giao phi gn. Trong sut thi k sinh sn, mi thnh vin ca
6

qun th cha m c chn mt cch ngu nhin m khng thay th v c ghp i cho vic giao phi. Tuy nhin, trc khi giao phi th khong cch tn hiu gia cc th h cha m tim nng c tnh ton, v nu mt na khong cch ( khong cch tn hiu ca cc th h con c mong i t cc th h cha m) s khng vt qu ngng khc nhau. Chng khng c giao phi v b loi ra t qun th con.(ngng khc nhau c thit lp phn bt u cho n L/4). Chnh v vy, ch mt phn qun th c giao phi to ra th h con mi trong bt k th h no. Khng c th h con no c chp nhn vo qun th cha m ( hoc l bi v khng c bn giao phi tim nng hay bi v khng mt th h con no tt hn qun th cha m), th ngng khc nhau s b gim i. Hu qu ca c ch ny l ch c cc qun th cha m tim nng v a dng hn c giao phi nhng s a dng c i hi bng ngng khc nhau t ng gim khi qun th quy t mt cch t nhin. S lng nhng con sng st cho mi th h s c xem l thch hp nht trong sut qu trnh tm kim bi v khi CHC gp kh khn trong vic tng tin trnh th ngng khc nhau s gim xung nhanh hn khong cch tn hiu trung bnh c nhiu c nhn hn c nh gi. Ngc li, khi CHC c xem l d dng to ra th h con m sng st th ngng khc nhau s gim t l thp hn v s lng cc con giao phi cng s gim.

Chng II: Xy dng khung thut ton CHC


Vic xy dng khung thut ton c ngha rt quan trng trong qu trnh lp trinh. N cho php nhiu ngi dng khai thc hiu qu nht nhng gii thut cng nh

c s d liu nh nhng khung thut ton c sn. Mt s tiu ng dng ca khung thut ton: H tr thit k ti a v kh nng ti s dng code: Khung phi cung cp cho ngi dng ton b kin trc ca phng php gii quyt bi ton ca h. Hn na cc lp trnh vin c th ti s dng cc on code

c. Do ngi dng ch cn pht trin mt on code nht nh cho vn . Tin ch v kh nng m rng: Khung phi cho php ngi dng i qua mt s lng ln cc gii thut c gi quyt, cc vn , cc m hnh song song c a ra. N c kh nng cho php ngi dng d dng thm hoc thay i cc c tnh/ gii thut m ko cn lin quan n cc thnh phn khc. Gip cho ngi sau th nghim bai ton trn mi trng song song. Tnh linh ng: Khung h tr nhiu kin trc phn cng v phn mm khc nhau nn p ng c mt s lng ln ngi dng.
I.

Thit k khung thut ton CHC

Cu trc chung ca thut ton CHC:


1 t = 0 2 initialize P(t) 3 evaluate structures in P(t) 4 while not end do 5 6 7 8 9 10 11 t = t + 1 select: C(t) = P(t-1) recombine: C'(t) = 'incest prevention' + HUX(C'(t)) evaluate structures in C'(t) replace P(t) from C''(t) and P(t-1) if convergence(P(t)) diverge P(t)

Khung thut ton gm hai phn c bn l Provides v Requires. Lp Provided thc thi pha bn trong khung bao hm cc th tc chung cho cc bi ton gii bng gii thut di truyn. Thng thng i vi mi gii thut th thng c mt s gii php, tt c cc m hnh tun t c nhm vo lp Solver_Seq. Cc m hnh song song c nhm vo cc lp Solver_Lan v Solver_Wan.
8

Lp Required ch nh thng tin lin quan n vn (bi ton). cho ton b khung hot ng th cc lp ny phi c b xung thng tin v bi ton ph thuc .

1.

Cc lp i hi (Requires)

Cc lp i hi c s dng lu tr d liu c bn ca thut ton. Ta c th hnh dung cc lp Requre c xy dng ging nh mt ci sn, ci mu, v i vi tng bi ton c th li phi p thm nhng thng tin ring ca bi ton cho hon chnh. Nhm cc lp Requires bao gm cc lp sau: Lp bi ton (Problem) Din t thng tin bi ton cn gii quyt. Di y l cc th tc chnh trong lp bi ton Trong : - Ton t chng cout: a ra cc thng s ca bi ton pbm theo lung os. - Ton t chng cin: nhn vo cc thng s ca bi ton pbm t lung is. Lp li gii (Solution) Lp li gii din t li gii ca bi ton, trong qu trnh tin ho, chng ta lun duy tr mt qun th cc li gii c th ca bi ton v p dng cc thao tc ca qu trnh tin ho li gii trn qun th tm ra li gii ti u cho bi ton. Di y l cc th tc chnh trong lp li gii: Trong - operator<< a ra cc thng s ca mt li gii theo os. - operator>> nhn vo cc thng s ca mt li gii theo lung is. - char *to_String(): Chuyn nhim sc th biu din li gii thnh mt xu k t - to_Solution(char *_cadena_) : Hm to ra mt i tng li gii t mt xu k t. - initialize(): Hm khi to b gi tr ngu nhin cho cc phn t trong li gii - fitness (): Hm tnh thch nghi lm c s nh gi li gii.

Lp ton t ngi s dng (Uer_Operator) Tha k t lp Intra_Operator. Lp kim tra iu kin dng (StopCondition)
9

xc nh iu kin dng ca bi ton, trong tng bi ton th iu kin dng s khc nhau, thng cn c vo mt hoc mt vi tham s nh s th h, thi gian chy, cc iu kin c th ca bi ton...

2.

Cc lp cung cp (Provided)

Bao gm cc th tc chung cho cc bi ton gii bng gii thut CHC. Ta c th hnh dung cc lp loi provide ging nh mt th vin, v khi gii cc bi ton ch vic gi n ra. Lp thit lp tham s u vo (SetUpParams) Lp ny cha cc th tc thit t cc tham s cho bi ton nh nu trn v cho cc ton t ca gii thut t 1 file u vo: oindependent_runs : s ln thc hin qu trnh tin ha trong mt ln thc hin chng trnh opopulation_size : kch thc qun th onb_evolution_steps : s bc tin ha oselect_parents : phng thc la chn cha oselect_offsprings : phng thc la chn con ocombine : c kt hp qun th c hay ch la chn t qun th mi. oHm istream& operator>> (istream& is, SetUpParams& setup) c nhim v thit t cc tham s cho bi ton. C th, n nhn vo cc thng s cu hnh t mt file d liu (file ny s c gi l file cu hnh), da vo cc thng s nhn vo ny m chng trnh s chn phng php la chn dng trong bi ton (trong 5 phng php la chn k trn), tham s la chn du hiu dng ca thut ton, ... lm c s cho cu hnh ca gii thut gii bi ton. Lp qun th (Population) Lp ny lu tr cc thng tin v qun th cc nhim sc th. Di y l cc th tc chnh trong lp qun th. Trong : oEvaluate(Solution *sol, struct individual &_f) : to ra c th _f ( thch nghi, v tr ) tng ng vi nhim sc th sol. oinitialize() : Sinh ra mt tp cc c th mi trong qun th

10

oevolution() : Tin ha qun th bng cc phng php: la chn, lai ghp, t bin. oevaluate_parents() : To ra mt mng cha ng thch nghi ca tt c cc c th v v tr ca n trong qun th. Cng vi vic nh gi thch nghi ca cha tt nht, cha ti nht v gi tr trung bnh oevaluate_offsprings() : To ra mt mng cha ng thch nghi ca tt c cc c th v cc con cng v tr ca n trong qun th. oselect_parents() : La chn cha tin hnh lai ghp, s dng mt trong 5 phng php tin hnh la chn. oselect_offsprings() : La chn cc c th cho qun th mi. C hai phng php hoc l ch la chn t qun th mi (combine = 0) hoc l la chn t qun th mi v qun th c (combine = 1) Hm quan trng nht trong lp ny l hm evolution(), n thc hin cng vic tin ho qun th hay sinh qun th mi qua cc php chn lc, lai ghep, t bin nh trn tm hiu. Lp la chn (Selection) thc hin vic chn lc cc c th c thch nghi cao cho vo b lai ghp thc hin cc php bin i cho ra mt qun th mi c thch nghi cao hn. Di y l cc th tc chnh trong lp la chn. Trong : oprepare: thc hin vic chun b cc iu kin cho vic tin hnh chun b, mi phng php chn la th yu cu chun b ny s khc nhau. oselect_onechn mt c th trong qun th cho vo b ghp i, vic chn la ny l ngu nhin theo xc xut chn la c tnh t thch nghi, cch tnh ny tu thuc theo tng phng php chn la. C 5 lp k tha t lp Selection tng ng vi 5 phng php la chn ph bin Trong : oSelection_Tournament : la chn cnh tranh, nh gii thiu trong phn l thuyt chng I. oSelection_Roulette_Wheel : La chn bnh xe s.

11

oSelection_Rank : La chn theo danh sch xp loi. oSelection_Best : La chn tt nht. oSelection_Worst : La chn ti nht . Lp ch nh ton t s dng (Intra_Operator): xc nh php bin i qun th l lai ghp hay t bin theo xc xc xut lai ghp v t bin cho. Hm ny gm c cch thuc tnh v phng thc chnh: - int _number_operator: s hiu ca ton t p dng, c quy c l bng 0 nu ton t l Crossover, bng 1 nu ton t l Mutation. - probability: xc xut (lai ghp hay t bin) - Intra_Operator *create(unsigned int _number_op): to ra mt i tng thuc lp Crossover hoc Mutation tu theo tham s truyn vo (unsigned int _number_op) l 0 hay 1.. - operator<< (ostream& os, const Intra_Operator& intra): Hm a ra cc thng s v i tng c to ra hm creat Lp nh ngha giao din ton t (Inter_Operator) Cung cp nhng lp nh ngha giao din chung cho nhiu ton t m c to nn t hai phng thc chnh: Setup, c cu hnh ca ton t v execute, ng dng ton t. Lp lai ghp (Crossover) thc hin vic lai ghp cc li gii vi nhau to ra cc li gii mi. Di y l cc th tc chnh trong lp lai ghp. Trong : - cross(Solution &sol1,Solution &sol2): hm lai hai li gii vi nhau to ra cc li gii mi. - execute(Rarray<Solution*>& sols) : lai ghp 2 c th lin tip nhau trong qun th sols[] (mt mng cc c th Solution). Trong hai hm ny th hm Excute l chung cho mi bi ton, v ta ch cn khai trin li hm Cross khi lm vic vi cc bi ton c th. Ngoi ra cn cc hm - setup(char line[MAX_BUFFER]) : nhn vo xc xut lai ghp Probability. - RefreshState(const StateCenter& _sc) : thit lp li cc tham s phc v cho vic lai ghp.
12

- UpdateFromState(const StateCenter& _sc) : cp nht cc tham s chung ca bi ton sau mt qu trnh lai ghp: qun th li gii, cc thng tin trong qun th, ... Lp Statistics Lp ny thng k nhng vt trng thi hin thi. a ra th t vt, qu trnh tin ho, chi ph tt nht, chi ph tng cng tt nht, gi tr trung bnh, Lp OperatorPool cung cp mt giao din chung s dng bt c ton t.Ton t ny quan tm n nhng thay i ca cc gii php trong qun th Lp thc thi gii thut (Solver) a ra v duy tr cc thng tin c lin quan ti trng thi tm kim trong sut qu trnh thc hin. c th ni y l lp tng hp, c gi trc tip t chng trnh chnh, n s dng thnh qu xy dng c ca cc lp trnh by pha trn v l lp trung gian gia cc lp, th tc ta xy dng phc v cho qu trnh tin ho vi chng trnh thc thi vi cc bi ton c th. Di y l cc hm chnh trong lp thc thi gii thut Trong : oStartUp() : Khi to qun th, khi to gi tr cho cc bin trng thi tin ho, cc tham s cho qun th trc khi bt u mt qu trnh tin ho mi. Cp nht cc bin kim sot qu trnh chy ca c bi ton. oDoStep() : Thc hin cc cng vic trong mt bc tin ho ca qun th, cp nht li cc tham s ca qun th sau mt bc tin ho oRun () : l th tc thc hin ton b qu trnh tm kim ca bi ton da vo cc thng tin v bi ton, v cc tham s, cc iu kin u vo c c vo t 2 file l file cu hnh v file bi ton.

II. Khung thut ton tun t S dng lp bi ton tun t ca phng php CHC.
1. Hm void Solver_Seq::DoStep()
void Solver_Seq::DoStep() {

13

// tng bc lp hin thi ln 1. current_iteration(current_iteration()+1);

// gi n hm tin ho ca qun th hin thi current_population.evolution(); current_evaluations(current_population.evaluations());

// Ly nhng gi tr quan trng trong qun th hin thi

best_cost=current_population.best_cost(); // chi ph tt nht best_solution=current_population.best_solution(); // gii php tt nht worst_cost=current_population.worst_cost(); // chi ph ti nht average_cost=current_population.average_cost(); //chi ph trung bnh standard_deviation=current_population.standard_deviation();

//

time_spent_in_trial = _used_time(start_trial); = start_global + time_spent_in_trial; // tng s

total_time_spent thi gian s dng

// refresh state with these values RefreshState(); RefreshCfgState();

if( (current_iteration() % params.refresh_global_state()) == 0) UpdateFromCfgState();

_stat.update(*this); _userstat.update(*this);

14

if (display_state()) show_state(); }

Chng trnh: Solver_Seq solver(); Solver.run(); Nu l my ch (pid()= =0) th { Gi n hm hin trng thi (show_state()); a ra gii php tt nht; a ta thch nghi tt nht; } III. Khung thut ton song song - La chn m hnh phn cng: C hai m hnh l: m hnh phn cng phn tn v m hnh phn cng dng chung. + M hnh phn cng dung chung: u im: tc nhanh Nhc im: gi thnh cao. + M hnh phn cng phn tn: u im: d ci t. Nhc im: tc chm. V nhng l do trn ta s dng m hnh phn cng phn tn vic ni chuyn gia cc my tnh c d dng. Trong m hnh ny ta s dng cc th vin MPI v th vin NetStream nhm to ra s thn thin vi ngi s dng. - La chn m hnh phn mm: C ba m hnh phn mm: + M hnh ch - khch (Master_slave): y mt b vi x l n duy tr vic iu khin qua cc vng chn v s dng b vi x l khc cho vic x l cho, bin i v gi tr n l. tuy nhin gii thut ch hu ch cho mt s
15

lng nh b vi x l v mt s lng ln thi gian, mt khc mt giao tip tt lm tng kh nng ca x l song song. + M hnh o (Island model): Trong m hnh ny mi b vi x l chy gii thut tin ha mt cch c lp, s dng cc qun th ph ring bit cc b vi x l hp tc vi nhau bng vic thay i v tr mt cch u n. M hnh o c bit thch hp cho cc nhm my tnh khi giao tip b hn ch. + M hnh khuch tn (Diffusion model): mi c nhn l mt khng gian c sp xp v kt hp vi c nhn khc t mt mng ni b bn cnh. Khi x l song song c rt nhiu b vi x l giao tip vi nhau (nh l nhng c nhn giao tip vi hng xm trong mi tng tc), nhng giao tip ch trong ni b. V vy m hnh ny ch ph hp vi h thng my tnh song song ln vi mng ni b tc cao. Do ta s la chn m hnh phn mm l m hnh o (Island model). Trong m hnh ny, my ch v my khch c nhng nhim v khc nhau. + My ch: (mypid=0) thc hin lnh check_for_refresh_global_state(); + My khch: (mypid!=0)Thc hin lnh DoStep();

Chng III. S dng khung thut ton gii quyt bi ton MAXSAT
I. c file cu hnh 5 //s bc chy c lp 200 //s c lng 50 // s phn t 1 // trng thi hin th Selection-Parameters // chn lc tham s 0.9 1 0.5 //tham s chn lc , Intra-Operators// ton t p dng trong qun th 0 0.8 // xc sut lai Inter-Operators // Ton t p dng gia qun th ny v qun th khc 0 25 5 1 3 1 5 // s ton t, tc ton t, s lng c th, la chn c th gi v lp. LAN-configuration 101 // lm mi trng thi ton b
16

0 1

// 0: chy khng ng b / 1: chy ng b // khong pht sinh chn gii php t qun th khc

II. S dng khung thut ton gii quyt bai ton MAXSAT
gii quyt mt bi ton bt k trn khung CHC ca b Mallba th chng ta phi p thm code vo 4 lp i vi bi ton Mallba. Bn lp l: Problem Solution User_Statistics Stop_condition_1

i vi tng Class c th ta thm nh sau. Class problem v Solution nm trong File CHC.hh khai bo cc thuc tnh v phng thc: - lp Problem ta phi thm on code sau:

- lp Solution ta phi thm on code sau:

17

Trong File CHC.req.cc s phi nh ngha li cc phng thc sau i vi lp Problem l:

18

19

i vi lp Solution:

20

21

22

i vi lp StopCondition_1:

III.

Kt qu thc nghim

(Chng trnh chy nhng cha my chy song song nn th 6 s


trnh by sau) 1. Kt qu tun t 2. Kt qu song song

Ti liu tham kho [1]. Sergei L Kosakovsky Pond, Douglas D Richman, Simon D W Frost Genetic Algorithms for Detecting Recombination [2]. Sushil J. Louis, A Genetic Algorithm.

23

[3]. Helmut Pekari and Robert Clariso, MALLBA: instantiating SAT and MAXCUT. [4]. M.B Menai Dpartement dinformatique, Extremal Optimization for Max - SAT

24

You might also like