Click here to load reader

Thuat toan thuat giai

  • View
    68

  • Download
    1

Embed Size (px)

Text of Thuat toan thuat giai

  • WWW.VIETDOWN.ORG

  • Ebook Team

    VietDown Organization

  • 1

    CHNG 1 : THUT TON THUT GII

    I. KHI NIM THUT TON THUT GII

    II. THUT GII HEURISTIC

    III. CC PHNG PHP TM KIM HEURISTIC

    III.1. Cu trc chung ca bi ton tm kim

    III.2. Tm kim chiu su v tm kim chiu rng

    III.3. Tm kim leo i

    III.4. Tm kim u tin ti u (best-first search)

    III.5. Thut gii AT

    III.6. Thut gii AKT

    III.7. Thut gii A*

    III.8. V d minh ha hot ng ca thut gii A*

    III.9. Bn lun v A*

    III.10. ng dng A* gii bi ton Ta-canh

    III.11. Cc chin lc tm kim lai

    I. TNG QUAN THUT TON THUT GII

    Trong qu trnh nghin cu gii quyt cc vn bi ton, ngi ta a ra nhng nhn xt nh sau:

    C nhiu bi ton cho n nay vn cha tm ra mt cch gii theo kiu thut ton v cng khng bit l c tn ti thut ton hay khng.

    C nhiu bi ton c thut ton gii nhng khng chp nhn c v thi gian gii theo thut ton qu ln hoc cc iu kin cho thut ton kh p ng.

    C nhng bi ton c gii theo nhng cch gii vi phm thut ton nhng vn chp nhn c.

    T nhng nhn nh trn, ngi ta thy rng cn phi c nhng i mi cho khi nim thut ton. Ngi ta m rng hai tiu chun ca thut ton: tnh xc nh v tnh ng n. Vic m rng tnh xc nh i vi thut ton c th hin qua

  • 2

    cc gii thut quy v ngu nhin. Tnh ng ca thut ton by gi khng cn bt buc i vi mt s cch gii bi ton, nht l cc cch gii gn ng. Trong thc tin c nhiu trng hp ngi ta chp nhn cc cch gii thng cho kt qu tt (nhng khng phi lc no cng tt) nhng t phc tp v hiu qu. Chng hn nu gii mt bi ton bng thut ton ti u i hi my tnh thc hin nhiu nm th chng ta c th sn lng chp nhn mt gii php gn ti u m ch cn my tnh chy trong vi ngy hoc vi gi.

    Cc cch gii chp nhn c nhng khng hon ton p ng y cc tiu chun ca thut ton thng c gi l cc thut gii. Khi nim m rng ny ca thut ton m ca cho chng ta trong vic tm kim phng php gii quyt cc bi ton c t ra.

    Mt trong nhng thut gii thng c cp n v s dng trong khoa hc tr tu nhn to l cc cch gii theo kiu Heuristic

    II. THUT GII HEURISTIC

    Thut gii Heuristic l mt s m rng khi nim thut ton. N th hin cch gii bi ton vi cc c tnh sau:

    Thng tm c li gii tt (nhng khng chc l li gii tt nht)

    Gii bi ton theo thut gii Heuristic thng d dng v nhanh chng a ra kt qu hn so vi gii thut ti u, v vy chi ph thp hn.

    Thut gii Heuristic thng th hin kh t nhin, gn gi vi cch suy ngh v hnh ng ca con ngi.

    C nhiu phng php xy dng mt thut gii Heuristic, trong ngi ta thng da vo mt s nguyn l c bn nh sau:

    Nguyn l vt cn thng minh: Trong mt bi ton tm kim no , khi khng gian tm kim ln, ta thng tm cch gii hn li khng gian tm kim hoc thc hin mt kiu d tm c bit da vo c th ca bi ton nhanh chng tm ra mc tiu.

    Nguyn l tham lam (Greedy): Ly tiu chun ti u (trn phm vi ton cc) ca bi ton lm tiu chun chn la hnh ng cho phm vi cc b ca tng bc (hay tng giai on) trong qu trnh tm kim li gii.

    Nguyn l th t: Thc hin hnh ng da trn mt cu trc th t hp l ca khng gian kho st nhm nhanh chng t c mt li gii tt.

    Hm Heuristic: Trong vic xy dng cc thut gii Heuristic, ngi ta thng dng cc hm Heuristic. l cc hm nh gi th, gi tr ca hm ph thuc vo trng thi hin ti ca bi ton ti mi bc gii. Nh gi tr ny, ta c th chn c cch hnh ng tng i hp l trong tng bc ca thut gii.

    Bi ton hnh trnh ngn nht ng dng nguyn l Greedy

  • 3

    Bi ton: Hy tm mt hnh trnh cho mt ngi giao hng i qua n im khc nhau, mi im i qua mt ln v tr v im xut pht sao cho tng chiu di on ng cn i l ngn nht. Gi s rng c con ng ni trc tip t gia hai im bt k.

    Tt nhin ta c th gii bi ton ny bng cch lit k tt c con ng c th i, tnh chiu di ca mi con ng ri tm con ng c chiu di ngn nht. Tuy nhin, cch gii ny li c phc tp 0(n!) (mt hnh trnh l mt hon v ca n im, do , tng s hnh trnh l s lng hon v ca mt tp n phn t l n!). Do , khi s i l tng th s con ng phi xt s tng ln rt nhanh.

    Mt cch gii n gin hn nhiu v thng cho kt qu tng i tt l dng mt thut gii Heuristic ng dng nguyn l Greedy. T tng ca thut gii nh sau:

    T im khi u, ta lit k tt c qung ng t im xut pht cho n n i l ri chn i theo con ng ngn nht.

    Khi i n mt i l, chn i n i l k tip cng theo nguyn tc trn. Ngha l lit k tt c con ng t i l ta ang ng n nhng i l cha i n. Chn con ng ngn nht. Lp li qu trnh ny cho n lc khng cn i l no i.

    Bn c th quan st hnh sau thy c qu trnh chn la. Theo nguyn l Greedy, ta ly tiu chun hnh trnh ngn nht ca bi ton lm tiu chun cho chn la cc b. Ta hy vng rng, khi i trn n on ng ngn nht th cui cng ta s c mt hnh trnh ngn nht. iu ny khng phi lc no cng ng. Vi iu kin trong hnh tip theo th thut gii cho chng ta mt hnh trnh c chiu di l 14 trong khi hnh trnh ti u l 13. Kt qu ca thut gii Heuristic trong trng hp ny ch lch 1 n v so vi kt qu ti u. Trong khi , phc tp ca thut gii Heuristic ny ch l 0(n2).

  • 4

    Hnh : Gii bi ton s dng nguyn l Greedy

    Tt nhin, thut gii theo kiu Heuristic i lc li a ra kt qu khng tt, thm ch rt t nh trng hp hnh sau.

    Bi ton phn vic ng dng ca nguyn l th t

    Mt cng ty nhn c hp ng gia cng m chi tit my J1, J2, Jm. Cng ty c n my gia cng ln lt l P1, P2, Pn. Mi chi tit u c th c gia cng trn bt k my no. Mt khi gia cng mt chi tit trn mt my, cng vi s tip tc cho n lc hon thnh, khng th b ct ngang. gia cng mt vic J1 trn mt my bt k ta cn dng mt thi gian tng ng l t1. Nhim v ca cng ty l phi lm sao gia cng xong ton b n chi tit trong thi gian sm nht.

    Chng ta xt bi ton trong trng hp c 3 my P1, P2, P3 v 6 cng vic vi thi gian l t1=2, t2=5, t3=8, t4=1, t5=5, t6=1. ta c mt phng n phn cng (L) nh hnh sau:

  • 5

    Theo hnh ny, ti thi im t=0, ta tin hnh gia cng chi tit J2 trn my P1, J5 trn P2 v J1 ti P3. Ti thi im t=2, cng vic J1 c hon thnh, trn my P3 ta gia cng tip chi tit J4. Trong lc , hai my P1 v P2 vn ang thc hin cng vic u tin mnh S phn vic theo hnh trn c gi l lc GANTT. Theo lc ny, ta thy thi gian hon thnh ton b 6 cng vic l 12. Nhn xt mt cch cm tnh ta thy rng phng n (L) va thc hin l mt phng n khng tt. Cc my P1 v P2 c qu nhiu thi gian rnh.

    Thut ton tm phng n ti u L0 cho bi ton ny theo kiu vt cn c phc tp c O(mn) (vi m l s my v n l s cng vic). By gi ta xt n mt thut gii Heuristic rt n gin ( phc tp O(n)) gii bi ton ny.

    Sp xp cc cng vic theo th t gim dn v thi gian gia cng.

    Ln lt sp xp cc vic theo th t vo my cn d nhiu thi gian nht.

    Vi t tng nh vy, ta s c mt phng n L* nh sau:

    R rng phng n L* va thc hin cng chnh l phng n ti u ca trng hp ny v thi gian hon thnh l 8, ng bng thi gian ca cng vic J3. Ta hy vng rng mt gii Heuristic n gin nh vy s l mt thut gii ti u. Nhng tic thay,

  • 6

    ta d dng a ra c mt trng hp m thut gii Heuristic khng a ra c kt qu ti u.

    Nu gi T* l thi gian gia cng xong n chi tit my do thut gii Heuristic a ra v T0 l thi gian ti u th ngi ta chng minh c rng

    , M l s my

    Vi kt qu ny, ta c th xc lp c sai s m chng ta phi gnh chu nu dng Heuristic thay v tm mt li gii ti u. Chng hn vi s my l 2 (M=2) ta c

    , v chnh l sai s cc i m trng hp trn gnh chu. Theo cng thc ny, s my cng ln th sai s cng ln.

    Trong trng hp M ln th t s 1/M xem nh bng 0 . Nh vy, sai s ti a m ta phi chu l T* 4/3 T0, ngha l sai s ti a l 33%. Tuy nhin, kh tm ra c nhng trng hp m sai s ng bng gi tr cc i, d trong trng hp xu nht. Thut gii Heuristic trong trng hp ny r rng cho chng ta nhng li gii tng i tt.

    III. CC PHNG PHP TM KIM HEURISTIC

    Qua cc phn trc chng ta tm hiu tng quan v tng ca thut gii Heuristic (nguyn l Greedy v sp th t). Trong mc ny, chng ta s i su vo tm hiu mt s k thut tm kim Heuristic mt lp bi ton rt quan trng v c nhiu ng dng trong thc t.

    III.1. Cu trc chung ca bi ton tm kim

  • 7

    tin li cho vic trnh by, ta hy dnh cht thi gian lm r hn "i tng" quan tm ca chng ta trong mc ny. Mt cch chung nht, nhiu vn -bi ton phc tp u c dng "tm ng i trong th" hay ni mt cch hnh thc hn l "xut pht t mt nh ca mt th, tm ng i hiu qu nht n mt nh no ". Mt pht biu khc thng gp ca dng bi ton ny l :

    Cho trc hai trng thi T0 v TG hy xy dng chui trng thi T0, T1, T2, ..., Tn-1, Tn = TG sao cho :

    tha mn mt iu kin cho trc (thng l nh nht).

    Trong , Ti thuc tp hp S (gi l khng gian trng thi state space) bao gm tt c cc trng thi c th c ca bi ton v cost(Ti-1, Ti) l chi ph bin i t trng thi Ti-1 sang trng thi Ti. D nhin, t mt trng thi Ti ta c nhiu cch bin i sang trng thi Ti+1. Khi ni n mt bin i c th t Ti-1 sang Ti ta s dng thut ng hng i (vi ng ni v s la chn).

    Hnh : M hnh chung ca cc vn -bi ton phi gii quyt bng phng php tm kim li gii. Khng gian tm kim l mt tp hp trng thi - tp cc nt ca th. Chi ph cn thit chuyn t trng thi T ny sang trng thi Tk c biu din

    di dng cc con s nm trn cung ni gia hai nt tng trng cho hai trng thi.

    a s cc bi ton thuc dng m chng ta ang m t u c th c biu din di dng th. Trong , mt trng thi l mt nh ca th. Tp hp S bao gm tt c cc trng thi chnh l tp hp bao gm tt c nh ca th. Vic bin i t trng thi Ti-1 sang trng thi Ti l vic i t nh i din cho Ti-1 sang nh i din cho Ti theo cung ni gia hai nh ny.

    III.2. Tm kim chiu su v tm kim chiu rng

    bn c c th hnh dung mt cch c th bn cht ca thut gii Heuristic, chng ta nht thit phi nm vng hai chin lc tm kim c bn l tm kim theo chiu su (Depth First Search) v tm kim theo chiu rng (Breath First Search). S d chng ta dng t chin lc m khng phi l phng php l bi v trong thc t,

  • 8

    ngi ta hu nh chng bao gi vn dng mt trong hai kim tm kim ny mt cch trc tip m khng phi sa i g.

    III.2.1. Tm kim chiu su (Depth-First Search)

    Trong tm kim theo chiu su, ti trng thi (nh) hin hnh, ta chn mt trng thi k tip (trong tp cc trng thi c th bin i thnh t trng thi hin ti) lm trng thi hin hnh cho n lc trng thi hin hnh l trng thi ch. Trong trng hp ti trng thi hin hnh, ta khng th bin i thnh trng thi k tip th ta s quay lui (back-tracking) li trng thi trc trng thi hin hnh (trng thi bin i thnh trng thi hin hnh) chn ng khc. Nu trng t