. Grftori Btylsn v ilr som stö oh inspirtion för mtmtisk rsonmng kn knppst övrsktts. Stuirn v nkl ilr hr gtt oss grftorin. Tyvärr, llr lykligtvis, visr t sig snt tt nkl oh nturlig frågställningr om nkl ilr lr till synnrlign komplir komintorisk rsonmng. I tt inln kpitl om grftori kommr vi tt nöj oss m grunläggn trminologi oh någr rsultt som är nkl tt vis. Grfr Dnition. En Grf (V;E) står v två mängr V oh E v nor (iln hörn, vrtx på nglsk) rspktiv ågr (iln kntr, g på nglsk), är vrj åg E går mlln två olik nor i V; ågns änpunktr, oh är t int nns r ågr m smm änpunktr. Nor rits som ft punktr (iln nmngivn). änpunktrn ; V, så intirs ågn m mängn f; g = f; g =. Om (V;E) är n grf oh E är n åg m Figur. Två grfr. Till vänstr n grf m mängn v nor V = f; ; ; g oh mängn v ågr E = ff; g; f; g; f; gg. Figur. Exmpl på multigrfr som int är grfr. Dnition. Inmultigrf tillåtr vi mr än n åg mlln tt pr v nor, smt ågr från n no till smm no. Spillt notrr vi tt vrj grf är n multigrf.
Hrr MBrin oh hns fru April ornr n fst oh jur fyr nr gift pr. En l v människorn hälsr på vrnr å träs, mn nturligtvis hälsr ingt pr på vrnr. Då fstn slutr frågr Hrr MBrin ll nr, på hur mång människor hr hälst oh hn rhållr 9 olik svr. Hur mång människor häls på April? Lösning: Vi konstrurr n grf vrs nor är människor på fstn oh t nns n åg f; g å oh hr hälst på vrnr. Emn t nns 9 människor utövr Hrr MBrin oh mximl ntlt hälsningr i vilkt n prson kn vr involvr i är 8, så följr tt olik svrn som Hrr MBrin k måst vr 0; ; ; 3; 4; ; 6; 7; 8. Vi tknr norn m ss siror oh nvänr M för tt tkn Hrr MBrin. Vi får följn ilrprsnttion v grfn: 8 M 0 7 6 4 3 Figur 3. Non 8 smmnins m ll nr nor utom n, som måst vr äkt hälft till 8. Dnn no måst vr 0, vrför 8 oh 0 är gift oh 8 smmnins m ; ; :::; 7;M. Spillt gällr tt oh 8 smmnins oh tt är n ågn utgån från. Såls är 7 int smmnkoppl m 0 oh, oh ärm är 7 oh gift, (mn 0 oh 8 är gift). Fortsättr vi på tt sätt, sr vi tt 6 oh, smt oh 3 är gift pr. Dt följr tt M oh 4 är gift, värför non 4 är April som hälsr på 4 människor. Fstän ilrprsnttionr v grfr förstås v människor, så är värlös när vi önskr kommunir m n tor. För tt änmål måst vi rprsntr n grf m någon typ v tll, xmplvis n mtrisrprsnttion. Dnition. Vi sägr tt två nor oh ingrf är grnnr om f; g är n åg, vs. om oh förns v n åg. Låt (V;E) vr ngrf m jv j = n; (här oh i fortsättningn tknr jbj ntlt lmnt i n mäng B ). Låt V = fv ; :::; v n g vr norn. Grnnmtrisn A för (V;E) är n n n mtris vrs lmnt A i;j = ; om v i oh v j är grnnr; 0; nnrs. För ll i; j gällr t tt A i;j = A j;i, vrför A är symmtrisk m nollor på igonln.
Dt nns vritionr v ovnstån rprsnttion. Om (V;E) är n multigrf, så tknr A i;j ntlt ågr fv i ;v j g. Ävn i tt fll är A symmtrisk mn hövr inglun h nst nollor på igonln, ty t kn nns ågr som utgår från oh slutr i smm no. v v v 3 0 @ 0 0 0 0 0 A v 0 B@ v v v v 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CA v v 4 v v3 0 B@ 0 0 0 0 0 0 0 0 CA Figur 4. Tr grfr smt rs grnnmtrisr. Vi intrssrr oss nu för frågställningn: När är två grfr väsntlign lik? Svrt på nn fråg gs m hjälp v grppt isomor (isos = smm, morph = form). Dnition. Två grfr (V;E) oh (V 0 ;E 0 ) är isomorf om t xistrr n ijktion ' : V! V 0 som vilr ågr i E på ågr i E 0 oh omvänt, vs. f; g E,f'();'()gE 0 för ll ; V: Härvi klls ' n isomorsm. Vi nvänr tkningn (V;E) = (V 0 ;E 0 ) för isomorf grfr. (En ijktion är n vilning som är surjktiv oh injktiv). (V,E) (V,E ) Figur. 3
' : V,! V 0 ; '() = 0 ; '()= 0 ; '()= 0 ; '()=: 0 Alltså ' är n ijktion. f; g E()f'();'()gE 0 f; g E()f'();'()gE 0 f; g E()f'();'()gE 0 f; g E()f'();'()gE 0 f; g E()f'();'()gE 0 Alltså ' är n isomorsm oh (V;E) = (V 0 ;E 0 ) För tt vis tt två grfr int är isomorf, måst vi vis tt t int nns någon ijktion från mängn v nor i n n grfn till mängn v nor i n nr grfn som vilr ågr på ågr. Om två grfr hr olik ntl nor, så nns t ingn ijktion oh grfrn kn int vr isomorf. Om grfrn hr smm ntl nor mn ntlt ågr är olik, så nns t ijktionr mlln mängrn v nor mn ingn v ss ijktionr är n isomorsm. Figur 6. Dt är i llmänht mykt svårt tt öm om två grfr är isomorf, mn viss nturlig villkor kn vi g som är növänig för isomor. Vi åtrkommr till ss villkor ftr t tt vi infört tt ntl ny grpp för grfr. Dnition. Låt (V;E) vr ngrf oh ntg tt V: Då är gr() =jf V : f; g Egj grn v ; vs. grn v är ntlt ågr m som änpunkt. Anlog nition för multigrfr, mn n åg från n no till sig själv irr m två nhtr å grn för räkns. 4
gr()=4 gr()=3 gr()=3 Figur 7. Dt är oft v intrss tt vt ntlt ågr i n grf. D kn förstås räkns irkt mn t är vnligtvis lättr tt räkn ntlt ågr vi vrj no oh r m. Då hr vrj åg livit mräkn två gångr, n gång vi å änpunktrn, så ntlt ågr i n grf är hlv nn summ. Sts. Ingrf nns t tt jämnt ntl nor v u gr. Bvis: Låt (V;E) vr n grf m V = f ; :::; n g: Då gällr t tt nx jej = gr( i ) : i= () Btkn: V o = f i V : gr( i ) är ug; V = f i V : gr( i ) är jämng: Då är V = V o [ V oh V o \ V = ;, (n prtition v V ). M stö v () rhålls: jej = X V o gr() +X V gr() () Dn nr summn i () är jämn, ty vrj trm är jämn. Då jej är tt jämnt tl, så måst ävn n först summn i () vr jämn. Då n först summn är n summ v u tl måst t å nns tt jämnt ntl trmr i summn oh ärm är stsn vis. Ett növänigt villkor för isomor är tt gr() =gr('()) för vrj no V: Mn tt villkor är int tillräkligt, vilkt frmgår v följn xmpl.
6 4 4 6 3 (V,E) 3 (V,E ) Figur 8. Antg tt ' : V! V 0 är n isomorsm. Då 4 oh är n lmntn i V oh V 0 m gr(4) = gr() =, så gällr ntingn ('(4)=4; '() = ) llr ('(4) = ; '()=4). Mn ftrsom f4; g E oh f'(4);'()g = f4; g 6E 0, så rhålls n motsägls. Därm nns t ingn isomorsm oh (V;E) 6 = (V 0 ;E 0 ). Dnition. Grfn (V 0 ;E 0 ) är n lgrf v (V;E) om V 0 V oh E 0 E: Om V 0 = V; så är (V 0 ;E 0 ) n uppspännn lgrf v (V;E): Om ; V 0 oh f; g E)f; g E 0,så är lgrfn (V 0 ;E 0 ) n full lgrf v (V;E). (V,E) (V,E ) Figur 9. (V 0 ;E 0 ) är n uppspännn lgrf v (V;E). (V,E) (V,E ) Figur 0. (V 0 ;E 0 ) är n full lgrf v (V;E). Dnition. En följ 0 ; ; :::; n v nor i (V;E) är n väg om f i ; i+ ge för i =0;;:::;n,,oh f i, ; i g6=f i ; i+ g för i =; :::; n- : Vägn sägs h längn n: Om 0 = n ; så är vägn n loop. Om i loopn smtlig i ; i =0; :::; n-; är olik, så är loopn n ykl. Om 0 6= n klls vägn öppn. 6
Figur. ; ; ; ; ; är n (öppn) väg m längn. ; ; ; ; ; ; är n loop (j ykl). ; ; ; är n ykl. Om (V;E) oh (V 0 ;E 0 ) är isomorf grfr motsvrs vägrn i n n grfn v vägr i n nr. Ett növänigt villkor för isomor är ärför tt ntlt vägr v x läng är lik i å grfrn. Vir hr isomorf grfr lik mång yklr v x läng. g f h g f h Figur. I n först grfn är ; h; g; ; f; ; ; ; n ykl v längn 8. Mn t i n nr grfn int xistrr någon ykl v längn 8. Dtt innär tt grfrn int är isomorf Dnition. Låt (V;E) vr ngrf. Två nor ; V är förn om t nns n väg = 0 ; ; :::; n = i V: Om vrj pr v norigrfn är förn, så är grfn smmnhängn. Om n grf G int är smmnhängn kn vi int nå ll nor m n väg från n givn no. D nor som kn nås m n väg från n no oh motsvrn ågr klls n smmnhängn komponnt v G. På tt sätt ilr smmnhängn komponntrn n sönrlning v grfn G. Två isomorf grfr måst h lik mång smmnhängn komponntr. 7
Figur 3. En osmmnhängn grf stån v 4 smmnhängn komponntr. Vi skll nu stur multigrfr. Som knt, så tillåtr vi för multigrfr mr än n åg mlln tt pr v nor. Vi ntr i fortsättningn tt ll grfr oh multigrfr är änlig. Lonhr Eulr (707 783, shwizr) kn klls n först grftortikrn. Hn nvän sig v grppt multigrf för tt lös tt prolm som invånrn i Königsrg (Kliningr) h när plnr sin söngspromnr. Prolmt vr tt nn n promnväg som nvän ll ror xkt n gång: 0000000 000 000 0000000 00 0000000 000 00 Figur 4. Sju ror, Eulr rit n multigrf. Eulr konsttr tt n sökt promnvägn svrr mot n loop som nvänr sig v smtlig ågr i multigrfn. Bgrppt väg för n multigrf nirs nlogt m grppt väg för n grf. Dnition. En väg i n multigrf (V;E) är n Eulr-väg om ll ågr i E nväns xkt n gång. Om 0 = n i n Eulr-väg så hr vi n Eulr-loop. Figur. En Eulr-väg gs v ; ; ; ; ; ; ; ; ; ( nor m u gr). Anlningn till tt ingn lykts m tt gör promnn övr rorn i Königsrg är: 8
Sts. En smmnhängn änlig multigrf (V;E) hr n Eulr-loop om oh nst om vrj no hr jämn gr. Vi notrr tt i prolmt gälln rorn i Königsrg så hr vrj no u gr. För vist v Sts hövr vi följn hjälprsultt. Lmm3. Om (V;E) är n änlig multigrf sån tt vrj no hr gr så nns t n ykl i grfn. Bvis: (Av Lmm 3). Antg tt (V;E) är n grf. (Om (V;E) är n multigrf som int är n grf så är skn klr). Tg V. Konstrur n väg = 0 ; ; ; ::: i grfn sån tt f 0 ; geoh så tt för i gällr tt f i ; i+ geoh i+ 6= i,. Dtt lyks ftrsom gr( i ) för ll i. Då nu V är n änlig mäng nns t tt minst k, (k3), sånt tt k f 0 ; :::; k, g: Antg tt k = j ; 0 j k-3. Då är j ; j+ ; :::; k n ykl. =6 = 0 = = 3 0 3 4 (k=3) Figur 6. Bvis: (Av Sts ). () Antg tt (V;E) hr n Eulr-loop. Låt vr n no i loopn. Vrj gång loopn pssrr förruks två olik ågr. Därm är gr() tt jämnt tl. () Antg tt vrj no hr jämnt grtl. (Inuktion). Om jej =hr vi fllt v Figur 7. gr(v )=. vs. n Eulr-loop. Antg tt påstånt gällr för ll multigrfr (V 0 ;E 0 ) m je 0 j < jej är jej. Då (V;E) är smmnhängn måst för vrj V gäll tt gr(). Vir ntogs tt vrj no hr jämn gr så gr() för ll V. Då gr Lmm 3 tt t nns n ykl tkn i (V;E). Om är n Eulr-loop är vi klr. Annrs gällr: 9
(V,E) Figur 8. Konstrur n lgrf (V ;E ) till (V;E) gnom tt först stryk ågrn i oh sn norn vrs grtl sjunkit till noll. (V,E ) Figur 9. Smtlig nor i (V ;E ) hr nu jämn gr. D smmnhängn komponntrn för (V ;E ) står v nor m jämnt grtl oh ntlt ågr i vrj smmnhängn komponnt är minr än jej. Inuktionsntgnt gr tt vrj komponnt hr n Eulr-loop. Vi skrvr ihop m Eulr-looprn för ll komponntr oh rhållr n Eulr-loop för (V;E). Följn sts gr vi hnn tt Königsrgsorn int ns hr kunnt hitt n öppn Eulr-väg. Sts 4. Låt (V;E) vr n smmnhängn änlig multigrf. Då nns t n öppn Eulr-väg om oh nst om t nns xkt två nor m u gr. Bvis: () Antg tt oh är n norn v u gr i (V;E). Bil n ny åg mlln oh. Då gr Sts tt t nns n Eulr-loop i grfn (V;E [fg). Om vi vlägsnr ågn får vi n öppn Eulr-väg i (V;E). () Antg tt t nns n öppn Eulr-väg 0 ; :::; n i (V;E). Sätt = f 0 ; n g oh E 0 = E [fg. 0 n 0
Figur 0. Då nns t n Eulr-loop i (V;E 0 ). Sts gr tt ll nor i (V;E 0 ) är v jämn gr. Då hr ll nor i (V;E), utom 0 oh n, jämn gr. Byggr vi n ro till i Kliningr kn vi hitt n Eulr-väg oh yggr vi två på lämpligt sätt kn vi rhåll n Eulr-loop. 00 00 00 00 00 0000000 000 0000000 000 000 00 00 00 00 Figur. Ett närliggn prolm är följn: Givt n grf (V;E), vgör om t nns n loop i (V;E) som pssrr vrj no xkt n gång. Vi sr irkt tt n sån loop måst vr n ykl oh om n xistrr måst (V;E) vr smmnhängn. Figur. Figur gr två xmpl på grfr är t int är möjligt tt hitt n sån ykl. intrssr sig för tt prolm vr irlänrn W. Hmilton 8086. Dn som först Dnition. En grf (V;E) klls n Hmilton-grf om t xistrr n ykl 0 ; :::; n ; 0 sån tt V = f 0 ; :::; n g. Dt är i llmänht tt mykt komplirt prolm tt vgör om n smmnhängn grf är n Hmiltongrf oh t nns ännu ingn krktrisring v Hmilton-grfr.
Vnlign täkr int n Hmilton-ykl ll ågr. Dn täkr nst två ågr vi vrj no. 0 Figur 3. En Eulr-loop nvänr vrj åg xkt n gång, mn n Hmilton-ykl sökr vrj no xkt n gång. Dnition. En rikt grf (V;P) står v n mäng V v nor oh n lmäng P V V vrs lmnt klls pilr. Vrj pil är n rikt väg från n no till n no. V={,,,} P={(,),(,),(,)} V={,,,} P={(,),(,),(,), (,),(,),(,), (,),(,)} Figur 4. Nät v nklrikt gtor, nätvrk v oljlningr oh mång nr tillämpningr kn skrivs m n rikt grf. Givt n grf (V;E) m V = fv ; :::; v n g. Låt A =( i;j ) vr grnnmtrisn till grfn. Då gällr gr(v i )= nx j= i;j = Antg tt (V;P) är n rikt grf, V = fv ; :::; v n g. Då är grfns grnnmtris A =( i;j ) nir v nx j= j;i : i;j = ; om t nns n pil från v i till v j ; 0; nnrs.
Notr tt nu är Ai rgl int symmtrisk. v v v 3 v 4 A = 0 B@ v 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CA Figur. Sts. Låt A vr grnnmtrisn till n rikt grf (V;P). Då är (A m ) i;j = ntlt rikt vägr från v i till v j v längn m; är m =;; ::: : Låt oss trkt A i ovnstån xmpl. Nu gällr A = 0 B@ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Exmplvis (A ) 3; =svrr mot rikt vägn v 3 ;v ;v v längn. Vir är (A ) 3; =0,ty t nns ingn rikt väg från v 3 till v v längn, nst v längn. CA : Bvis: (Av Sts, Inuktion). Klrt tt stsn gällr för m =. Antg tt stsn gällr för A m ;m. Då gällr: A m+ = AA m : Låt C = A m+ oh B = A m, vs. C = AB. Dnitionn på mtrismultipliktion gr tt C ik = A i B k + ::: + A ij B jk + ::: + A in B nk : () Btrkt trmn A ij B jk. Vi vt tt A ij = ntlt rikt vägr från v i till v j v längn. Inuktionsntgnt gr tt B jk = ntlt rikt vägr från v j till v k v längn m. Alltså A ij B jk = ntlt rikt vägr från v i till v k v längn m + oh v formn v i ;v j ; :::; v k ; j =; :::; n. Då gr () ntlt rikt vägr från v i till v k v längn m +. 3
Trä (änlig grfr) Vi hnlr nrt änlig grfr oh nirr grppt trä gnom: Dnition. En grf (V;E) är tt trä om n är smmnhängn oh sknr yklr. C H 6 Figur 6. D två först grfrn är trä mn två nr int är t. En viktig gnskp hos trä är följn rsultt. Sts 6. Låt T =(V;E) vr tt trä oh ntg tt ; V; 6=. Då nns t xkt n väg i T från no till no. Bvis: Antg tt = 0 ; ; :::; n = oh = 0 ; ; :::; m = är olik vägr. Låt i 0 vr t minst inx sånt tt i+ 6= i+, oh låt j >i+ vr t minst inx sånt tt t xistrr tt k m j = k. i+ j = 0 i 0 i i+ k j k n m = Figur 7. Då är i ; i+ ; :::; j ; k, ; :::; i+ ; i n ykl i T, vilkt gr n motsägls. Därm nns t xkt n väg från till. Ett trä kn konstrurs gnom tt sussivt lägg till n åg m no till grfn. Sts 7. Om T =(V;E) är tt trä oh jv j > ; så nns t åtminston två nor v gr. Bvis: Välj n väg 0 ; ; :::; n v mximl läng i T. Då jv j > oh T är tt trä är 0 6= n. Nu måst gr( 0 )=gr( n )=gäll, ty nnrs kun vi fortsätt vägn som å j vor v mximl läng. Sts 8. Vrj trä T = (V;E) m n stykn nor är rkursivt nirt gnom lträn T i ; är T 4
innhållr n no oh T i+ konstrurs gnom tt T i utöks m nno i+ oh n åg mlln i+ oh n v norn i T i. Bvis: (Inuktion). För n =är T tt trä. Antg tt konstruktionn gällr för trä m upp till n- nor (n ). Tg T =(V;E) m jv j = n. Sts 7 gr tt t nns n no n V : gr( n )=. Stryk n oh ågn från n. Dn grf G vi rhållr är smmnhängn oh utn yklr, ty T sknr yklr. Alltså är G tt trä m n- nor. Inuktionsntgnt gr tt G = T n,, rkursivt konstrur m hjälp v T i ; i =; :::; n-: Sätt T n = T, vilkt gr n önsk följn v lträ. Korollrium 9. Låt T =(V;E) vr tt trä. Då är jv j = jej +. Dnition. Antg tt G =(V;E) är n smmnhängn grf oh tt T är n lgrf v G sån tt (i) T är tt trä; Då sägs T vr tt uppspännn trä för G. (ii) T är n uppspännn lgrf för G : f g h Figur 8. Dn färglg grfn utgör tt uppspännn trä för grfn. Dt är lätt tt åstkomm tt uppspännn trä på följn sätt: Tg vilkn no som hlst i n grf som strtträ oh lägg till ågr n ftr n så tt vrj åg förnr n ny no till strtträt (jämför Sts 8). Dt uppspännn trät i ovnstån xmpl kun åstkomms gnom tt strt m no oh förn n m nr norn i orningn ; ; ; f; ; h; g gnom tt lägg till ågrn ; ; ; f; f; fh; hg. Allmänt, om t nns n nor så skll vi fortsätt m n- stg, vrftr vi hr +(n-) = n nor oh n- ågr. Dtt är t korrkt ntlt nligt Korollrium 9. Uppspännn trä hr mång tillämpningr. Exmplvis, hur yggr mn t illigst vägnätt mlln tt visst ntl stär? Kostnn för vägn mlln tt pr v stär ror t.x. på hurun trrängn är mlln stärn. Formllt hr vi n grf G = (V;E) vrs nor är stär oh vrs ågr är vägrn mlln stärn, smt n funktion w : E! N, (är N tknr nturlig tln), sån tt w() ngr kostnn för tt ygg ågn. Vi sägr tt G oh w ilr n vikt grf oh w är n viktfunktion. Om mn vill ygg t illigst vägnätt mlln tt visst ntl stär, så svrr vägnätt mot tt upp-
spännn trä T för G, vrs totl vikt w(t )=Xw() T är så litn som möjligt. Dtt rukr klls MST-prolmt, (minimum spnning tr prolm), för n vikt grfn G. Eftrsom n vikt grfn G är änlig hr n tt änligt ntl ågr oh ärm nns t tt änligt ntl uppspännn trä T för G. Dt nns å, för uppspännn trän för G, tt änligt ntl hltlsvärn w(t ) tt välj mlln. M nr or nns t tt minimlt uppspännn trä T 0 för G sånt tt w(t 0 ) w(t ) för ll uppspännn trä T för G. Notr tt t kn nns r uppspännn trä för G m nn gnskp. Kruskls lgoritm är n nkl lgoritm som lösr MST-prolmt: (i) Välj n kortst (illigst) ågn. Om t nns mång ågr m smm vikt; välj n v ågrn: (ii) Om k stykn ågr hr vlts, välj n ny åg m miniml vikt så tt ingn ykl ils tillsmmns m tiigr vl ågr: (iii) Om vi int hr tt uppspännn trä, så gå till stg (ii): (iv) Avslut lgoritmn. Dt rhålln uppspännn trät hr miniml vikt: z u 6 4 6 8 7 v T z u 4 v 3 3 y 7 x y x Figur 9. (i) Vi Strtr m uv. (ii) + (iii) Därftr väljs zy, ux, uy. (iv) Vi rhållr tt minimlt uppspännn trä T m!(t )=4. Sts 0. Låt G =(V;E) vr n smmnhängn grf m viktfunktionn w : E! N; oh ntg tt T är tt uppspännn trä för G som konstrurts m Kruskls lgoritm. Då gällr t tt w(t ) w(u ) för vrj uppspännn trä U för G. 6
Bvis: Låt ; :::; n vr ågrn i T i n orning rhålls ur Kruskls lgoritm. Låt T min vr tt minimlt uppspännn trä för G. Om T min = T så gällr stsns påstån. Om T min 6= T tknr vi m k n först ågn för T i Kruskls lgoritm som int är n åg i T min. Låt k = fx; yg oh låt P xy vr vägn i T min som förnr norn x oh y. x k P xy y T min Figur 30. Om ågn k läggs till T min, så hr grfn T min [f k gn ykl = k [ P xy oh åt int hr någon ykl, måst innhåll åtminston n åg 0 k som int nns i T. Avlägsn nn åg oh rhåll trät Tmin 0 =(T min [f k g)nf 0 k g; m smm nor som T min oh m totl viktn w(tmin 0 )=w(t min)-w( 0 k )+w( k): Då T min är tt minimlt uppspännn trä måst t gäll tt w( 0 k ) w( k) : () Mn k är ågn m miniml vikt, sån tt ingn ykl ils å k läggs till ; :::; k,, (Kruskls lgoritm). Emn ; :::; k, ; 0 k är ågr i T min får vi ingn ykl å 0 k läggs till ; :::; k,. Då gällr t tt w( 0 k ) w( k) oh m stö v () tt vrför w(t 0 min ) = w(t min) = miniml totl vikt. w( 0 k )=w( k); Vi hr ärm hittt tt minimlt uppspännn trä T 0 min m n åg mr än T min gmnsm m T, (ågn k ). Upprpning v ovnskrivn prour gr slutlign tt minimlt uppspännn trä som smmnfllr m T, vs. w(t min )=w(tmin 0 )=::: = w(t ). Hnlsrsnsprolm. En hnlsrsn önskr sök tt ntl stär oh sn åtrvän hm m minst möjlig totl kostn utn tt åtrvän till n st hn rn sökt. Dn hnlsrsn ör lltså hitt n Hmilton-ykl m miniml vikt. En lösning hövr int llti xistr, mn om n lösning nns så är ntlt yklr i llmänht stort oh t är tt övrmäktigt komintoriskt prolm tt gå ignom ll ltrntiv. Vi skll här skriv n systmtisk mto som m hjälp v Kruskls lgoritm stämmr n unr gräns för n vntull lösningn till hnlsrsnsprolm. Antg tt ykln i grfn nn gr n lösning till hnlsrsnsprolm för stärn ; ; ; ; : 7
Figur 3. Om vi tr ort no, så får vi n väg gnom norn ; ; ; : Figur 3. Dnn lgrf ilr tt uppspännn trä U för n full lgrfn m norn ; ; ;. Låt T vr t uppspännn trä som kn konstrurs m Kruskls lgoritm. Då gr Sts 0 tt w(u ) w(t ) : Hl ykln hr såls n totl viktn w(u )+w(f; g) +w(f; g) w(t )+w(f; g) +w(f; g) : M nr or kn vi uppnå n unr gräns för lösningn till hnlsrsnsprolm gnom tt r n totl viktn v t miniml uppspännn trä som konstrurts m Kruskls lgoritm gnom norn ; ; oh m viktrn för två minst ågrn utgån från. Följn xmpl visr hur vi skll nvän nn mto. 8
Btrkt fm stär m viktrn nligt följn gur: 6 8 4 8 6 4 7 0 Figur 33. Om vi vlägsnr no, så får vi följn grf m norn ; ; oh. 6 8 4 7 0 Figur 34. Kruskls lgoritm gr å tt uppspännn trä m ågrn ; ; : 4 7 T Figur 3. m totl viktn w(t ) = 6. D två minst viktrn för ågr utgån från är oh 4 (ågrn oh ). Alltså n unr gränsn för lösningn till hnlsrsnsprolm är i tt fll, å vi vlägsn non, givn v 6++4=. Låt oss nu unrsök v som inträr å vi vlägsnr no. Då får vi följn grf m norn ; ; oh. 9
6 4 6 4 Figur 36. Tillämpning v Kruskls lgoritm gr t uppspännn trät T m ågrn ; ; (llr ; ; ), lltså: T, T 4 4 Figur 37. m totl viktn w(t )=. D två minst viktrn för ågr utgån från är 7 oh 8 (ågrn oh llr ). Därm får vi n unr gränsn +7+8 = 6 till hnlsrsnsprolm, vilkt gr n ättr uppskttning än i t förgån fllt är non vlägsns. Alltså är lösningn till hnlsrsnsprolm åtminston 6. Gnom tt vlägsn norn ; oh i tur oh orning får mn unr gränsr som är minr än 6 (hmuppgift), lltså sämr unr gränsr. Dt visr sig tt n unr gräns vi k gnom tt vlägsn non råkr g n lösning till hnlsrsnsprolm, nämlign ykln m miniml totl vikt gnom norn ; ; ; ;, är m n totl viktn +7+8++4=6. I näst xmpl prsntrs två girig lgoritmr som i n fullstänig vikt grf snt hittr n Hmilton-ykl, vilkn ok int hövr vr lösningn till hnlsrsnsprolm. Två lgoritmr som gr n gnsk kort Hmilton-ykl i fullstänig grfr. En grf (V;E) m V = fv ; :::; v n g är fullstänig, (llr kompltt), om gr(v i ) = n-; i = ; :::; n: Btrkt grfn: 0
0 30 0 00 70 0 Figur 38. A. Mton m närmst grnn (i) Strt i någon no x. Välj utgån åg m miniml vikt. (ii) Låt y vr n snst uppnå non. Om ll nor i V är inklur i vägn så väljs ågn mlln y oh x. Välj nnrs n åg m miniml vikt utgån från y till n no som int ännu inklurts i vägn. Ivår xmplgrf rhålls. x = : ; ; ; ; ) 0 + 00 + 0 + 70 = 30;. x = : ; ; ; ; ) 00 + 30 + 70 + 0 = 0; 3. x = : ; ; ; ; ) 0 + 00 + 30 + 70 = 0; 4. x = : ; ; ; ; ) 00 + 0 + 70 + 0 = 30: B. Mton m sortr ågr (i) Välj n kortst ågn ln ll ågr som ännu int är vl, så tt lrig r än två ågr utgår från n no oh så tt ing yklr v läng <nils. Ivårt xmpl väljs ågrn i orningn ; ; ; oh. Vi får Hmilton-ykln ; ; ; ; m längn 30. Algoritmrn A oh B är xmpl på girig lgoritmr (gry lgorithms) som är sn, mn som int növänigtvis hittr n optiml lösningn. Lösningn till hnlsrsnsprolm i vårt fll gs v Hmilton-ykln ; ; ; ; m längn 0. Ivårt xmpl m fm stär lyks å lgoritmrn lös hnlsrsnsprolm. (Koll!) Kortst vägn i rikt grfr Antg tt vi hr n rikt grf G =(V;P) är vi försr vrj pil p P m n vikt w(p) m hjälp v viktfunktionn w : P! N. (D tiigr hnl vikt grfrn kn trkts som spilfll). Låt nu v 0 ;v n V vr två nor i G sån tt t xistrr åtminston n rikt väg från v 0 till v n. Vi skll nu m hjälp v tt xmpl skriv Dijkstrs lgoritm från 99 för stämning v kortst vägn mlln v 0 oh v n. (Esgr W. Dijkstr, 930-00). I lgoritmn kn n no v j tillls två typr v
mrkringr, n tmporär mrkring (n; v k ), som kn änrs, llr n prmnnt mrkring [n; v i ] som int mr änrs. I ss mrkringr ngr n längn på n för närvrn rspktiv n slutlig kortst vägn från v 0 till v j, är n sist piln örjr i v k rspktiv v i oh slutr i v j. Vi är ärm intrssr v tt stämm n prmnnt mrkringn för non v n. Bstäm n kortst vägn från no v 0 till no i nnstån vikt rikt grf: v 0 6 9 4 9 3 6 3 7 Figur 39. Stg : Vi försr strtnon v 0 m n prmnnt mrkringn v 0 :[0;-]. Stg : Nor som nås irkt från v 0 : ; ;. Dss förss m tmporär mrkringrn :(6;v 0 ) ; :(4;v 0 ) ; :(6;v 0 ): Stg 3: Dn minst tmporär mrkringn görs prmnnt :[4;v 0 ]: Stg 4: Nor som nås irkt från : ; ;. No hr rn tilllts n tmporär mrkring, mn ftrsom vägn från v 0 vi till är kortr, 4+=<6, så änrs mrkringn på no, :(;) ; :(7;) ; : (3;): Stg : Dn minst tmporär mrkringn görs prmnnt :[;]: Stg 6: Nor som nås irkt från :. Eftrsom +9 = 4 > 3 änrr vi int på n tmporär mrkringn för no. Stg 7: Dn minst tmporär mrkringn görs prmnnt :[6;v 0 ]: Stg 8: Nor som nås irkt från : ;. Vi hr tt 6+3 > 7 oh tt 6+7 = 3, så vi änrr ing tmporär mrkringr.
Stg 9: Minst tmporär mrkringn görs prmnnt :[7;]: Stg 0: Enst non nås irkt från no. Notrr tt 7+ < 3, så vi änrr n tmporär mrkringn för no : (;): Stg : Dn n kvrvrn tmporär mrkringn görs prmnnt : [;]: Nu kn vi på sn v prmnnt mrkringrn gör kåtnlysn: v 0. Därm gs n kortst vägn v v 0 ;;; oh n hr längn. 3