17
Prot. dr. O. Popescu, cant. dr. D. Baz , cant. dr. G. Beganu , cant. dr. A. Filip , cant. dr. C. Ra isch i, cant. dr. D. P. Vasiliu, lector dr. V. Butescu, lector M. Enachescu , lector dr. O. Firica, lector N. St ramtan , lector M. Toma, lector G. Zahar ia., lector S. Baz, Asist. L. Bad in CULEGERE DE PROBLEME EOITURA DIDACTICA $ 1 PEDAGOGICA, R. A. . BUCURE$TI

Cap X Grafuri - Culegere de probleme.pdf

Embed Size (px)

Citation preview

  • Prot. dr. O. Popescu , cant. dr. D. Baz, cant. dr. G. Beganu ,cant. dr. A . Fil ip , cant. dr. C. Raischi, cant. dr. D. P. Vasil iu ,

    lector dr. V. Butescu, lector M. Enachescu, lector dr. O. Firica,lector N. Stramtan, lector M. Toma, lector G. Zaharia.,

    lector S. Baz , Asist. L. Bad in

    CULEGEREDE

    PROBLEME

    EOITURA DIDACTICA $ 1 PEDAGOGICA, R. A. . BUCURE$TI

  • Capitolul X

    PROBLEME DE TEORIA GRAFURILOR

    1. Un graf G are urmatoarea matrice a arcelor :

    x = X X' = 0 =>n"5 => X" = 0, deci in graful dat nu exista drurnuri formate dI=patru sau rnai multe arce. Mai mult, singwuJ drum format din trei .arce este drumul devarful 0 la varful ' d : acest drum este format din erce care se determina urmI\ruJl:provenienta valorii d, (1 ; 3) = 1. AstfeJ, avem :

    _din inmultirea X X ' constatam : d,(I ;3)= .1'(1 ; 2) d, (2 ; 4) ; asadar, drumul de trearce cautat provine dintr-un arc de la a pallA la b, adAugat la inceputul unui drum dedoua arce de la b la d ;

    -din tnmultirea X' =.1' . .1' , constatAm dl d, (2 ; 4) provine de la .2 :3) .3 :4). d=drumul de doua arce este forma t din arcul (0; c) urmat de arcul (c ; d ).

    Pentru determinarea matricii D a drumurilor grafului dar, avem :01 23 0 1 1

    o 0 0

    o 0 0 0

    2 0 O . I=>D =

    o 0

    o 0 0

    o 0 0 0

    0 b c d

    0 0 I 1 Ib 0 0 1 IX=c 0 0 0 Id 0 0 0 0

    368

    Se cer matricele D, ale clrumurilor formate din k arce in graful G(k EN ),.precum si matricea D a drumurilor grafului dat.

    RezolvareAvem

    0 0 1 2 0 0 I I

    .1" =0 0 0 J 0 0 0 I0 0 0 0

    =>D, = 0 0 0 00 0 0 0 0 0 0 0

    0 0 0 J 0 0 0 J

    x' = X x' =0 0 0 0 0 0 0 00 0 0 0

    ~D3 =0 0 0 0

    0 0 0 0 0 0 0 0

  • [LOR

    keN),

    te din1 de I.

    InnArind

    de treirum de

    ). deci

    Observaui.

    I) Decarece coloana vfufului a in rnatricea D este fermata numai din zerouri, rezultaca a este sursa in G.

    2) Deoarece linia varfului d in matricea D este fermata numai din zerouri, rezulta cavarful d este destinatie in G.

    2. Matricea unuigraf G este :

    a b c da 0 I I I

    b 0 I 0 Ic 0 I 0 Id 0 0 -0 0

    Se cer matricele D. ale drumurilor formate din k arce in G(k EN' ),precum ~i matricea D a drumurilor grafului G.

    RezolvareSe constata urmatoarele :

    . [:I I

    HI 0- pentru n numar par, avem : X = 0 0 I0 0 0. [" I

    "Jnumar impar, avem : X ~ = ~ 0 I I-pentrun I o I '0 o 0Asadar:

    .._~._ ~ .[j I I'J xI 0- pentru 0 I I '

    0 0 0

    [" I I }. 0 0 I- pentru n numar unpar, avem : D. = o I 00 0

    Atunci avem :

    [0 2 2 [} D'[j.I I iJ 0 2 I I IX+ K+ H= ~ dee,2 I J I0 0 0 02-l - Matcmatica aplicata in economic - cd. I

    369

  • 3. Graful G are urmatoarea matrice a areelor :a b c d e f

    370

    0 1 0 0 0 10 0 1 0 0 10 0 0 1 I 00 0 I 0 0 00 0 0 I 0 00 I 1 0 1 0

    a b ( c d ea 0 1 1 1 I 1 C,

    ~ 0 1 1 1 J 1 C,0 1 I 1 1 10, = 0 0 0 I 1 1cd 0 0 0 1 1 1 C,e 0 0 0 1 1 1

    C, C, C,

    Se eer :a) Componentele tare conexe ale grafului .b) Graful condensat o' = (V' ; A' ) corespunzator,c) Dnunurile harniltoniene in grafuI G.RezolvareAplicand algoritmul CHEN, se determinA matricea dnunurilor grafului dat , anume :

    o I 1 I I I9 1 1 1 1 1o 0 1 I I 0

    D=o 0 1 I 1 0o 0 1 1 1 0o 1 I I I 1

    a) Determinarea componentei tare cone:xe corespunzatoare vdrfului a .~- multimea EXT(a ), 0 viirfurilor 10 care se poate ajunge din varful a, corespunde

    valori lor de" I" de pc linia lui a din matricea D , anume : EXT(a) = (b, c, d. e, f) ;- multimea INT(a) , 0 vilrfurilor de 10 care se ponte ejunge la varful a, corespunde

    valorilor de ,,1" de pe coloana lui a in matricea D, anume : INT(a) = 0 ;- in final, componenta tare conexa C( a) , corcspunzAtoare viirfului a, este

    C(a> = (EXT(a)n INT(a U ~l = ~}Determinarea componentei tare conexe a vdrfului b :

    EXT(b) = (b, c, d. e, f ) I I. IAvem : INT (b) = (a ,b,fJ ",", C(b )= p ;f ;Determinarea componentei tare conexe corespunziitoare vdrfului c :

    EXT(c) = (c, d , e) I Ie IAvem: :;::>C(c) = , d, e.INT(c ) = (a, b, c, d , e, fJ .

    Asadar, graful dat are trei cornponente tareconexe pe care Ie renotAm CI C2 C3 ; vom rescriematricea D astfel meat varfurile careapartin aceleiasi componente sa fie adiacente ~ avem:

    f

    b

    dc

    a

    e

  • ---- -- ~

    b) In afar! de blocurile diagonale ( care nu intereseaza ), in ~ avem valori de ,,1", inblocurile (C, ; C,), (C,; C,) si (C, ; C,): asedar graful condensat G" are :

    - multimea de varfuri V" = (c, ;C, ; c,L- multimea de arce rezultA conform matricii :

    o 1 1o 0 1o 0 0

    iltonien din componenta urmatoare , dateC, C, C,

    a"" b - f"'... c-e -dr - e-d -cd- c -e

    c) sc determine intai drumurile hamiltoniene din cadrul fiecarei componente ;- in C, : singurul viirf din C, fiind a. problema este banala ;- in C,: avem drumuril e hamiltoniene (b : I ) si (f ; b) ;- in C,: avem drumurile hamiltoniene (c, e, d ), (e, d , c) si (d , c , e). in tabelul urmator

    >par:- componentele tare conexe, scrise in ordinea in care exista relarii de succesiune intre

    ele, anume (C" C" CJL- lista drumurilor hamiltoniene din cadrul fiecarei componente ~- legaturile dintre varful terminal at unui drum hamiltonian dintr~ componenta si varful

    cnpal al unui drum harm de arcele grafului G.

    unde

    ~unde

    one :

    este ; Asadar, in graful dat exist! doll! drumuri hamiltoniene , anume :dif =(a , b,f, c, e, d) ; dil =(a, b,f, e, d , c).

    4. a) Folosind algoritmul Kaufmann , se cer drumurile hamihoniene ~,arcuitele hamiltoniene in graful care are ca matrice a arce lor :

    a b c da 0 1 1 1b 0 0 1 1A=

    esctiec 0 1 0 1d 1 1 0 0

    RezolvareToate elementele matricei drumurilor grafului dat sunt egale cu; I " , deci graful dat

    ese cornplet, iar algcritmul Kaufinann este singurul algoritm studiat pentru determinarea=J:l1uri.lor hamiltoniene. Matricea latinA corespunzatoare grafului este :

    L =

    -ab ac ad

    - -be bd

    -cd

    -cd

    da db - -

    371

  • dabcabc

    adbbda ~eda cdb ebti

    dab daodbc

    c

    - b c d- - c d- b - d- b

    - -

    ba

    -b c d

    - - e d- b - da b - -

    - 3 4 7- -

    5 8- 2 - 96 J I - -

    a

    dc

    abdaacda - - -

    bdab- bedb - -

    cdae- - cdbe -

    dabd- - - daed

    dbed

    bv=

    acbabc abd-

    adb acdbda

    - - bededa edb

    -cbd

    dab dac- dbe -

    -b e d

    - -e d

    -b

    -d

    a b-

    -

    -ab ae ad

    - -be bd

    -eb - cd

    da db- -

    T=

    Matricea destinatiilor de arce este :

    Pentru d.etenninarea drumurilor hamil toniene vorn aplica doua iteratii, tardeterminarea circuitelor hamiltoniene, trei iteratii ale algoritmului . Avern :

    b) Considerand ca G devine graf valuat ~i ca valoarea unui drum este sumavalorilor areelor componente, eu matrieea valoriJor areelor datii de :

    . .

    sa se determine drumul hamiltonian minim ; drumul hamiltonian maximeireuitul hamiltonian minim si eireuitul ham iltonian maxim .

    372

  • Rezolvare

    Problemele de acest gen (drum/circuit hamiltonian optim), fiind probleme eu caraeterzatematic deosebit, Ie vom rezolva nwnai enwnerativ.

    Determinarea drumului hamiltonian optim:

    Jar pentru drumul hami ltonian valoarea drum ului observetii-

    a -c - b 4+ 2 = 6 este drumul "minimabd a-d -b 7 + 11 = 18 -aed

    a - b -c 3 + 5 = 8bed -, ebd a -b -d 3 + 8 = l l -

    a -c - d 4+ 9 = 13 --

    b - d - a 9+ 6 - 15 -b -e - d - 5+ 9 - 14 -c - d -a 9 + 6 = 15

    -

    c - d - b 9+ 1i- 20 este dnunul maximc - b - d 2+ 8 = 10 -d -a - b 6 + 3 - 9 "d - a -c 6+ 4 -10 .d -b - c Ii+ 5 = 16 -

    in mod asemanator se detennin~ ~i circuitele harniltoniene optime.

    5. Graful valuat G are matricea valorilor arcel or :

    a b c d ea

    - 3 I - II

    b - - 7 10 9

    c - - - 5 4,"ma

    d- - - - 8

    e- - - - -

    Valoarea unui drum este defin itii ca fund minimul valorilor arceloronente.

    Se cer :- va lorile drumuri lor maxime cu dest ina tia e. drum ul maxim de la a la e.

    ..373

  • Etapele a1goritmului sunt prezentate in tabelul urmator :

    Rezolvare

    fedcba

    3 4 4 . -- - 5 2 - -- - - - 2 5 -

    6 - 10 7- - - - -

    3 - - - - -

    e

    ba

    c

    d

    f

    a b c d e

    a- 3 I - 11

    b" - -

    7 10 9c

    - - -5 4

    d - - - - 8e .

    --

    - -

    .11(1 ) II 9 4 8-

    .11 (2)max{min{3 ; 9} ; max{min{4 ; 7} ; max {min{5 ; 8} ;min {4 ;1}} = 3 minflO ; 8}} = 8 min {5 ;8}}=5 - -

    Af(3)max {min {3 ; 8} ;

    min{5 ; 7} = 5min{l ;5}}=3 - - -

    .11 (4 )max {min {3; 5} ;

    min {7 ; 5} = 5min{I ;5}}=3 - - -

    .I1(S) min{3 ; 5} = 3- -

    - -

    .11 (6 )- - - - -

    .14 max{3 ; II} = II max{9 ; 8 ; 5} = 9 max{4 ; 5) = 5 8 -

    6. Matricea valorilor areelor grafului G este prezentata In continuare :

    in linia .\1 apar valorile drumurilor maxime cu destinatia e in graficul dat (indiferentde numarul de arce din care este formal drurnul), astfel :

    - drumul maxim de Ia ala e are valoarea II (si este format dintr-un singur are,deoarece valoarea II apare pe linia .11(1 ;

    . :drumul maxim de la b la e are valoarea 9 (~ este format dintr-un singur are,intrucat valoarea 9 apare pe linia .11 (I) ) ;

    - drumul maxim de la cia e are valoarea 5 (~i este format din doua arce, anume (c -d - e), deoarece valoarea 5 apare pe linia .14(2 ;

    - drumul maxim de la d la e are valoarea 8 ~ este formal dintr-un singur arc ;- in graficul dat nu exist! nici lU1 drum de Ia e la e.

    37.

  • eII948

    'fererlt

    arc,

    arc,

    (c -

    Valoarea unui drumin graf este definitii ca fiind maximul valorilor arcelorcomponente.

    Se cer :- valorile drumurilor minime cu destinatia in viirful f ;- drumul minim de la a la f '

    Rezolvare

    Etapele algoritmului SlIDI prezentate in tabelul urmator :

    a b c d e Ia - 3 4 4 - -b - - 5 2 - -c - , - - - 2 5d

    - -6

    - 10 7e - - - - - 3

    I - - - - - -.lf ll) - - 5 7 3

    -

    -

    min {max {4;S} ; min {max {S;S} ; min {max{6;S},,\ f (2)

    max{2 ; 7}} = S max{2)}=3 max {1O;3}l = 6 - -max {4;7}}=Smin {max {3;S} ;

    min {max {S;3} ; ..If(3) max{4;3} ;

    max{2 ; 6}} = S - max{3 ; 6} = 6 - -max {4;6}} = 4 ,

    .If(4)min {max {3;S} ;

    max {2 ; 6} = 6- - - -

    max {4;6}} = S

    .If( ' ) max {3;6} = 6 - - - - -

    .If(6) - --

    - - - -

    min{S ;4 ;6} =min{S ; 6} = S min{S)} = min{6 ; 7} = 6 3

    .\ f -=4 =3

    Asadar :- drumul minim de la a la I are valoarea 4 ~i este formal din trei arce (an ume

    ( a ; c), (c ; e), (e; I)) ;- drumul minim de la b la I are valoarea S si este format din doua arce (anume

    (b ; c) , (c ; I )) sau din trei arce ( anume ( b .c), (c; e), (e ; I )) ;- drumul minim de la c 1a I are valoarea 3 si este format din doua arce ;- drumul minim de Ia d la f are valoarea 6 ~i este formal din doua sau trei arce ;- drumul minim de l~ e la I are valoarea 3 ~ este format dintr-un singur arc ;- nu exista drumuri de la I la I in graful G.

    37 5

  • 7. Matrieea valori lor arcelor grafului G este prezentatii mai jos :

    376

    edcba

    - 1 4 - -- - 2 5 9- - - I 7- - - - 2- - - - -

    c

    e

    d

    8. Matrieea valorilor grafulu i G este prezentatii in continuare :

    Valoarea unui drum este definita ca .fiind produsu l valori lor arcelorcomponente. Se eer :

    - valorile drumurilor maxime avand sursa in varful a ;- drum;'1maxim de la a la e.

    Rezolvarein tabelul UI1TIiUor sunt prezentate etapele de rezolvare :

    a b c d e AI (l ) .\ 1 (2 ) .If '" A1 (4 ) AI '" .ila

    -2 4 10 - - - - - - -

    b- -

    3 8-

    2 - - - - 3

    5 7 4 32 = 6max {4;

    c- - -

    - -- 6} = 6

    maxt g 2 ; max fl O;

    d - - - 4 10 5 6 =30 - -20;30} =

    - 5 4}=20.

    = 30

    e- -

    -

    - -- maxt ? 4 ; max {7 6 ; 4 3 0 =

    -

    - max {40;

    4 \ 0} =40 4 20} = 80 = 120 8

  • pozitiile in care nu exists arce in graful dat. Etapele eplicarii algoritmului apar in tabelulurmaror :

    celor

    [

    I a b c d e,

    I a 0 1 4 00 00b 00 0 2 5 9c 00 00 0 I 7

    d 00 00 00 0 2

    e 00 00 00 00 0

    .\ 1 (l)'"

    9 7 2 0

    min jco-t- Il ; 9 + 1; min[cc+ 00;0 + 9 ; min{oo + oo ; minjcc -cco ;.\ 1 (2) 7 +4 ;2 + 00: 2 + 7 ;5 + 2 ;

    00+9; 0+ 7 ; 9+00;7 +00;0

    O+",} =10 9+0} =7 1+2 ;7 + 0} = 2+0;0+2} ==3 = 2

    min{IO+ 0 ; 7 + I ; min {IO+ 00;7 +0; minjlu e-cc ; min{ID + c.e :.\1 (3) 3 +4 ;2 + 00; 3+ 2 ;2 + 5 ;

    7+0:: ; 3+0 ; 7+:x:;3 +c.e;0

    O+oo} = 7 2+5 ; 0 + 9)=5 2 + 0 ; 7+0} = 2 + 0;0 +2} ==3 = 2

    min {7+ 0 ; 5 +1 ; min {7 +00 ;5 -e O; min t?+ 00 ; min {7+ 8 ;.\1 (4) 3+4 ; 2 +00 ; 3+2 ;2+5 ; 5+"' ; 3 + 0 ; 5 +ce :3+00 ; 0

    O+oo} = 6 0+5} ~ 5 2+1 ;0+7} = 2+fr,0+2} == 3 = 2

    min{6+0 ; 5+10 min{6 +00;5 + 0; min {6+ a: ; min{6+8 ;.\1

  • .-

    -m:"~ 0, situa~a eceasta nu are ruci 0 semn.ificatie speeialil, intrueat intoat~ vaIoriJe arceJor sunt nurnere pozitiveSA detenninAm acum CODcret arce!e care compUD dnunuJ minim de Ja a Ia

    eceasta, vom urmAn provenienra valoru m~31 :::: 6.Avem:

    m~:IJ :; m~"1 == mini.m(7 + 0,5+ I ; 3+4 ; 2 + 00; 0 +00) ==I ~ p (a ; b)~ 5+1 , UDde :