+ All Categories
Home > Documents > 27.090036_HoangChinhNghia_CT901

27.090036_HoangChinhNghia_CT901

Date post: 05-Apr-2018
Category:
Upload: le-huy
View: 220 times
Download: 0 times
Share this document with a friend

of 43

Transcript
  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    1/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    B GIO DC V O TOTRNG I HC DN LP HI PHNG

    iso 9001 : 2008

    BO CO TT NGHIP

    NGNH: CNG NGH THNG TIN

    a im thc tp: Trng i hc Dn lp Hi Phng

    ti:

    Tm Hiu Gii Thut Di Truyn

    ng Dng Gii Bi Ton Lp Lch

    Gio vin hng dn: Th.S Vn Chiu

    Sinh vin :Hong Chnh Ngha M s: 090036

    Lp : CT901 Kho:9

    Hi Phng,3/2009

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 1

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    2/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    LI CM N

    hon thnh bi bo co thc tp ny, trc ht, em xin cm n cc thy gio, c

    gio Khoa Cng ngh thng tin Trng i hc Dn lp Hi Phng, nhng ngi dy

    d, trang b cho em nhng kin thc chuyn mn trong bn nm hc,v gip chng em

    hiu r hn cc lnh vc nghin cu hon thnh ti c giao.

    Em xin by t lng bit n xu sc nht ti thy gio Thc s Vn Chiu, ngi

    hng dn, ch bo tn tnh em hon thnh qu trnh thc tp.

    Xin cm n bn b v gia nh ng vin c v, ng gp kin, trao i, ng

    vin trong sut qu trnh hc cng nh lm tt nghip, gip em hon thnh ti ng

    thi hn.

    Em xin chn thnh cm n !

    Hi Phng, thng 6 nm 2009Sinh vin

    Hong Chnh Ngha

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 2

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    3/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    MUC LUC

    LI M U ..........................................................................................................................4CHNG I- TM HIU V BI TON LP LCH ............................................................5

    1.1 Tm hiu chung ...................................................................................................................51.2 Cc c tnh ca bi ton lp lch .......................................................................................61.3 Bi Ton Lp Lch Thi Kho Biu ...................................................................................6

    1.3.1 Gii thiu bi ton .....................................................................................................61.3.2 D liu bi ton .........................................................................................................6

    1.4 Mt s bc c bn gii quyt bi ton lp lch thi kho biu ...................................7CHNG II-GII THUT DI TRUYN (GAs) ..................................................................8

    2.1 Tm hiu chung v Gas .......................................................................................................82.2. Cc ton t ca gii thut di truyn................................................................................................................................................. 122.3 Cc tham s ca gii thut di truyn................................................................................132.4. Cng thc ca Gii thut Di Truyn ...............................................................................142.5. Cc thnh phn ca thut gii di truyn ..........................................................................15

    2.5.1 Khi ng qun th ban u ....................................................................................15nh gi c th ...................................................................................................................152.5.3 Ton t lai ghp ........................................................................................................16Ton t t bin ..................................................................................................................162.5.5 iu kin kt thc .....................................................................................................17

    CHNG III- NG DNG GII THUT DI TRUYN VO BI TON XP LCH THIKHO BIU ..........................................................................................................................17

    3.1 Giai on 1 - xp lch hc cc lp ....................................................................................183.1.1 Chn m hnh c th ..................................................................................................183.1.2 To qun th ban u ................................................................................................213.1.3 thch nghi - chn c th .......................................................................................22

    3.1.4 Thut ton lai ghp v t bin .................................................................................233.2 Giai on 2 - xp lch hc cho ton b c s ...................................................................24

    3.2.1 Chn m hnh c th ..................................................................................................243.2.2 To qun th ban u ...............................................................................................253.2.3 thch nghi - chn c th ......................................................................................253.2.4 Thut ton lai ghp v t bin ................................................................................263.2.5 Chn im dng thut ton ......................................................................................27

    CHNG IV- THIT K H THNG LP LCH THI KHA BIU ..........................274.1 Thit k c s d liu bi ton .........................................................................................274.2 Cc i tng ca lch hc ...............................................................................................284.3 Biu din nhim sc th ....................................................................................................29

    4.4 Cc tham s ca gii thut di truyn ................................................................................304.4.1 Php lai ghp ............................................................................................................314.4.2 Php t bin .............................................................................................................35

    4.6 thch nghi ....................................................................................................................364.7 Chng trnh thc nghim ...............................................................................................39

    Kt lun v hng pht trin .................................................................................................42Ti Liu Tham Kho ..............................................................................................................43

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 3

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    4/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    LI M U

    Trong ngnh khoa hc my tnh, tm kim li gii ti u cho cc bi

    ton l vn c cc nh khoa hc my tnh c bit rt quan tm. Mc ch

    chnh ca cc thut ton tm kim li gii l tm ra li gii ti u nht cho bi

    ton trong thi gian nh nht. Cc thut ton nh tm kim khng c thng tin /

    vt cn ( tm kim trn danh sch, trn cy hoc th ) s dng phng php

    n gin nht v trc quan nht hoc cc thut ton tm kim c thng tin s

    dng heurictics p dng cc tri thc v cu trc ca khng gian tm kim

    nhm gim thi gian cn thit cho vic tm kim c s dng nhiu nhng ch

    vi khng gian tm kim nh v khng hiu qu khi tm kim trong khnggian tm kim ln. Tuy nhin, trong thc tin c rt nhiu bi ton ti u vi

    khng gian tm kim rt ln cn phi gii quyt. V vy, vic i hi thut gii

    cht lng cao v s dng k thut tr tu nhn to c bit rt cn thit khi gii

    quyt cc bi ton c khng gian tm kim ln. Thut gii di truyn (genetic

    algorithm) l mt trong nhng k thut tm kim li gii ti u p ng c

    yu cu ca nhiu bi ton v ng dng.

    Thut gii di truyn c pht minh ra bt chc qu trnh pht trin

    t nhin trong iu kin quy nh sn ca mi trng. Cc c im ca qu

    trnh ny thu ht s ch ca John Holand ( i hc Michigan) ngay t

    nhng nm 1970. Holand tin rng s gn kt thch hp trong thut gii my tnh

    c th to ra mt k thut gip gii quyt cc vn kh khn ging nh trong t

    nhin din ra-thng qua qu trnh tin ha.

    Trn th gii hin nay, Thut Gii Di Truyn kt hp vi Cng ngh thng

    tin c ng dng gii quyt nhng vn phc tp trong h thng in mt

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 4

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    5/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    cch rt hiu qu. Nhng trong ti ny, chng ta nghin cu ng dng Thut

    Gii Di Truyn xp Thi kho biu trong trng i hc.

    Ni dung bo co gm li ni u v bn chng chnh:

    Chng 1- Tm hiu v bi ton lp lch

    Chng 2- Gii thut di truyn

    Chng 3- ng dng gii thut Di truyn vo bi ton sp xp thi

    kho biu

    Chng 4- Thip k h thng lp lich thi kho biu

    CHNG I- TM HIU V BI TON LP LCH(Scheduling problem)

    1.1 Tm hiu chung

    Lp lch c th c nh ngha l mt bi ton tm kim chui ti u

    thc hin mt tp cc hot ng chu tc ng ca mt tp cc rng buc cn

    phi c tha mn. Ngi lp lch thng c gng th n mc ti a s s

    dng cc c th, my mc v ti thiu thi gian i hi hon thnh ton b

    qu trnh nhm sp xp lch.V th bi ton lp lch l mt vn rt kh gii

    quyt . Hin nay c nhiu kh nng pht trin cc k thut hin ti gii

    quyt bi ton ny. Nhng k thut bao gm: cc tip cn Tr tu nhn to

    nh h thng tri thc c s (knowledge-based systems), bi ton tho mn rng

    buc, h chuyn gia, mng Nron v cc tip cn ca cc Nghin cu hot ng:

    lp trnh tnh ton, lp trnh ng, tm kim nhnh v ng bin, k thut m

    phng, tm kim Tabu v phng php nt c chai

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 5

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    6/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    1.2 Cc c tnh ca bi ton lp lch

    Ti nguyn: l cc ngun d liu u vo ca bi ton. Cc ti nguyn

    ny c th phc hi hoc khng.

    Tc v: c nh gi qua cc tiu chun thc hin nh thi gian thc

    hin, chi ph, mc tiu th ngun ti nguyn.

    Rng buc: y l nhng iu kin cn tha mn bi ton c th a ra

    li gii tt nht

    Mc tiu: nh gi ti u ca lch trnh li gii ca bi ton.

    Khi cc mc tiu c tha mn th cc rng buc cng phi c tha mn

    1.3 Bi Ton Lp Lch Thi Kho Biu

    1.3.1 Gii thiu bi ton

    Bi ton t ra vn cn sp xp thi kho biu cho mt trng i hc

    vi nhiu c s khc nhau. Cn c s sp xp lch hc cho cc lp ti cc phng

    mi a im, sao cho va ph hp li va tin dng nht

    1.3.2 D liu bi ton Danh sch c s

    Danh sch khoa

    Danh sch kho hc

    Danh sch hc phn hc v cc lp trong hc k

    Danh sch lp hc

    Danh sch gio vin

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 6

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    7/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Danh sch phng hc

    Danh sch mn hc v s tit

    Bng phn cng gio vin ging dy ti cc lp

    Bng yu cu rng buc ca gio vin vI lch dy

    Bng yu cu rng buc ca lp vi lch hc

    Bng yu cu rng buc ca phng vi lch s dng

    phng

    1.4 Mt s bc c bn gii quyt bi ton lp lch thi kho biu

    Bc 1. Khi to d liu thi kha biu mi

    Bc 2. Nhp, iu chnh d liu gc thi kha biu

    Bc 3. Nhp, sa, iu chnh cc rng buc chnh ca thi kha biu

    Cc rng buc chnh ca thi kha biu l nhm cc d liu c nhim v

    nh hnh v khun dng ca thi kha biu. y l nhm cc lnh rt quan

    trng ca bi ton v phn mm thi kha biu.

    Bc 4. Nhp bng Phn cng ging dy (PCGD)

    Bng phn cng ging dy (hay cn gi l Phn cng chuyn mn) l phn

    d liu quan trng nht v phc tp nht ca mi thi kha biu. Bng ny ch racc phn cng c th ca thi kha biu: gio vin no dy lp no, mn hc no

    v mt tun dy bao nhiu tit

    Bc 5. Chun b xp thi kha biu

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 7

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    8/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Bc 6. Xp t ng TKB

    Bc 7. iu chnh, tinh chnh d liu thi kha biu

    Bc 8. Hon thin thi kha biu (s dng RAD)

    Bc 9. In n TKB

    Bc 10. Tng hp, thng k v truy vn thng tin thi kha biu

    CHNG II-GII THUT DI TRUYN (GAs)

    2.1 Tm hiu chung v Gas

    Genetic algorithms (thut gii di truyn) l mt gii thut m phng theo

    qu trnh chn lc t nhin, l k thut chung gip gii quyt vn bi ton

    bng cch m phng s tin ha ca con ngi hay ca sinh vt ni chung (da

    trn thuyt tin ha mun loi ca Darwin) trong iu kin qui nh sn ca mi

    trng. Ly tng t qu trnh tin ho t nhin, xut pht t mt lp cc ligii tim nng ban u, GA tin hnh tm kim trn khng gian li gii bng

    cch xy dng lp li gii mi tt hn (ti u hn) li gii c. Qu trnh xy

    dng lp li gii mi c tin hnh da trn vic chn lc, lai ghp, t bin t

    lp li gii ban u. Qun th li gii tri qua qu trnh tin ho: mi th h li

    ti sinh cc li gii tng i tt, trong khi cc li gii xu th cht i.

    Vy GAs lm g?

    Trong GA, mt tp cc bin ca bi ton a ra c m ha sang mt

    chui (hay mt cu trc m ha khc) tng t nh mt nhim sc th trong t

    nhin. Mi chui bao gm mt gii php c th ca bi ton. Gii thut di truyn

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 8

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    9/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    s dng cc ton t c sinh ra bi s chc lc t nhin mt qun th cc chui

    nh phn (hoc cc cu trc khc), m ha khong tham s trn mi th h, kho

    st cc phm vi khc nhau ca khng gian tham s, v nh hng tm kim i

    vi khong m l xc sut cao tm kim s thc hin tt hn. Thut ton ditruyn gm c bn quy lut c bn l lai ghp, t bin, sinh sn v chn lc t

    nhin

    Qu trnh lai ghp (php lai) qu trnh ny din ra bng cch ghp mt hay

    nhiu on gen t hai nhim sc th cha-m hnh thnh nhim sc th mi

    mang c tnh ca c cha ln m.

    Php lai ny c th m t nh sau:

    -Chn ngu nhin hai hay nhiu c th trong qun th. Gi s chui nhim

    sc th ca cha v m u c chiu di l m. Tm im lai bng cch to ngu

    nhin mt con s t 1 n m-1. Nh vy, im lai ny s chia hai chui nhim

    sc th cha-m thnh hai nhm nhim sc th con l m1 v m2. Hai chui

    nhim sc th con lc ny s l m11+m22 v m21+m12. a hai chui nhimsc th con vo qun th tip tc tham gia qu trnh tin ha

    Qu trnh t bin (php t bin) qu trnh tin ha c gi l qu

    trnh t bin khi mt hoc mt s tnh trng ca con khng c tha hng t

    hai chui nhim sc th cha-m. Php t bin xy ra vi xc sut thp hn rt

    nhiu ln so vi xc sut xy ra php lai. Php t bin c th m t nh sau:

    -Chn ngu nhin mt s k t khong 1 k m

    -Thay i gi tr ca gen th k

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 9

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    10/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    -a nhim sc th con vo qun th tham gia qu trnh tin ha tip

    theo

    Qu trnh sinh sn v chn lc (php ti sinh v php chn)

    Php ti sinh: l qu trnh cc c th c sao chp da trn thch nghi

    ca n. thch nghi l mt hm c gn cc gi tr thc cho cc c th trong

    qun th ca n. Php ti sinh c th m phng nh sau:

    -Tnh thch nghi ca tng c th trong qun th, lp bng cng dn cc

    gi tr thch nghi (theo th t gn cho tng c th) ta c tng thch nghi.

    Gi s qun th c n c th. Gi thch nghi ca c th th i l Fi, tng dn th

    i l Ft. Tng thch nghi l Fm To s ngu nhin F c gi tr trong on t 0

    n Fm

    -Chn c th k u tin tha mn F Ft a vo qun th ca th h mi.

    Php chn: l qu trnh loi b cc c th xu v li nhng c th

    tt.

    Php chn c m t nh sau:

    - Sp xp qun th theo th t thch nghi gim dn

    - Loi b cc c th cui dy, ch li n c th tt nht.

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 10

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    11/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Cu trc thut gii di truyn tng qut

    Bt ut =0;Khi to P(t)Tnh thch nghi cho cc c th thuc P(t);Khi (iu kin dng cha tha) lpt = t + 1;Chn lc P(t)

    Lai P(t)t bin P(t)

    Ht lpKt thc

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 11

    Bt u

    Khi to qun th

    Tho iu kin dng

    t bin

    Lai ghp

    Chn lc

    nh gi thch nghi

    M ho cc bin

    Kt qu

    Kt thc

    Khng

    Tho

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    12/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Sau y l nhng nguyn tc c bn thc hin gii thut di truyn GAs:

    B1: Khi to v m ha mt qun th ngu nhin ca NST. gi l qun th

    hin ti

    B2: nh gi thch nghi ca mi NST trong qun th hin ti.

    B3: To ra th h trung gian, thng qua chn la suy din cc NST trong qun th

    hin ti tu theo thch nghi. s l cha m ca nhng th h tip theo.

    B4: p dng ton t lai ghp v nghch o i vi nhng cp hoc NST n

    trong th h trung gian, qua s sn sinh ra mt th h NST mi. l qun th

    hin ti.

    Lp li cc bc 2-4 cho n khi mt gii php ph hp c tm thy.

    2.2. Cc ton t ca gii thut di truyn

    + Ton t chn lc

    o Chn lc da trn thch nghi.

    o Chn lc da trn s xp hng

    o Chn lc da trn s cnh tranh

    o Chn lc hng khng gian

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 12

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    13/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    + Ton t di c

    + Ton t nghch o

    + Ton t t bin

    + Ton t lai ghp

    o Lai ghp mt im (one-point crossover)

    o Lai ghp hai im (two-point crossover)

    o Lai ghp N im (N-point crossover)

    o Lai ghp ng nht (Uniform crossover)

    2.3 Cc tham s ca gii thut di truyn.

    Xc sut lai ghp: l tham s cho bit tn sut thc hin ton t lai ghp.

    Nu khng c lai ghp, c th con s chnh l bn sao ca c th cha m. Nu

    xc sut lai ghp bng 100%, khi mi c th con u c to ra qua qu trnh

    lai ghp.

    Xc sut t bin: l tham s cho bit tn sut t bin ca nhim sc th.

    Nu khng c t bin, th h con c to ra ngay sau giai on lai ghp m

    khng b thay i. Ngc li, mt hoc mt s phn ca nhim sc th s b thay

    i. Nu xc sut t bin l 100%, ton b nhim sc th s b thay i. Nu

    tham s ny bng 0%, khng c g b thay i ht

    Kch thc qun th: l tham s cho bit c bao nhiu c th (NST) trong

    1 th h ca qun th. Nu c qu t c th, kh nng thc hin lai ghp rt nh

    v khi ch c mt vng tm kim nh mi c kho st. Ngc li, vic kch

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 13

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    14/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    thc qun th qu ln cng khng tt, do n s lm chm qu trnh gii bi

    ton.

    2.4. Cng thc ca Gii thut Di Truyn

    Tnh thch nghi eval(vi) ca mI nhim sc th vi(i=1

    kch thc qun th)

    vi f(vi) l hm mc tiu

    Tm tng gi tr thch nghi ca qun th

    Tnh xc xut chn Pi cho mI nhim sc th vi

    Tnh xc sut tch lu pi cho mi nhim sc th Pi

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 14

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    15/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Tin trnh chn lc c thc hin bng cch quay bnh xe rulet kch

    thc qun th ln. Mi ln chn ra mt nhim sc th t qun th hin hnh vo

    qun th mi theo cch sau:

    Pht sinh mt s ngu nhin r trong khong [0, 1]

    Nu r < q1th chn nhim sc th v1, ngc li chn nhim sc th vi (2

    i kch thc qun th) sao cho qi-1 < r qi

    2.5. Cc thnh phn ca thut gii di truyn

    2.5.1 Khi ng qun th ban u

    To qun th u tin trong thut gii, l ni xut pht qu trnh tin ha,

    bao gm tt c cc gi tr th ban u. Ty theo vn ca bi ton m c cch

    khi ng khc nhau. Trc mt bi ton p dng thut gii di truyn, ta cn

    phi xc nh r nhim sc th v c th cho vn , v thng thng s kt

    qu cui cng. Vic phn tch s da trn kt qu l c bn nht.

    nh gi c th

    Chc chn rng vic chn c th s thng qua kt qu, hay mc ch ca

    vn . Da trn mc thch nghi ca c th, bao gm nhng vng mc m c

    th gp phi. Thng thng, t mi vn nh tng ng vi mt gi tr im

    thch nghi, kt qu nh gi gm tng cc s im . C th tt nht s c s

    im thp nht hoc ln nht.

    Theo thuyt tin ha ca Darwin, nhim sc th tt nht s tn ti v to racc c th con mi. C nhiu phng php chn cc nhim sc th tt nht.

    1) Chn lc Roulette (Roulette Wheel Selection)

    2) Chn lc xp hng (Rank Selection)

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 15

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    16/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    3) Chn lc cnh tranh (Tournament Selection)

    2.5.3 Ton t lai ghp

    Lai ghp nhm nng cao kt qu c th, do , ton t lai ghp s to iu

    kin cho tin trnh hi t nhanh hay chm. Cn ty thuc vo cch t chc v

    phn b cc nhim sc th m chng ta c xc sut lai ghp nhanh hay chm. Sau

    y l vi phng php lai ghp thng dng trong k thut di truyn:

    1) Lai ghp nh x tng phn (PMX Partial Mapped

    Crossover)

    2) Lai ghp c trt t (OX Order Crossover)

    3) Lai ghp da trn v tr (Position Based Crossover)

    4) Lai ghp da trn th t (Order Base Crossover)

    5) Lai ghp c chu trnh (CX Cycle Crossover)

    6) Lai ghp th t tuyn tnh (LOX Linear Order Crossover)

    Ton t t bin

    Cng ging nh lai ghp, ton t t bin lm tng nhanh qu trnh hi t,

    nhng tng mt cch t ngt, cng c khi s khng gy tc dng g mt khi

    khng thnh cng. Khng ai c th nh gi c phng php t bin no tt

    hn, do c mt vi phng php n gin, cng c vi trng hp kh phc

    tp. Ngi ta thng chn mt trong nhng phng php sau :

    1) t bin o ngc (Inversion Mutation)

    2) t bin chn (Insertion Mutation)

    3) t bin thay th (Displacement Mutation)

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 16

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    17/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    4) t bin tng h (Reciprocal Exchange Mutation)

    5) t bin chuyn dch (Shift Mutation)

    2.5.5 iu kin kt thcThot ra qu trnh tin ha qun th, da vo bi ton m c cc cch kt

    thc vn khc nhau, mt khi t n mc yu cu. Mt vi trng hp

    thng thng nh sau:

    -Kt thc theo kt qu: mt khi t n mc gi tr yu cu th chm dt

    ngay qu trnh thc hin.

    -Kt thc da vo s th h: chn s th h, qu trnh s dng ng ngay

    s th h qui nh trc, khng cn bit kt qu nh th no.

    -Tnh theo thi gian: khng cn bit bao nhiu th h hay kt qu no,

    ch da vo s gi qui nh m kt thc.

    -T hp: dng nhiu phng n khc nhau cho vn , chng hn nh :

    chy theo s th h xong sau nh gi cho chy theo kt qu, hoc ngc li.

    CHNG III- NG DNG GII THUT DI TRUYN

    VO BI TON XP LCH THI KHO BIU

    Vn ca bi ton kh phc tp v mt rng buc, nhng phng php

    chia tr vn l bin php hu hiu trong mi vn phc tp. y cng vy,

    theo phn cp cc rng buc m ta gii quyt bi ton xp thi kha biu ny

    thnh hai giai on khc nhau:

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 17

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    18/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Giai on 1: nhm gii quyt thnh phn rng buc mc lp hc, vi

    cc vn c bn phc tp ca nhng i tng lin quan ti vic hc ca

    lp. Khi c c kt qu cui cng l lch hc cho tng lp mt cch hon

    chnh, chng s c dng lm thng tin cho giai on sau.

    Giai on 2 : tng hp li cc rng buc cn li v c n

    gin ha trong giai on trc. Kt qu ca giai on ny chnh l mc tiu

    cui cng ca bi ton. l lch hc ca cc lp trong mt c s.

    C hai giai on tuy c mc tiu v d liu khc nhau, nhng v cch gii

    quyt c tnh tng t nhau, nn khng khc g nhiu khi p dng vo m hnh

    thut gii di truyn.

    3.1 Giai on 1 - xp lch hc cc lp

    3.1.1 Chn m hnh c th

    Lch hc ca mt lp c hai thnh phn chnh, bao gm: cc mn hc vcc gi hc trong tun. Vic t ngu nhin cc mn hc vi cc gi hc s to

    thnh mt lch hc cho tng lp. Nh vy mt lp hc tng ng s c nhiu

    lch hc khc nhau, do ta chn mi lch hc lm c th trong thut gii di

    truyn.

    V trong hai thnh phn , th cc gi hc l thnh phn n nh hn v

    s lng cng nh v gi tr ca chng, cho nn ta chn mn hc lm n vnhim sc th trong c th. V i vi mn hc vic lm nhim sc th l ph

    hp vi tnh khng n nh ca n : vi s lng cc mn ph thuc tng lp

    hc, cng ging nh s lng nhim sc th trong c th, c chiu di khng

    nht thit phi c nh hay bng nhau. Ngoi ra cha k n tnh phc tp ca

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 18

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    19/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    mn hc v s tit phi hc lun b thay i, trong khi gi tr cc gi hc th

    ngc li, c th xc nh mt cch r rng v nhanh chng.

    M hnh c th trong lch lp

    Mn

    hc 1

    Mn

    hc 2

    . . . . . . Mn

    hc n

    Thay v chn ngu nhin mn hc vo cc tit hc nh trnh by, chng

    ta s lm ngc li: chn ngu nhin tit hc theo mn, v chng ta chn mn

    hc lm n v trong c th ( theo m hnh trn ). C ngha l, vi mt c th ca

    m hnh xp lch lp, bt k thi im no, khi ta t nhim sc th u tin

    nh l mn th nht, nhim sc th k tip s l mn th hai, v tip tc cho cc

    nhim sc th cn li ... th sau ny, lc no cng theo th t y m ly thng tin

    ra, s khng c g thay i ( ngoi tr gi tr tit hc, nu nh sau ny c xy ra

    lai ghp hay t bin ). Trong trng hp mt mn c hc nhiu ln trongtun, do c nhiu chng ch / hc phn, nn s gy kh khn cho vic xp chng

    vo trong c th. Cch gii quyt vn ny rt n gin, ch cn a chng vo

    c th vi nhim sc th tng ng, chng khc g mt mn hc bnh thng

    khc. Lc c thng tin, chng ta nn ch mt cht th thi.

    V d: Gi s c danh sch mn hc v s ln hc trong mt tun nh sau:- Mn hc a c 1 ln hc.

    - Mn hc b c 2 ln hc.

    - Mn hc d c 1 ln hc.

    Chng ta s phn b cc nhim sc th nh sau:

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 19

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    20/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    a b

    (ln 1)

    b

    (ln 2)

    c D

    Mi nhim sc th s mang mt gi tr s nguyn. chnh l v tr tit

    hc bt u ca mn hc. Phm vi gi tr ca n t 0 -> 35 theo th t cc tit

    hc trong tun, c nh du theo v tr lin tc ca cc ngy, tng t cu trc

    mng mt chiu. Cc tit hc tip theo l gi tr lin tc k tip nhau ty theo s

    lng tit hc ca mn m ta ang lu tr.

    Gi tr cc tit hc.

    Th hai Th ba . . . . . . Th by0 1 .

    . . .

    5 6 7 .

    . . .

    1

    1

    1

    2

    . . .

    . .

    3

    0

    3

    1

    .

    . . .

    3

    5V d: v cch xp v tr tit hc trong lch hc.

    Mn hc a tit bt u 0 s tit cn hc l 3

    Mn hc b tit bt u 3 s tit cn hc l 2

    Mn hc c tit bt u 8 s tit cn hc l 4

    Mn hc d tit bt u 12 s tit cn hc l 3

    Phn b cc mn hc trn lch hc nh sau:

    Th

    hai

    Th

    ba

    Th

    t

    . . . . . . Th

    by0

    a(1

    )

    6 12 30

    1 7 13 31

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 20

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    21/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    a(2

    )2

    a(3)

    8

    c(1)

    14 32

    3

    b(1

    )

    9

    c(2)

    15 33

    4

    b(2

    )

    10

    c(3)

    16 34

    5 11

    c(4)

    17 35

    Nh ta ni phn trn, tng ng mi c th l mt lch hc thc th ca

    lp. V vy, khi to c th, chng ta vn phi m bo s ng n v tnh cht

    trong lch hc : phi s tit hc, s mn hc, khng c s chng cho ln nhau

    ti cng thi im trong cc mn... gii quyt vic ny, chng ta s dng mt

    tham bin nh du cc tit hc ln lch, mn hc sau s khng b sp trng

    vo nhng v tr ny, m mn hc ny s c a vo v tr khc. Tt nhin, vi

    mi lch hc s c s sp xp khc nhau.

    3.1.2 To qun th ban u

    Trc khi to qun th ban u trong phn ny, chng ta phi chun b sn

    v d liu cho qu trnh thc thi, t lc khi to n khi cho ra kt qu, bao gm

    y thng tin ca mt lp ang c chn. Tt c nh sau :

    Cc rng buc lp, gio vin c phn cng dy.

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 21

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    22/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Cc mn hc v s chng ch tng mn.

    Tnh ton s tit hc tng ng cc mn.

    Chn qui nh c v ghi nhn nhim sc th.

    Ging nh c th c m t trn, hng lot cc c th c to ra v

    c xem nh qun th ban u trong m hnh thut gii di truyn ca phn xp

    lch lp. Sau khi qun th c s lng, bc tip theo l nh gi qun th,

    kim tra xem thch nghi tt nht hin ang tn ti ca qun th.

    3.1.3 thch nghi - chn c th

    y l phn gii quyt cc yu cu a ra cho bi ton, ch yu vn xem

    xt trn cc thnh phn rng buc. Tng ng vi mi loi rng buc, chng ta

    s gn cho chng mt gi tr thch nghi no , m mt khi c th i qua, cc

    rng buc c lp t vo, v s cho ra gi tr thch nghi c th cho c th ,

    kt thc cng vic tnh thch nghi. Nghe rt n gin nhng thc cht y lvn kh nht, quan trng nht ca bi ton. Chi tit c th nh sau:

    Trc ht ta ni v gio vin. Khi chn phn cng ging dy, chng ta

    phi bit chc rng gio vin s trng vo gi , mn , bui ca lp

    hc. Hay ni cch khc, chng ta cn kim tra rng buc tit hc, m tng

    ng vi mi mn trong lch hc, xem xt li cc mn c th hc gi hay

    khng. K tip l xt gi hc ca lp. Do mt qui nh no m lp c th hcgi ny hay gi kia, chng hn nh khng hc ba tit u trong ngy th hai,...

    Cui cng kim tra li s chng cho gi ln nhau ca cc mn hc. Vic

    kim tra ny nht thit phi lm, v trong lc lai ghp, t bin, c th gy ra sai

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 22

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    23/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    lch. Cho nn tt nht ta phi kim tra chng. Ging nh lc khi ng, ta dng

    mt bin cha tt c gi hc cc mn gip cho vic nh gi. Tng t cc

    rng buc gio vin v lp. Mi vn s c mt bin lu tr gi lm vic,

    trnh cc tit hc theo qui nh m ta ghi nhn cho mt gio vin hay lp hctng ng.

    C nhiu cch chn mt c th tt. Chn cch tnh theo thch nghi

    cao nht hoc thp nht. Thng thng, ngi ta chn cch tnh tt nht. y,

    chng ta cng chn cch tnh tt nht tc l xp theo gi tr gim dn ca gi tr

    b pht theo thch nghi.

    3.1.4 Thut ton lai ghp v t bin

    V thut ton lai ghp, ta dng lai ghp on: ly ngu nhin mt on

    nhim sc th bn nhim sc th cha, s cn li s ly bn nhim sc th m.

    Cn thut ton t bin : ch vic hon v hai nhim sc th mt cch ngu

    nhin trong c th. Ta c th sa thng s xc xut v t bin, lai ghp ca

    chng trnh trong lc chy thc thi.

    Phn ny p dng thc thi cho tt c cc lp trong mt c s, tng ng

    vi mi lp s c mt file lu tr tt c cc lch lp m c th s dng, di hnh

    thc cc nhim sc th trong qun th. Ngoi mc ch xem xt kim tra, chng

    cn c dng lm thng tin chy lch c s sau ny.

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 23

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    24/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    3.2 Giai on 2 - xp lch hc cho ton b c s

    3.2.1 Chn m hnh c th

    Lch hc ti c s bao gm tt c cc lch hc ca cc lp hin c trong c

    s, nu mi lp u c mt lch hc r rng th c ngha l c lch c s. Da

    vo giai on u, trn mi lp cho ra hng lot cc lch hc, vic chn ngu

    nhin lch hc ca mt lp th khng c g kh khn. Nhn m hnh c th trong

    lch lp ta thy lp hc trong c s c tnh cht nh mn hc trong lp, cho nn

    ta chn lp hc lm n v ca nhim sc th trong m hnh thut ton di truyn

    trong xp lch c s. V tng t, ta chn lch c s lm c th.

    mi nhim sc th l mt con s mang tnh cht nh mt trong nhng

    ch s trong file lu tr thng tin c th ca lch lp ( ch s mt lch hc ca lp

    ). Nh vy phm vi gi tr cc nhim sc th s khc nhau, nhng ta lun xc

    nh c phm vi mt cch r rng, ch cn c gi tr kch thc ca file

    tng ng ca lp m thi.

    M hnh c th trong lch c s.

    Lch

    lp 1

    Lch

    lp 2

    . . . . . . . Lch

    lp n

    File 1

    0.

    .

    .

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 24

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    25/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    .

    n

    1

    Ging nh trong lch lp, c th lch c s cng phi qua mt giai on

    kim tra ban u, c th mc t dc dng ng ca mt lch c s. l

    vic t cc lp hc vo cc phng trong c s, khng phi chn phng cho lp

    m l kim tra phng vi lp, xem c th ph hp vi c s hay khng v mtkch thc hin c. Nu vic kim tra ny khng thc hin c th bi ton n

    y kt thc.

    3.2.2 To qun th ban u

    Qun th khi u gm nhng c th c to ra nh m hnh trn, nhng

    thng tin cc lp hc phi c chn cng trong mt bui hc thuc c s, v c

    file lch lp y . y kch thc c th l s lp hin c, cho nn di hay

    ngn ty theo c s, cng ging nh lch lp chiu di c tnh theo s mn

    hin c ca lp.

    Cng vic ny s tn rt nhiu thi gian, v cng vic c file kim tra,

    nhng qun th s cho ra kt qu ng nht v mt p dng bi ton vo thut

    gii di truyn.

    3.2.3 thch nghi - chn c th

    Giai on hi t c th trong qun th, trn c bn vic nh gi c s ty

    theo s lp, s gi hc v s phng hc. Phng hc phi hp l v sc cha ca

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 25

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    26/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    n i vi lp hc, thng thng ngi ta chn phng ln nht cho lp tng

    ng ln nht. Nhng y ta chn phng php khc, lp v phng s c xp

    theo th t ln dn. Cho nn khi xp lch, lp s c t mt phng va nht

    m c s ang c. iu ny tuy mt thi gian hn nhng thc t th n s hp lhn.

    V vn trng phng hc gia cc lp, chng ta s s dng mt tham

    bin ghi nhn tt c cc gi hc ca tng phng mt khi c lp no vo hc,

    ng thi sau ny cng chnh l lch s dng cc phng.

    Cng nh gi li rng buc lch gio vin, nhng ln ny ch xt v mt

    trng gi dy cc lp cng mt thi im. Tng t, ta s s dng mt tham

    bin lch dy cho mi gio vin, ghi nhn v trnh trng hp trng gi ny.

    Vi cc ln kim tra tng ng vi mt gi tr thch nghi, cui cng tng

    cc gi tr ny chnh l thch nghi ca c th. Cng vic khng khc g trong

    lch lp, c th c chn l c th tt nht, gi tr thch nghi t mc nh l 0.

    3.2.4 Thut ton lai ghp v t bin

    S dng li ca phn xp lch lp, chn c th theo thch nghi, lai ghp

    ngu nhin on v t bin hon v im. Do ging nhau v mt d liu, v yu

    cu v cu trc thut ton cng khng khc nhau nhiu, vic dng li ny, s

    khng gy nh hng g trong qu trnh thc hin xp lch c s.

    Mt ln na ni v thi gian thc thi, s mt nhiu thi gian hn cng vic

    xp lch lp, do s lng v phm vi rng buc kh ln v phi c d liu trn

    cc file. Nhng v mt hot ng khng khc nhau.

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 26

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    27/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    3.2.5 Chn im dng thut ton

    c ni trong tng giai on ca cc phn p dng thut gii di

    truyn vo bi ton, im dng thut ton da trn thch nghi ca n. Mt s

    bi ton chn im dng theo s th h, hoc da trn tnh tng i ca kt qu,

    nhng vi bi ton ny cn c mt kt thc tuyt i tt nht, mt d s th h

    vn phi c chn trc ngay t u. V tnh cht yu cu trong bi ton ny l

    khng b sai lch.

    Nu trong qu trnh thc thi qua cc giai on, ch cn mt kt qu khng

    t n im dng, xem nh bi ton s khng c kt qu.

    CHNG IV- THIT K H THNG LP LCH THI

    KHA BIU

    4.1 Thit k c s d liu bi ton

    Khi to mt lch lp hc chng ta cn xem xt n rt nhiu cc yu cu

    v s lng ging vin, hc sinh, s lp hc, phng hc, kch c ca phng hctrang thit b trong lp hc( my tnh, my chiu) v nhiu yu t khc. Cc

    yu cu ny c th c chia thnh nhiu nhm tu theo tm quan trng ca

    chng. Cc yu cu bt buc (nu vi phm mt trong nhng yu cu ny, lch

    hc s thnh v hiu, bt kh thi):

    - Lp ch c th din ra trong phng hc

    - Khng ging vin hay mt nhm sinh vin no c th nhiu lp

    hc cng mt lc

    - Lp hc phi ch cho tt c hc sinh

    - lp hc din ra trong phng hc, lp hc phi c cc thit b nu

    cn thit

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 27

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    28/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Mt s yu cu khng bt buc nu vi phm lch hc vn kh thi:

    - Thi gian hc ca lp c u tin cho ging vin

    - Phng hc c th do ging vin chn

    - Phn b (thi gian hoc khng gian) ca cc lp hc dnh cho ccnhm sinh vin hoc ging vin.

    Cc yu cu bt buc hoc khng bt buc ca kha hc ty thuc vo

    hon cnh c th. Trong h thng lp lch thi kha biu ny ch cp n

    nhng yu cu bt buc.

    4.2 Cc i tng ca lch hc

    Ging vin

    Phn ging vin c ID( ch danh) v tn ca ging vin. N cng cha

    danh sch cc lp m ging vin dy

    Nhm sinh vin

    Phn nhm sinh vin cha danh tnh v tn ca nhm sinh vin , cng nhs lng sinh vin( kch c ca nhm). N cng cha danh sch cc lp hc m

    nhm tham gia hc.

    Phng hc

    Phn phng hc cha ID v tn ca phng hc, cng nh s lng ch

    ngi v my tnh( nu c) trong . Nu phng hc c my tnh, d kin c th

    mi ch ngi c mt my tnh. Cc ID c to ra ni b v t ngKho hc

    Phn kha hc c ID v tn kha hc

    Lp hc

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 28

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    29/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Phn lp hc gii thiu v kha hc ca lp hc , ch ra ging vin v

    danh sch nhm sinh vin tham d cc lp ca ging vin . Phn ny cng a

    ra s lng ch ngi cn thit( s lng ca nhm sinh vin) , lng my tnh

    trong lp hc (nu cn) v thi lng ca lp hc ( tnh bng gi).

    4.3 Biu din nhim sc th

    trnh by mt nhim sc th ta cn mt slot cho mt phng hc hng

    ngy trong thi kha biu. Ngoi ra, chng ta khng nh rng khng th bt u

    cc lp hc trc 7 gi sng v nn kt thc trc hoc vo lc 7 m (tng l

    12gi) v ngy lm vic l t th Hai n th Su (tng l 5 ngy).V vy, chng

    ta cn iu chnh s lp hc l (12*5*s ca phng hc). Cc slot sau c k

    tha t cc slot trc bi v trong qu trnh thc hin thut ton chng ta cho

    php nhiu lp hc ti mt thi im slot. Ta dng thm mt nh x l mt bng

    bm ly slot ti thi im lp hc bt u( v tr ca n theo vect) t a ch

    i tng ca lp. Mi gi ca mt lp hc c mc nhp ring bit trong vc t,

    nhng ch c mt mc nhp cho mi lp hc trong nh x bng bm

    Biu din c th

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 29

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    30/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Nhim sc th vi s lng l 100 c biu din bng mt lp Schedule

    v n c lu tr trong 2 thuc tnh

    Cc khe thi gian, mi khe s biu din mt gi trong mt lp hcVector&ltlist&ltCourseClass*>>_slots;

    Bng lp dnh cho nhim sc th dc dng quyt nh slot u tin

    ca lp

    //c s dng quyt nh khe thi gian u tin c s dng bi lp hc

    Hash_map&ltCourseClass*, int> _classes;

    ng thi nhim sc th c lu tr nhng gi tr ph hp v nhng

    tham s bng vic s dng cc thao to ca gii thut

    Nhng gi tr ph hp c lu tr ti:

    Float_fitness;

    //Cc c ca s tha cc rang buc lp

    Vector&ltbool>_criteria;

    4.4 Cc tham s ca gii thut di truyn

    S im lai ghp ca cc bng lp cha m

    int_numberOfCrossoverPoints= 2 ;

    S lng nhng lp m c di chuyn ngu nhin bi thao tc t bin

    n gin

    int_mutationSize= 2 ;

    Xc sut lai ghp s xy ra

    int_crossoverProbability= 80% ;

    Xc sut t bin s xy ra

    int_mutationProbability= 3% ;

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 30

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    31/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    4.4.1 Php lai ghp

    Nh ni trn php lai ghp din ra bng cch ghp mt hay nhiu

    on gen t hai nhim sc th cha-m hnh thnh nhim sc th mi mang c

    tnh ca c cha ln m.

    V d:

    Trong h thng ny thao tc lai ghp ban u kim tra mt s bt k vi

    xc sut lai ghp nu ln hn s tin hnh lai ghp v tr ra mt nhim sc th

    gi l nhim sc th u tin. Qu trnh la chn cc im lai ghp l ngu nhin

    if( rand() % 100 > _crossoverProbability )return new Schedule( *this, false );

    Schedule* n = new Schedule( *this, true );int size = (int)_classes.size();

    vector cp( size );for( int i = _numberOfCrossoverPoints; i > 0; i-- ){

    while( 1 ){

    int p = rand() % size;if( !cp[ p ] ){

    cp[ p ] = true;break;

    }}}

    Qu trnh lai ghp kt hp cc d liu trong bng bm ca hai nhim sc

    th cha m, v sau n to ra vc t ca cc slot theo ni dung ca bng bm

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 31

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    32/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    mi. Lai ghp 'Tch' bng bm ca c hai nhim sc th cha m thnh cc phn

    c kch thc ngu nhin. S ca cc thnh phn c xc nh bi s lng cc

    im lai ghp (cng thm mt) theo cc tham s ca nhim sc th. Sau , n

    sao chp thay lun phin cc phn nhim sc th cha m mu thnh cc nhimsc th mi, v cc hnh thc thao tc lai ghp

    hash_map::const_iterator it1 =_classes.begin();hash_map::const_iterator it2 =parent2._classes.begin();

    bool first = rand() % 2 == 0;

    for( int i = 0; i < size; i++ ){

    if( first ){

    // Chn lp t nst cha me u tin n bng nst min->_classes.insert( pair( ( *it1 ).first( *it1 ).second ) );

    // Tt c cc slot ca lp c sao chpfor( int i = ( *it1 ).first->GetDuration() - 1; i >= 0; i--n->_slots[ ( *it1 ).second + i ].push_back( ( *it1 ).first }

    else{// Chn lp t nst cha m th h th 2 vo bng nst mi

    n->_classes.insert( pair( ( *it2 ).first( *it2 ).second ) );

    // Tt c cc slot ca lp c sao chpfor( int i = ( *it2 ).first->GetDuration() - 1; i >= 0; i--n->_slots[ ( *it2 ).second + i ].push_back( ( *it2 ).first }

    // S im lai ghpif( cp[ i ] )

    first = !first;it1++;it2++;}

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 32

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    33/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 33

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    34/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 34

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    35/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    4.4.2 Php t bin

    Cng ging nh vy php t bin din ra bng cch khi mt hoc mt s

    tnh trng ca con khng c tha hng t hai chui nhim sc th cha m.

    Php t bin xy ra vi xc sut thp hn rt nhiu so vi xc sut xy ra php

    lai ghp.

    V d:

    Trong h thng ny thao tc t bin ban u kim tra xc sut t bin

    vi mt s bt k

    if( rand() % 100 > _mutationProbability )return;

    Sau thao tc t bin to ra mt lp ngu nhin v di chuyn nhim sc

    th n mt slot cng c la chn ngu nhin khc. S ca lp hc s c

    di chuyn vo mt thao tc n l c xc nh bi kch thc t bin trongcc tham s ca nhim sc th

    //La chn im ca lp mt cch ngu nhin

    int nr = Configuration::GetInstance().GetNumberOfRooms();int dur = cc1->GetDuration();int day = rand() % DAYS_NUM;

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 35

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    36/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    int room = rand() % nr;int time = rand() % ( DAY_HOURS + 1 - dur );int pos2 = day * nr * DAY_HOURS + room * DAY_HOURS + time;

    //Di chuyn slotfor( int i = dur - 1; i >= 0; i-- )

    {// Loi b gi cc lp t slot thi gian hin thilist& cl = _slots[ pos1 + i ];for( list::iterator it = cl.begin(); it

    = cl.end(); it++ ){

    if( *it == cc1 ){

    cl.erase( it );break;

    }

    }// Di chuyn gi lp ti cc slot thi gian mi

    _slots.at( pos2 + i ).push_back( cc1 );

    // Thay i u vo ca bng lp ch ti cc slot(khe) thi gian mi

    _classes[ cc1 ] = pos2;

    4.6 thch nghi

    y l phn gii quyt cc yu cu a ra cho bi ton, ch yu vn xem

    xt trn cc thnh phn rng buc. Tng ng vi mi loi rng buc chng ta s

    gn cho chng mt gi tr thch nghi no , m mt khi c th i qua, cc rng

    buc c lp t vo, v s cho ra gi tr thch nghi c th cho c th , kt

    thc cng vic tnh thch nghi

    By gi chng ta cn phi n nh mt gi tr thch hp cho cc nhim sc

    th. Ta s p dng cc yu cu ti thiu cho lch hc ca mt lp (khng c g l,

    v d, chng ta cng nhn rng ging vin c th ng lp bt c lc no).Cch

    lm nh sau:

    Mi lp hc c th c t 0 n 5 v tr.

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 36

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    37/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Nu lp hc s dng phng trng, ta gia tng score ca n.

    bool ro = false;for( int i = dur - 1; i >= 0; i-- ){

    if( _slots[ p + i ].size() > 1 ){

    ro = true;break;

    }}

    if( !ro )score++;

    _criteria[ ci + 0 ] = !ro;

    Nu cc lp hc i hi phi c my tnh trong phng hc, ta tng score

    ca n. Nhng nu lp hc khng cn my tnh, chng ta cng tng score

    ca n bng mi cch.

    _criteria[ ci + 2 ] = !cc->IsLabRequired() ||

    ( cc->IsLabRequired() && r->IsLab() );

    if( _criteria[ ci + 2 ] )

    score++;

    Nu lp hc phng c ch ngi, ta tng score ca n.

    _criteria[ ci + 1 ] = r->GetNumberOfSeats()>cc>GetNumberOfSeats

    if( _criteria[ ci + 1 ] )

    score++;

    Nu ging vin hin c th ln lp ( khng c lp hc khc) ti thi im

    , chng ta tng score ca lp ln mt ln na.

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 37

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    38/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    V tiu ch cui cng chng ta cn kim tra l liu nhm sinh vin ca lp

    c phi hc mt lp no khc ti cng mt thi im khng, v nu

    khng chng ta tng score ca lp .

    for( int i = numberOfRooms, t = day * daySize + time; i > 0; i--+= DAY_HOURS )

    {

    for( int i = dur - 1; i >= 0; i-- ){const list& cl =_slots[ t + i ];

    for( list::const_iterator it=cl.begin(); it != cl.end(); it++ )

    {if( cc != *it ){

    if( !po &&cc>ProfessorOverlaps(**it ) )

    po = true;if( !go && cc->GroupsOverlap( **it ) )

    go = true;

    if( po && go )goto total_overlap;

    }}}

    }

    total_overlap:

    if( !po )score++;

    _criteria[ ci + 3 ] = !po;

    if( !go )score++;

    _criteria[ ci + 4 ] = !go;

    Tng s ca lch l tng hp tt c cc mt ca lp hc.

    _fitness = (float)score /

    Configuration::GetInstance().GetNumberOfCourseClasses() * DAYS_NUM

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 38

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    39/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    4.7 Chng trnh thc nghimKt qu v demo chy th nghim chng trnh lp lch thi kho biu

    bng gii thut di truyn.

    Chng trnh demo bao gm phn c s d liu to ra 2 phng( room 1 v

    room 2) vi tn gio vin, tn mn hc, tn phng hc, s gi hc ( quy nh l

    2h), lp hc vi cc thuc tnh c lp trnh sn. Chng trnh s dng khi hm

    Fitness c gi tr bng 1.00000

    Chng trnh Th nghim

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 39

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    40/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 40

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    41/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 41

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    42/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Kt lun v hng pht trin

    I. Kt qu t c*p dng c gii thut di truyn gii quyt bi ton sp thi

    kho biu.

    Xy dng thnh cng chng trnh demo sp xp thi kho biu

    II. Hn ch - Hng pht trin trong tng lai1. Hn ch:+ Do gii thut di truyn mang tnh cht ngu nhin nn i khi kt

    qu t c khng phi l 100%.

    + Gii thut Di Truyn c th gii quyt bi ton ti u bt k (cc

    tiu ha hm mc tiu) vi n bin vo. Tuy nhin, vi s lng bin vo kh

    nhiu, cc gi tr hm mc tiu t c thng khng gn vi kt qu ti u

    thc s. khc phc vn ny, c th tng s lng vng lp, hy vng ln

    sinh sn mun s hnh thnh nhng con chu vi thch nghi cao ng vi cc

    gi tr hm mc tiu gn kt qu ti u thc s nht.

    2. Hng pht trin trong tng lai

    + Sp thi kha biu thc hnh theo nhiu mc u tin hn( utin cho ging vin.).

    + Hon thin mt s cc chc nng hiu chnh ngi dng c

    th linh ng hn trong qu trnh hiu chnh.

    Bo Co n Tt Nghip _Hong Chnh Ngha _Ct90125 42

  • 8/2/2019 27.090036_HoangChinhNghia_CT901

    43/43

    TM HIU GII THUT DI TRUYN P DNG GII BI TON LP LICH

    Ti Liu Tham Kho

    Lp trnh tin ho_Ts. Nguyn nh Thc Gii thiu gii thut Di truyn v Tnh ton Tin ha _PGS.TS

    Randy Ribler khoa tin trng i hc Lynchburg,VA,USA

    http://forum.mait.vn

    http://www.kh-sdh.udn.vn

    http://baigiang.violet.vn

    http://www.vninformatics.com

    http://forum.mait.vn/http://www.kh-sdh.udn.vn/http://baigiang.violet.vn/http://www.vninformatics.com/http://forum.mait.vn/http://www.kh-sdh.udn.vn/http://baigiang.violet.vn/http://www.vninformatics.com/