• No results found

BESLISKUNDE 4 L.C.M. KALLENBERG UNIVERSITEIT LEIDEN

N/A
N/A
Protected

Academic year: 2021

Share "BESLISKUNDE 4 L.C.M. KALLENBERG UNIVERSITEIT LEIDEN"

Copied!
543
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

L.C.M. KALLENBERG

UNIVERSITEIT LEIDEN

(2)
(3)

Voorwoord

Dit vak kan worden gedaan als reading course, waarbij vereist wordt om de opgaven te maken.

Als voorkennis wordt de stof van de colleges Besliskunde 1 en 2 bekend verondersteld. In tien hoofdstukken komt een aantal onderwerpen uit de besliskunde aan bod. Een student kan een aantal hoofdstukken doen met in totaal minimaal 4 EC. Hieronder staat per hoofdstuk hoeveel EC het maken van de opgaven oplevert.

Hoofdstuk 1 2.5 EC; Hoofdstuk 2 2.5 EC Hoofdstuk 3 1.5 EC; Hoofdstuk 4 2 EC Hoofdstuk 5 2 EC; Hoofdstuk 6 1.5 EC Hoofdstuk 7 0.5 EC; Hoofdstuk 8 1.5 EC Hoofdstuk 9 1.5 EC; Hoofdstuk 10 0.5 EC Hoofdstuk 1: Grafentheorie (deel 2)

Deel 1 van Grafentheorie is reeds in Besliskunde 1 besproken. In dit hoofdstuk komen andere onderwerpen aan de orde: grafen en matrices, vlakken en duale grafen en kleurproblemen.

Hoofdstuk 2: Netwerk Optimalisering (deel 2)

Deel 1 van Netwerk Optimalisering is in Besliskunde 2 behandeld. In dit deel komen aan bod:

netwerkstromen (disjuncte paden; maximale stromen met minimale kosten) en de netwerk simplex methode.

Hoofdstuk 3: Koppelingen

Begonnen wordt met de algemene theorie voor bipartiete en algemene grafen. Vervolgens wor- den algoritmen voor bipartiete grafen behandeld (maximale cardinaliteit, maximaal gewicht en Gilmore-Gomory en Gale-Shapley koppelingen). Het hoofdstuk wordt afgesloten met algoritmen voor algemene grafen (maximale cardinaliteit en maximaal gewicht).

Hoofdstuk 4: Matro¨ıden

De matro¨ıdentheorie is een algemene theorie over het begrip onafhankelijkheid. Het is een gene- ralisatie van de lineaire algebra, de grafentheorie en de transversaaltheorie. We beginnen met definities en voorbeelden. Daarna behandelen we de relatie tussen grafen en matro¨ıden. Ver- volgens komt het gretige algoritme aan bod. Tenslotte worden meer geavanceerde onderwerpen besproken: onafhankelijkheidssystemen, doorsnede van matro¨ıden, grafo¨ıden, representeerbaar- heid en polymatro¨ıden.

i

(4)

Hoofdstuk 5: Inwendige punt methoden

Dit is een vrij moderne techniek om optimaliseringsproblemen op te lossen. We bespreken in- wendige punt methoden voor lineaire optimaliseringsproblemen. Bij de simplex methode wordt langs de rand van het toegelaten gebied gelopen totdat het optimum is bereikt. Bij inwendige punt methoden wordt de rand juist vermeden en wordt getracht om door het inwendige naar het optimum te lopen. We behandelen diverse specifieke methoden: de methode van Karmarkar, de affiene schaling methode, de potentiaal reductie methode en diverse pad-volgende methoden (primaal, primaal-duaal en predictor-corrector).

Hoofdstuk 6: Voorraadtheorie

In de voorraadtheorie houdt men zich bezig met twee typen kosten: bestel- en voorraadkosten.

Als er veel wordt besteld zijn de bestelkosten per eenheid minder dan als er weinig wordt be- steld; de voorraadkosten zijn juist hoger als er veel wordt besteld. De centrale vraag is welke voorraadstrategie optimaal is. We bespreken diverse varianten van vier basismodellen: continu en deterministisch, periodiek en deterministisch, continu en stochastisch, en periodiek en stochas- tisch.

Hoofdstuk 7: Beslissingstheorie

Veel beslissingsproblemen bevatten onzekerheid. door gebrek aan informatie over de omstandig- heden waarin we (komen te) verkeren of doordat de informatie over die omstandigheden niet de- terministisch maar stochastisch is. In de beslissingstheorie worden dit soort modellen bestudeerd en wordt nader ingegaan op bepaalde criteria om tot een beslissing te komen. We onderscheiden de volgende deelgebieden: beslissen zonder kansen, beslissen met kansen en beslissingsbomen.

Hoofdstuk 8: Betrouwbaarheidstheorie

Betrouwbaarheidstheorie houdt zich bezig met het bepalen van de kans dat een bepaald systeem, bestaande uit ´e´en of meer componenten, functioneert. We behandelen de volgende onderwer- pen: structuurfuncties, betrouwbaarheidsfuncties, de (verwachte) levensduur van een systeem en systemen met reparatie.

Hoofdstuk 9: Speciale technieken

In dit hoofdstuk bespreken we speciale technieken voor lineaire en geheeltallige optimaliseringspro- blemen. Aan de orde komen: decompositie methoden (Dantzig-Wolfe en Benders decompositie), Lagrange relaxatie en kolomgeneralisatie.

Hoofdstuk 10: Bomen (deel 2), sorteren en het Chinese postbodeprobleem

Het laatste hoofdstuk gaat over drie onderwerpen: bomen, sorteren en het Chinese postbode- probleem. In Besliskunde 1 zijn bomen reeds aan de orde geweest. In de eerste paragraaf van dit hoofdstuk gaan we nader in op boomwandelingen, binaire zoekbomen en Steiner bomen. De tweede paragraaf behandelt diverse sorteermethoden en de derde het Chinese postbodeprobleem.

Vragen en opgaven

(5)

Het dictaat bevat 154 vragen en 156 opgaven. De oplossingen van de vragen staan in Appendix A.

(6)
(7)

Inhoudsopgave

1 GRAFENTHEORIE (deel 2) 1

1.1 Grafen en matrices . . . 1

1.1.1 Grafen en vectorruimtes . . . 1

1.1.2 De incidentiematrix . . . 3

1.1.3 De kringenmatrix. . . 11

1.1.4 De snedenmatrix . . . 16

1.1.5 De padenmatrix . . . 18

1.1.6 De structuurmatrix. . . 19

1.1.7 Opgaven . . . 23

1.2 Vlakke en duale grafen . . . 24

1.2.1 Vlakke grafen en Euler’s veelvlakkenformule . . . 24

1.2.2 Scheidingspunten . . . 26

1.2.3 Separabiliteit en blokken. . . 31

1.2.4 Stelling van Kuratowski . . . 37

1.2.5 Algoritme om te bepalen of een graaf vlak is . . . 42

1.2.6 Rechte grafen en driehoeksgrafen . . . 46

1.2.7 Minimum en maximum aantal snijpunten . . . 49

1.2.8 Duale grafen . . . 56

1.2.9 Opgaven . . . 59

1.3 Kleurproblemen . . . 61

1.3.1 Het kleuren van de takken . . . 61

1.3.2 Het kleuren van de knooppunten . . . 71

1.3.3 Het kleuren van gebieden van een vlakke graaf; het vierkleurenprobleem . . 77

1.3.4 Het kleurenpolynoom . . . 84

1.3.5 Opgaven . . . 87

2 NETWERK OPTIMALISERING (deel 2) 91 2.1 Netwerkstromen . . . 91

2.1.1 Disjuncte paden en de Stelling van Menger . . . 91

2.1.2 Maximale stromen en minimale sneden. . . 93

2.1.3 Circulatiestromen met minimale kosten . . . 102 v

(8)

2.1.4 Opgaven . . . 109

2.2 Netwerk simplex methode . . . 110

2.2.1 Inleiding . . . 110

2.2.2 Bases en opspannende bomen . . . 112

2.2.3 Algoritme voor problemen zonder capaciteiten . . . 115

2.2.4 Problemen met onder- en bovengrenzen . . . 122

2.2.5 Duale netwerk simplex methode . . . 126

2.2.6 De netwerk simplex methode voor het kortste pad probleem . . . 131

2.2.7 Maximale stroom probleem . . . 138

2.2.8 Opgaven . . . 142

3 KOPPELINGEN 147 3.1 Algemene theorie . . . 147

3.1.1 Eigenschappen in algemene grafen . . . 147

3.1.2 Eigenschappen in bipartiete grafen . . . 155

3.1.3 Equivalente combinatorische resultaten . . . 157

3.1.4 Opgaven . . . 164

3.2 Algoritmen voor bipartiete grafen . . . 166

3.2.1 Koppeling met maximale cardinaliteit in bipartiete graaf. . . 166

3.2.2 Koppeling met maximale gewicht in bipartiete graaf . . . 175

3.2.3 Gilmore-Gomory en Gale-Shapley koppelingen . . . 180

3.2.4 Opgaven . . . 184

3.3 Algoritmen voor algemene grafen . . . 186

3.3.1 Koppeling met maximale cardinaliteit in een willekeurige graaf . . . 186

3.3.2 Koppeling met maximaal gewicht in een willekeurige graaf. . . 195

3.3.3 Opgaven . . . 201

4 MATRO¨IDEN 203 4.1 Inleiding en definities . . . 203

4.2 Duale matro¨ıde . . . 211

4.3 Voorbeelden van matro¨ıden . . . 213

4.4 Grafen en matro¨ıden . . . 217

4.5 Het gretige algoritme . . . 219

4.6 Onafhankelijkheidssystemen . . . 225

4.7 Doorsnede van matro¨ıden . . . 229

4.7.1 Inleiding . . . 229

4.7.2 Onafhankelijke verzameling met maximale cardinaliteit . . . 231

4.7.3 Onafhankelijke verzameling met maximaal gewicht . . . 237

4.8 Grafo¨ıden . . . 240

4.9 Representeerbaarheid van matro¨ıden . . . 242

4.10 Polymatro¨ıden . . . 248

(9)

4.11 Opgaven . . . 252

5 INWENDIGE PUNT METHODEN 257 5.1 Inleiding . . . 257

5.2 De methode van Karmarkar . . . 259

5.2.1 Het idee van projectieve schaling . . . 259

5.2.2 Het algoritme . . . 261

5.3 De affiene schaling methode . . . 267

5.3.1 De primale affiene schaling methode . . . 267

5.3.2 De duale affiene schaling methode . . . 277

5.3.3 De primale-duale affiene schaling methode . . . 279

5.4 Potentiaal reductie methode . . . 289

5.5 Pad-volgende methoden . . . 297

5.5.1 Primale pad-volgende methode . . . 301

5.5.2 Primale-duale pad-volgende methode . . . 306

5.5.3 Predictor-corrector methode. . . 310

5.5.4 Vergelijking van de richtingen van diverse inwendige punt methoden . . . . 320

5.6 Opgaven . . . 321

6 VOORRAADTHEORIE 325 6.1 Inleiding . . . 325

6.2 Continue deterministische modellen met ´e´en product . . . 327

6.3 Continue deterministische modellen met meer producten . . . 332

6.3.1 De afwegingskromme . . . 332

6.3.2 Een cyclisch productieproces . . . 335

6.4 Periodieke deterministische modellen . . . 336

6.4.1 Geen tekorten toegestaan . . . 336

6.4.2 Wel tekorten toegestaan . . . 339

6.4.3 Silver-Meal heuristiek . . . 341

6.5 Continue stochastische modellen . . . 343

6.6 Periodieke stochastische modellen . . . 349

6.6.1 E´en periode en geen vaste bestelkosten (krantenjongenprobleem) . . . 349

6.6.2 E´en periode, vaste bestelkosten en een beginvoorraad . . . 352

6.6.3 Oneindig veel perioden en geen vaste bestelkosten . . . 353

6.7 Opgaven . . . 355

7 BESLISSINGSTHEORIE 361 7.1 Inleiding . . . 361

7.2 Beslissen zonder kansen . . . 362

7.3 Beslissen met kansen . . . 364

7.4 Beslissingsbomen . . . 367

(10)

7.5 Opgaven . . . 369

8 BETROUWBAARHEIDSTHEORIE 371 8.1 Structuurfuncties . . . 371

8.2 Betrouwbaarheidsfuncties . . . 376

8.3 Levensduur van het systeem . . . 383

8.4 De verwachte levensduur . . . 388

8.5 Systemen met reparatie . . . 389

8.6 Opgaven . . . 391

9 SPECIALE TECHNIEKEN 395 9.1 Decompositie methoden . . . 395

9.1.1 Dantzig-Wolfe decompositie . . . 395

9.1.2 Benders decompositie . . . 407

9.1.3 Opgaven . . . 412

9.2 Lagrange relaxatie . . . 414

9.2.1 Inleiding en voorbeelden . . . 414

9.2.2 Beste Lagrange relaxatie. . . 418

9.2.3 Opgaven . . . 428

9.3 Kolomgeneratie voor geheeltallige problemen . . . 430

9.3.1 Inleiding . . . 430

9.3.2 Dantzig-Wolfe decompositie van een geheeltallig LP-probleem . . . 431

9.3.3 LP-relaxatie van het masterprobleem. . . 433

9.3.4 Branch-and-price algoritme voor (0, 1)-problemen. . . 438

9.3.5 Opgaven . . . 444

10 BOMEN (deel 2), SORTEREN EN HET CHINESE POSTBODE PROBLEEM445 10.1 Bomen (deel 2) . . . 445

10.1.1 Boomwandelingen . . . 445

10.1.2 Binaire zoekbomen . . . 449

10.1.3 Steiner bomen . . . 452

10.2 Sorteren . . . 455

10.2.1 Bubble sort . . . 456

10.2.2 Insertion sort . . . 457

10.2.3 Merge sort . . . 458

10.2.4 Quick sort . . . 460

10.3 Het Chinese postbodeprobleem . . . 463

10.3.1 Ongerichte versie . . . 463

10.3.2 Gerichte versie . . . 466

10.3.3 Gemengde versie . . . 466

10.4 Opgaven . . . 471

(11)

A OPLOSSING VAN DE VRAGEN 473

A.1 Hoofdstuk 1 . . . 473

A.2 Hoofdstuk 2 . . . 481

A.3 Hoofdstuk 3 . . . 489

A.4 Hoofdstuk 4 . . . 494

A.5 Hoofdstuk 5 . . . 498

A.6 Hoofdstuk 6 . . . 503

A.7 Hoofdstuk 7 . . . 507

A.8 Hoofdstuk 8 . . . 510

A.9 Hoofdstuk 9 . . . 514

A.10 Hoofdstuk 10 . . . 521

(12)
(13)

GRAFENTHEORIE (deel 2)

In Besliskunde 1 is reeds een inleiding gegeven in de grafentheorie. Een groot aantal begrippen voor niet-gerichte en gerichte grafen is daar ge¨ıntroduceerd. Verder is nader ingegaan op wat met

’bomen’ gedaan kan worden, zoals codes en zoekmethoden (Depth-First Search, Breadth-First Search en de bepaling van streng samenhangende componenten). Ook zijn in Besliskunde 1 de eigenschappen van Euler grafen en Hamilton grafen aan bod gekomen.

In dit hoofdstuk worden de volgende onderwerpen behandeld:

- grafen en matrices;

- vlakke en duale grafen;

- kleurproblemen.

1.1 Grafen en matrices

1.1.1 Grafen en vectorruimtes

Indien men een bepaalde graaf G = (V, E) wil aanduiden, dan gebeurt dat op papier vaak door een plaatje, zoals hiernaast, of door een bepaalde notatie (K4 voor de volledige graaf met 4 knooppunten). Indien de computer wordt gebruikt, bijv. om een algoritme mee uit te voeren, dan wordt de graaf gewoon- lijk gepresenteerd met een bepaalde datastructuur, bijvoorbeeld

door een matrix. s s

s s





















T T T T T T T T T T













Q Q Q Q Q Q

1

2 3

4 e1

e2

e3

e4

e5 e6

Een graaf kan bijvoorbeeld worden gerepresenteerd door een ma- trix die voor ieder knooppunt een rij heeft en voor iedere tak een kolom. De kolom behorende bij een zekere tak heeft 1’en in de twee rijen behorende bij de eindpunten van de tak en verder 0’en.

Voor de graaf K4 staat deze matrix hiernaast.

1 1 1 0 0 0 0 0 1 1 1 0 0 1 0 1 0 1 1 0 0 0 1 1

1

(14)

Laat ons wederom de graaf K4beschouwen. Iedere deelverzameling van de zes takken kan worden gerepresenteerd door een zestal (x1, x2, x3, x4, x5, x6) met xi =

( 1 als ei tot de deelverz. behoort 0 anders

Zo wordt de deelverz. {e1, e3, e4} gerepresenteerd door (1, 0, 1, 1, 0, 0). Voor de K4 zijn er 26 van dergelijke zestallen.

In het algemeen hebben we bij een graaf met m takken 2mm-tallen bestaande uit 0’en en 1’en. Zij W (G) de verz. van deze m-tallen. Laat Z2 = {0, 1} met optelling en vermenigvuldiging modulo 2; we noteren deze optelling en vermenigvuldiging met ⊕ resp. ⊗.

Deze optelling en vermenigvuldiging induceren een optelling op W (G) en een vermenigvuldiging van de elementen van W (G) met een α ∈ Z2 door:

x + y = (x1⊕ y1, x2⊕ y2, . . . , xm⊕ ym) en α · x = (α ⊗ x1, α ⊗ x2, . . . , α ⊗ xm).

Stelling 1.1

W (G) is een m-dimensionale vectorruimte over het lichaam Z2. Bewijs

De gewenste eigenschappen zijn eenvoudig te verifi¨eren (ga dit zelf na).

We introduceren de volgende deelverz. van W (G):

WC(G): de m-tallen van W (G) die behoren bij de nulgraaf (graaf zonder takken), de enkelvoudige kringen en de vereniging van tak-disjuncte kringen.

WS(G): de m-tallen van W (G) die behoren bij de nulgraaf, de minimale sneden en de vereniging van tak-disjuncte sneden.

Stelling 1.2

WC(G) en WS(G) zijn lineaire deelruimtes van W (G).

Bewijs

Uit de axioma’s volgt dat het voldoende is om aan te tonen dat de som van twee elementen van WC(G) of van WS(G) weer tot WC(G) resp. WS(G) behoort.

Merk op dat een element tot WC(G) behoort d.e.s.d. als ieder knooppunt in de bijbehorende graaf een even graad heeft. Vanwege de optelling modulo twee volgt hieruit direct dat als x, y ∈ WC(G), ook x + y ∈ WC(G).

Beschouw vervolgens twee sneden: S1 = (V1, V2) en S2= (V3, V4). Laat

A = V1∩ V3, B = V1∩ V4, C = V2∩ V3, D = V2∩ V4, V5= A ∪ D en V6 = B ∪ C.

Zij x en y de vectoren behorende bij S1 resp. S2, en laat z = x+y. De bij z behorende takkenverz.

bestaat uit de takken die lopen tussen V5 en V6 (ga dit zelf na): z behoort dus tot WS(G).

Vraag 1.1

Als x behoort tot WC(G) ∩ WS(G), dan bevat x een even aantal 1’en. Toon dit aan.

(15)

1.1.2 De incidentiematrix

Zij G = (V, E) een graaf met n knooppunten, m takken en geen lussen. De incidentiematrix A(G) is een n × m-matrix die het verband aangeeft tussen de knooppunten en de takken, en is als volgt gedefinieerd:

niet-gerichte graaf: aij =

( 1 als tak j knooppunt i als eindpunt heeft 0 anders

gerichte graaf: aij =





+1 als pijl j knooppunt i als beginpunt heeft

−1 als pijl j knooppunt i als eindpunt heeft 0 anders

De matrix in het begin van paragraaf 1.1.1is de incidentiematrix van de K4.

Een matrix heet totaal unimodulair als de determinant van iedere vierkante deelmatrix +1, -1 of 0 is. Dus ook alle elementen van een totaal unimodulaire matrix zijn +1, -1 of 0.

Stelling 1.3

Zij A een matrix met elementen 0, +1, −1 met in iedere kolom hoogstens twee niet-nul elementen.

A is totaal unimodulair d.e.s.d. als de rijen van A in twee disjuncte deelverz. I1 en I2 zijn te verdelen zdd.

(1) als twee niet-nul elementen uit dezelfde kolom hetzelfde teken hebben, dan behoren de bijbehorende rijen tot verschillende deelverzamelingen;

(2) als twee niet-nul elementen uit dezelfde kolom verschillend teken hebben, dan behoren de bijbehorende rijen tot dezelfde deelverzamelingen.

Bewijs

⇒ Laat A totaal unimodulair zijn en in iedere kolom precies twee niet-nul elementen hebben (in verband met wat moet worden aangetoond is dit geen beperking). Construeer de volgende niet-gerichte graaf: neem voor iedere rij een knooppunt en voor iedere kolom een tak; verbind de knooppunten i en j met een tak voor iedere kolom waarin in rij i en j twee niet-nul elementen hebben. Noem een tak speciaal als beide niet-nul elementen hetzelfde teken hebben;

anders heet de tak gewoon.

We zullen allereerst aantonen dat iedere kring van de graaf een even aantal speciale takken heeft. Laat C een kring van de graaf zijn, zeg C = [v1, v2, . . . , vp, v1]. Beschouw de vierkante deelmatrix van A voortgebracht door deze kring:

(16)

α1 0 0 0 . . . 0 0 0 βp

β1 α2 0 0 . . . 0 0 0 0

0 β2 α3 0 . . . 0 0 0 0

. . . . . . . . 0 0 0 0 . . . 0 βp−2 αp−1 0

0 0 0 0 . . . 0 0 βp−1 αp

Hierbij is αj = ±1, βj± 1, aj = βj als de j-de tak speciaal is en aj = −βj als de j-de tak gewoon is.

Om de determinant van deze deelmatrix te bepalen ontwikkelen we hem naar de eerste rij:

determinant =Qp

j=1 αj + (−1)p−1Qp j=1 βj.

Als er een oneven aantal, zeg 2k + 1, speciale takken zijn, dan is dit gelijk aan:

Qp

j=1 αj+ (−1)p−1(−1)p−(2k+1)Qp

j=1 αj = 2Qp

j=1 αj = ±2.

De matrix A is dus niet totaal unimodulair: iedere kring heeft dus een even aantal speciale takken. Perk nu alle gewone takken in, d.w.z. voeg de uiteinden samen tot ´e´en knooppunt (kies ´e´en van de twee) en laat de tak weg. De zo verkregen graaf heeft geen kringen meer van oneven lengte en is dus bipartiet, d.w.z. dat de knooppuntenverz. in twee deelverz. I1 en I2

is op te splitsen zdd. alle takken ´e´en uiteinde in I1 en ´e´en in I2 hebben.

Wijs vervolgens de knooppunten die door inperking zijn verdwenen toe aan de indexverz.

waar het andere knooppunt toe behoort. Nu is eenvoudig na te gaan dat aan het gestelde in (1) en (2) is voldaan.

⇐ Veronderstel vervolgens dat er een splitsing van de rijenverz. is die aan (1) en (2) voldoet.

Neem een willekeurige (k × k)-deelmatrix B van A. We bewijzen de bewering met inductie naar k. Merk op dat het klopt voor k = 1. Neem nu k algemeen en kies een willekeurige kolom van B. Het aantal 1’en in deze kolom is 0, 1 of 2. Als de kolom geen 1’en bevat, dan is det(B) = 0. Als de kolom precies ´e´en 1 bevat, dan ontwikkelen we de determinant naar deze kolom: de determinant is dan ± det(B0) voor de (k − 1) × (k − 1) matrix B0 die uit B ontstaat door de rij en kolom die behoren bij het niet-nul element uit B weg te laten. Volgens de inductieveronderstelling klopt het gestelde. Op deze wijze is de stelling te bewijzen voor iedere deelmatrix B waarin niet alle kolommen twee 1’en bevatten. Beschouw tenslotte een B met in iedere kolom precies twee 1’en. Uit (1) en (2) geldt dat voor iedere kolom j:

P

i∈I1 bij =P

i∈I2 bij, wat afhankelijkheid van de rijen inhoudt. Maar dit betekent dat det(B) = 0.

Stelling1.3 leidt direct tot het volgende resultaat.

Stelling 1.4

(1) De incidentiematrix van een niet-gerichte graaf is totaal unimodulair d.e.s.d. als de graaf bipartiet is.

(2) De incidentiematrix van een gerichte graaf is totaal unimodulair.

(17)

We zullen nader ingaan op begrippen uit de lineaire algebra zoals lineaire onafhankelijkheid en rang. Hiertoe beschouwen we de kolommen van A(G) als elementen van Zn2 en van Zn voor een niet-gerichte resp. een gerichte graaf.

Stelling 1.5

Voor een niet-gerichte graaf G geldt: een verz. kolomvectoren van A(G) is lineair onafhankelijk d.e.s.d. als de bijbehorende takken geen kring bevatten.

(18)

Bewijs

⇒ Stel dat de bijbehorende takken een kring bevatten. Als we de kolommen van de kring bij elkaar optellen (modulo 2), dan geeft dit de 0-vector omdat ieder knooppunt incident is met een even aantal takken van de kring. De kolommen zijn dus linear afhankelijk: tegenspraak.

⇐ Stel dat de som van een aantal kolomvectoren de 0-vector oplevert. Dan vormen de bijbehorende takken een deelgraaf zdd. ieder knooppunt incident is met een even aantal takken. Dit is een Eulergraaf en deze bevat een kring: tegenspraak.

Stelling 1.6

Voor een gerichte graaf G geldt: een verz. kolomvectoren van A(G) is lineair onafhankelijk d.e.s.d.

als de bijbehorende pijlen geen kring bevatten.

Bewijs

⇒ Stel dat de bijbehorende pijlen een kring bevatten (we mogen wel aannemen dat de kring enkelvoudig kring is met knooppunten v1, v2, . . . , vk, v1). Doorloop deze kring in de richting v1→ v2 → · · · → vk→ v1 en geef de i-de pijl gewicht λi= +1 als de richting van de pijl overeenkomt met de richting waarin de kring wordt doorlopen; in het andere geval geven we de i-de pijl gewicht λi= −1. De matrix van de kolommen λiai, met ai de kolom van de incidentiematrix behorende bij de i-de pijl van de kring, heeft de volgende gedaante (de laatste rijen van de matrix horen bij vk+1, vk+2, . . . , vn en de bijbehorende vectoren zijn de

nulvector):

λ1a1 λ2a2 · · · λkak

1 0 · · · · −1

−1 1 · · · · ·

0 −1 · · · · ·

· · · ·

· · · ·

· · · ·

· · · 1 0

· · · −1 1 0 0 · · · 0 0

· · · ·

· · · · 0 0 · · · 0 0

Als we de kolommen van de kring bij elkaar optellen, dan geeft dit de 0-vector, wat in strijd is met de lineaire onafhankelijkheid.

⇐ Stel dat er een lineaire combinatie van een aantal kolomvectoren is die de 0-vector oplevert.

Als een pijl het gewicht λi heeft gekregen, dan dupliceren we deze pijl |λi| keer en we

draaien de richting om als λi < 0. Omdat in ieder knooppunt het aantal positieve 1’en moet worden gecompenseerd met evenveel -1’en, heeft de graaf in ieder knooppunt evenveel

(19)

uitgaande als binnenkomende pijlen. Dus vormen deze pijlen een gerichte Eulergraaf en deze bevat een ronde. Dus de oorspronkelijke graaf (zonder het omdraaien van pijlen) bevat een kring: tegenspraak.

Veronderstel dat G een niet-gerichte graaf is met p componenten. Door de knooppunten en de takken geschikt, in volgorde van de componenten, te nummeren kan A(G) in blokvorm worden geschreven, met Ai de incidentiematrix van de i-de component:

A(G) =

A1 0 0 . . . 0 0

0 A2 0 . . . 0 0 . . . . . . . . . . . . 0 0 0 . . . Ap−1 0

0 0 0 . . . 0 Ap

(1.1)

Stelling 1.7

Als G een niet-gerichte graaf is met n knooppunten en p componenten, dan is de rang van A(G) gelijk aan n − p.

Bewijs

Op grond van de schrijfwijze (1.1) is het voldoende om te bewijzen dan de rang n − 1 is voor een samenhangende graaf. Stel dus dat G samenhangend is. Omdat iedere kolom twee 1’en heeft, is de som van alle rijen 0 (de optelling is modulo 2), zodat de rang hoogstens n − 1 is.

Stel vervolgens dat er k rijen zijn, met k < n, die optellen tot nul. Dan geldt voor iedere tak:

`

ofwel beide uiteinden behoren bij deze k rijen, `ofwel geen der uiteinden behoort bij deze k rijen.

De knooppunten bij deze k rijen genereren dus een deelgraaf met ´e´en of meer componenten:

tegenspraak met de samenhang van G.

Stelling 1.8

Als G een gerichte graaf is met n knooppunten en p componenten, dan is de rang van A(G) gelijk aan n − p.

Bewijs

Analoog aan het bewijs van Stelling 1.7 is het voldoende om het te bewijzen voor een samen- hangende graaf. Omdat iedere kolom ´e´en +1 en ´e´en -1 bevat, tellen de rijen op tot de 0-vector, zodat de rang hoogstens n − 1 is. Stel vervolgens dat er een lineaire combinatie is van k rijen, met k < n, die de 0-vector opleveren. Dan geldt voor iedere pijl: `ofwel beide uiteinden behoren (met dezelfde factor) bij deze k rijen `ofwel geen der uiteinden behoort bij deze k rijen. De knooppunten bij de k rijen genereren dus een deelgraaf met ´e´en of meer componenten: tegenspraak met de samenhang van G.

(20)

Stelling 1.9

Zij G een niet-gerichte samenhangende graaf met n knooppunten en laat A1 een (n − 1) × (n − 1) deelmatrix van A(G) zijn. Dan geldt: A1 heeft onafhankelijke rijen d.e.s.d. als de n−1 kolommen van A(G) die behoren bij A1 corresponderen met de takken van een opspannende boom van G.

Bewijs

Zij G1 de deelgraaf van G voortgebracht door de n − 1 takken die bij A1 behoren.

⇒ Omdat n − 1 ≥ rang A(G1) ≥ rang A1= n − 1, geldt dat rang A(G1) = n − 1, zodat op grond van Stelling1.7de deelgraaf G1 samenhangend is. Een samenhangende graaf met n − 1 takken is een boom.

⇐ Omdat G1 een boom is, is G1 samenhangend, zodat - weer op grond van Stelling1.7 - rang A(G1) = n − 1. Uit het bewijs van Stelling 1.7volgt tevens dat iedere deelmatrix van n − 1 rijen lineair onafhankelijk is.

Stelling 1.10

Zij G een samenhangende gerichte graaf met n knooppunten en laat A1 een (n − 1) × (n − 1) deelmatrix van A(G) zijn. Dan geldt: A1 heeft onafhankelijke rijen d.e.s.d. als de n−1 kolommen van A(G) die behoren bij A1 corresponderen met de pijlen van een opspannende boom van G.

Bewijs

Het bewijs wordt als Opgave 1.1aan de lezer overgelaten.

We zullen nu een formule geven voor het aantal opspannende bomen van een gerichte graaf.

Hierbij wordt gebruik gemaakt van de volgende stelling uit de lineaire algebra die bekend staat als de Stelling van Cauchy en Binet.1

Stelling 1.11 Stelling van Cauchy en Binet

Zij A een n × m en B een m × n matrix, waarbij n ≤ m. Dan is det(AB) gelijk aan de som van

m

n determinanten A0B0, waarbij A0 uit A wordt verkregen door n kolommen van A te kiezen en dan voor B0 de bijbehorende rijen van B te kiezen.

Stelling 1.12

Het aantal opspannende bomen van een samenhangende gerichte graaf G is gelijk aan det(BBT), waarbij B uit A(G) wordt verkregen door een willekeurige rij weg te laten.

Bewijs

Volgens de Stelling van Cauchy en Binet geldt det(BBT) =P det(A1AT1), waarbij de som wordt genomen over alle (n − 1) × (n − 1) deelmatrices A1 van B. Volgens Stelling 1.10 geldt dat det(A1) = 0 als A1 niet bij een opspannende boom hoort en anders is det(A1) = ±1. Er geldt dus

det(BBT) =P det(A1AT1) =P {det(A1)}2 = het aantal opspannnende bomen van G.

1Een bewijs van deze stelling staat bijvoorbeeld in: G. Hadley, Linear algebra, Addison-Wesley (1961) p. 102.

(21)

Stelling 1.12 kan ook worden gebruikt om het aantal opspannende bomen van een niet-gerichte graaf te bepalen: maak er een gerichte graaf van door iedere tak een willekeurige richting te geven en pas de stelling toe. We kunnen het aantal opspannende bomen van een normale niet-gerichte graaf G = (V, E) ook met een andere determinant bepalen. Maak daartoe de (n − 1) × (n − 1) (n − 1 door weer een willekeurig knooppunt weg te laten) matrix B(G), waarbij

{B(G)}ij =





dG(i) als i = j;

−1 als i 6= j en (i, j) ∈ E;

0 als i 6= j en (i, j) /∈ E.

Stelling 1.13 Kirchhoff ’s Matrix Boom Stelling2

Het aantal opspannende bomen van een samenhangende normale niet-gerichte graaf G is gelijk aan det{B(G)}.

Bewijs

We maken van G een gerichte graaf H door elke tak (i, j) van G te vervangen door de twee pijlen (i, j) en (j, i). Zij B de (n − 1) × 2m matrix die uit de incidentiematrix van de gerichte graaf H wordt verkregen door de laatste rij weg te laten. Dan geldt voor 1 ≤ i ≤ n − 1:

bik=





+1 als k een pijl (i, j) van H is voor zekere 1 ≤ j ≤ n;

−1 als k een pijl (j, i) van H is voor zekere 1 ≤ j ≤ n;

0 als k een pijl van H is die niet incident is met i.

We zullen eerst bewijzen dat BBT = 2B(G). We kunnen schrijven:

{BBT}ii=P

k b2ik= aantal pijlen incident met i in H = 2dG(i). Voor i 6= j geldt:

{BBT}ij =P

k bikbjk = −1× aantal pijlen dat tussen i en j loopt in H =

( −2 als (i, j) ∈ E;

0 als (i, j) /∈ E.

Hieruit volgt BBT = 2B(G). Dit geeft:

Het aantal opspannende bomen van H = det{BBT} = det{2B(G)} = 2n−1· det{B(G)}.

Omdat elke opspannende boom van G aanleiding geeft tot 2n−1opspannende bomen van H (voor iedere tak van G zijn twee pijlen uit H te kiezen), volgt tenslotte dat het aantal opspannende bomen van G gelijk is aan det{B(G)}.

Het aantal opspannende bomen in de volledige graaf Kn is volgens bovenstaande stelling dus gelijk aan

det{B(Kn)} = det

n − 1 −1 −1 · · · −1

−1 n − 1 −1 · · · −1

· · · ·

· · · ·

· · · ·

−1 −1 −1 · · · n − 1

= nn−2,

2Deze stelling is impliciet al aanwezig in een artikel van Kirchhoff uit 1847 (G. Kirchhoff, ¨Uber die Aufl¨osungen der Gleichungen, auf die man bei der Untersuchung der Verteilung galvanischer Str¨ome gef¨urt wird, Ann. Phys.

Chem. 72 (1847) 497–508.

(22)

wat een ander bewijs van de Stelling van Cayley3 geeft. Bovenstaande gelijkheid is als volgt in te zien. B(Kn) = nI − J met I de eenheidsmatrix en J de matrix met ieder element gelijk aan 1, dus rang(J ) = 1. J heeft dus n − 2 eigenwaarden 0; de laatste eigenwaarde is n − 1 (de som van de eigenwaarden is gelijk aan de som van de diagonaalelementen). De matrix B(Kn) heeft dus n − 2 eigenwaarden gelijk aan n − 0 = n en ´e´en eigenwaarde gelijk aan n − (n − 1) = 1.

De determinant van een vierkante matrix is gelijk aan het product van de eigenwaarden (omdat det(A − λI) = (λ1− λ)(λ2− λ) · · · (λn− λ) en neem λ = 0). Hieruit volgt det{B(Kn)} = nn−2. Overigens kan deze determinant ook worden berekend door slim te vegen: trek de eerste kolom af van alle andere kolommen en vervang daarna de eerste rij door de som van alle rijen. Hiermee ontstaat en onderdriehoeksmatrix met op de diagonaal eerst een 1 en daarna n − 2 keer een n.

Er is een soortgelijke manier om het aantal opspannende gerichte bomen te tellen. Voor een normale gerichte graaf G = (V, A) defini¨eren we de Kirchhoff matrx K(G) door:

{K(G)}ij =





d(i) als i = j

−1 als i 6= j en (i, j) ∈ A 0 als i 6= j en (i, j) /∈ A Lemma 1.1

Zij G = (V, A) een gerichte normale graaf met n − 1 pijlen. Dan geldt:

G is een in v1 gewortelde boom d.e.s.d. als de (1, 1)-cofactor van K(G) gelijk is aan 1.

Bewijs

Voor het bewijs gebruiken we het volgende in Besliskunde 1 aangetoonde resultaat voor een gerichte graaf G met n − 1 pijlen:

G is een in v1 gewortelde boom d.e.s.d. als d(1) = 0 en d(i) = 1 voor i = 2, 3, . . . , n.

⇒ Zij G is een in v1 gewortelde boom. Omdat een boom geen ronden heeft kunnen de knoop- punten z´o worden genummerd dat als (i, j) ∈ A dan is i < j. Nu is K(G) een bovendriehoeks- matrix met {K(G)}ii= d(i) = 1 voor i = 2, 3, . . . , n. Hieruit volgt dat de (1, 1)-cofactor van K(G) gelijk is aan 1.

⇐ Omdat de (1, 1)-cofactor van K(G) gelijk is aan 1 heeft iedere kolom van de bijbehorende (n − 1) × (n − 1) matrix minstens ´e´en element ongelijk aan 0. Dit betekent dat d(i) ≥ 1 voor i = 2, 3, . . . , n. Omdat G precies n − 1 pijlen heeft volgt hieruit dat d(1) = 0 en d(i) = 1 voor i = 2, 3, . . . , n en . Maar dan is G is een in v1 gewortelde boom.

Stelling 1.14

Zij G = (V, A) een gerichte normale graaf. Dan is het aantal in knooppunt 1 gewortelde bomen gelijk aan de (1, 1)-cofactor van K(G).

Bewijs

De j-de kolom van K(G) heeft op plaats j het getal d(j) en op plaats i 6= j een −1 als (i, j) ∈ A en anders een 0. De j-de kolom van K(G) kan dus worden opgeval als de som van

3A. Cayley, A theorem on trees, Quarterly Journal of Mathematics 23 (1989) 376–378.

(23)

d(j) kolommen waarbij iedere kolom hoort bij ´e´en pijl die naar knooppunt j loopt. Door dit te doen voor j = 2, 3, . . . , n en de deelmatrix van K(G) zonder de eerste rij en eerste kolom te noteren met K11(G) kunnen we schrijven det K11(G) =Pn

j=2

Pd(j)

k=1 det K11(Gj,k), waarbij Gj,k

een deelgraaf van G is met de volgende eigenschappen:

(1) ieder knooppunten 2, 3, . . . , n hebben in Gj,k een in-graad gelijk aan 1.

(2) Gj,k heeft n − 1 pijlen.

Volgens Lemma1.1is Gj,k een in v1 gewortelde boom d.e.s.d. als de (1, 1)-cofactor van K11(Gj,k) gelijk is aan 1. Merk verder op dat als Gj,k geen in v1gewortelde boom er een knooppunt j 6= 1 is met d(j) = 0, waaruit volgt dat det K11(Gj,k) = 0. Hieruit volgt nu dat het aantal in knooppunt 1 gewortelde bomen gelijk is aan de (1, 1)-cofactor van K(G).

Vraag 1.2

Zij G een boom en laat A1 uit A(G) verkregen worden door een willekeurige rij weg te laten.

Toon aan dat det (A1) = ±1.

Vraag 1.3

Laat met een tegenvoorbeeld zien dat resultaat van Stelling 1.12 niet geldt voor niet-gerichte grafen.

Vraag 1.4

Bepaal het aantal in knooppunt 1 gewortelde bomen in de volledige gerichte graaf met 4 knoop- punten m.b.v. Stelling 1.14.

1.1.3 De kringenmatrix

Zij G een samenhangende, niet-gerichte graaf met n knooppunten en m takken. Laat T een willekeurige opspannende boom zijn. T bestaat dus uit n−1 takken, zeg em−n+2, em−n+3, . . . , em. Door aan T de tak ek (1 ≤ k ≤ m − n + 1) toe te voegen ontstaat precies ´e´en kring. De aldus te construeren m − n + 1 kringen hebben lineair onafhankelijke vectoren in WC(G), namelijk: ek komt alleen voor in de k-de kring, k = 1, 2, . . . , m − n + 1.

De bij T behorende kringenmatrix CT(G) is de matrix met als rijen deze m − n + 1 vectoren.

CT(G) heeft dus de gedaante:

e1 e2 · · · em−n+1 em−n+2 · · · em CT(G) = Im−n+1

DT(G)

!

. (1.2)

De kringenmatrix kan op analoge wijze ook voor gerichte grafen worden gedefinieerd. Dan wordt via het onderscheid +1 of −1 rekening gehouden met de ori¨entatie van de pijlen, waarbij de kring gegenereerd door de pijl ak in de richting van de pijl ak wordt doorlopen. Voor meer details zie hoofdstuk 2 in W.-K. Chen, Applied graph theory, North-Holland, 1971.

(24)

Voorbeeld 1.1

Beschouw nevenstaande graaf en neem als opspannen- de boom T = {e2, e4, e5, e7, e8}. Dit geeft als krin- genmatrix (de kringen ontstaan door achtereenvolgens e1, e3 en e6 aan T toe te voegen):

e1 e3 e6 e2 e4 e5 e7 e8 CT(G) =

1 0 0 0 1 0 0 0 1

1 1 1 1 1 0 1 1 0 0 0 0 0 1 1

 .

s

s s

s s

 s H

HH H

HH

H HH

HH H



e1

e2

e3

e4

e5

e6

e7

e8

1

3

2

5

4

6

De vector van de kring {e1, e3, e2, e8, e7} wordt verkregen door de kringvectoren van e1 en e3 (de niet tot T behorende takken van de kring) bij elkaar op te tellen (modulo 2). De volgende stelling toont aan dat dit algemeen geldt.

Stelling 1.15

Zij C een (som van tak-disjuncte) kring(en), bestaande uit de takken {ej | j ∈ J }, en laat c de bijbehorende vector van WC(G) zijn. Zij J = {j ∈ J | ej ∈ T } = {j/ 1, j2, . . . , jk} met ji de index van de rij van CT(G) behorende bij het i-de element van J. Dan geldt:

c =Pk

i=1{CT(G)}ji, waarbij {CT(G)}ji de ji-de rij van CT(G) is.

Bewijs

Beschouw de vector c +Pk

i=1{CT(G)}ji. Dit is weer een element van WC(G), dus de correspon- derende takkenverz. is `of leeg, `of bevat een kring. Kies een p zdd. ep ∈ T ./

Als ep∈ C : p ∈ J, zeg p behoort bij js :c + Pki=1{CT(G)}ji

p = cp⊕ {CT(G)}jsp = 1 ⊕ 1 = 0.

Als ep∈ C : p // ∈ J :c + Pki=1{CT(G)}ji

p = cp = 0.

Hieruit volgt c + Pki=1{CT(G)}ji

p = 0 voor alle p met ep∈ T ./ De takken bij de niet-nul elementen van c +Pk

i=1{CT(G)}ji zitten in T . T bevat geen kring, zodat ook hiervoor c +Pk

i=1{CT(G)}ji = 0. Omdat c +Pk

i=1{CT(G)}ji een (0,1)-vector is, geldt c =Pk

i=1{CT(G)}ji. Gevolg 1.1

De rijen van CT(G) vormen een basis voor WC(G) en de vectorruimte WC(G) heeft dimensie m − n + 1.

Stelling 1.16

Als c ∈ WC(G), dan is A(G)c = 0 (modulo 2).

Bewijs

{A(G)c}i =P

jaijcj = het aantal takken op C dat met vi incident is = 0 (mod 2), 1 ≤ i ≤ n, want een kring heeft een even aantal gemeen met ieder knooppunt.

(25)

Gevolg 1.2

A(G)CT(G)t= 0, waarbij CT(G)t de getransponeerde matrix van CT(G) is.

(26)

Vervolgens zullen we laten zien hoe de kringenmatrix uit de incidentiematrix kan worden bepaald.

Neem daartoe een voortbrengende boom T . In Stelling1.9is aangetoond dat de bij T behorende takken een (n − 1) × (n − 1) deelmatrix van onafhankelijke rijen opleveren. Na hernummering (zet de takken van de boom weer achteraan) kunnen we schrijven:

A(G) = A11 A12

A21 A22

!

en CT(G) =



Im−n+1 DT(G)

 ,

met A12 de niet-singuliere (n − 1) × (n − 1) deelmatrix behorende bij de takken van T . Omdat A(G)CT(G)t = 0 (zie Gevolg 1.2) kunnen we schrijven A11Im−n+1+ A12[DT(G)t = 0, waaruit volgt dat

DT(G)t= −A−112A11= A−112A11 (modulo 2). (1.3) De inverse A−112 kan via een speciale methode snel worden bepaald. Deze methode maakt gebruik van de speciale structuur van A12. Als X = A−112, dan is X de unieke oplossing van XA12= I, d.w.z. X{A12}•i= ei, voor alle i. Omdat A12 ´e´en rij minder heeft dan A(G), is er minstens ´e´en kolom van A12 met precies ´e´en 1 en verder 0’en. Kies zo’n kolom, zeg {A12}•i= ej. Dan geldt:

ei= X{A12}•i= Xej = X•j. De j-de kolom van A−112 is dus ei. Aldus zijn alle kolommen van A−112 te bepalen die in A12 corresponderen met ´e´en eenheidskolom. Via de ’verbindingen’ met deze kolommen, d.w.z. kolommen die in dezelfde rij een 1 hebben als de rij van de eenheidsvector waarin de 1 staat, kunnen we volgende kolommen van de inverse bepalen. Stel {A12}•i= ej+ ek en X•k is bekend. Dan geldt: ei = X{A12}•i= Xej+ Xek= X•j+ X•k, zodat X•j = ei+ X•k en deze vectoren zijn bekend. Zo doorgaande kan A−112 effici¨ent worden bepaald.

Voorbeeld 1.1 (vervolg)

e2 e4 e5 e7 e8 e1 e3 e6

A12=

0 0 0 1 1

1 0 0 0 1

0 0 0 1 0

1 0 1 0 0

0 1 0 0 0

en A11=

0 0 0

0 0 1

1 0 1

0 1 0

1 1 0

 .

{A12}•2= e5 → e2 = {A−112}•5. {A12}•3= e4 → e3 = {A−112}•4. {A12}•1= e4+ e2 → e1 = {A−112}•4+ {A−112}•2→ e1 = e3+ {A−112}•2. {A12}•5= e2+ e1 → e5 = {A−112}•2+ {A−112}•1→ e5 = e3+ e1+ {A−112}•1. {A12}•4= e1+ e3 → e4 = {A−112}•1+ {A12−1}•3→ e4 = e5+ e3+ e1+ {A−112}•3.

Dus: A−112 =

1 1 1 0 0

0 0 0 0 1

1 1 1 1 0

0 0 1 0 0

1 0 1 0 0

→ DT(G) = A−112At11=

1 1 1 1 1

0 1 1 0 0

0 0 0 1 1

 .

(27)

Toepassing 1.1

Beschouw nevenstaand apparaat met acht schakelaars (A t/m H) die ieder een stuk stroomdraad, genoteerd met a t/m h, kunnen onderbreken. De stroomdraden zijn op een bepaalde manier met elkaar verbonden en zijn ook verbonden met een draad l die een lamp L bevat.





q q q q

q q q q

E F G H

A B C D

l L

Als er met l een stroomkring tot stand komt, gaat de lamp L branden. Door proberen zijn we te weten gekomen dat de lamp brandt via de volgende stroomkringen:

C1 = {a, b, f, h, l}, C2 = {a, b, g, l}, C3= {a, e, f, g, l}, C4 = {a, e, h, l}, C5= {b, c, e, h, l}, C6 = {c, f, h, l}, C7 = {c, g, l} en C8= {d, l}. Hoe ziet de schakeling er uit?

We gaan eerst de afhankelijke kringen verwijderen. Dat blijken C1, C3 en C5 te zijn, immers:

C1 = C2+C6+C7, C3 = C4+C6+C7en C5 = C2+C4+C7. Dit geeft de volgende kringenmatrix, met als kringen C2, C4, C6, C7 en C8:

a b c d e f g h l

C =

1 1 0 0 0 0 1 0 1 1 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 1

We proberen C in de vorm CT(G) =



Im−n+1

DT(G)

 te schrijven. Hiervoor kunnen we de kolommen van b, e, f en d gebruiken, en wel voor de eerste, tweede, derde resp.

vijfde eenheidsvector. Voor de vierde eenheidsvector vervangen we de eerste kring door de som van de eerste (C2) en de vierde (C7); de vector bij g geeft dan de vierde eenheidsvector. Dit geeft de volgende matrix:

b e f g d a c h l

C =

1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1

1 1 0 0 1 0 1 1 0 1 1 1 0 1 0 1 0 0 0 1

Als dit de kringenmatrix van een graaf G met 9 takken is, dan heeft G 5 knooppunten (want m − n + 1 = 5).

Vervolgens gaan we de incidentiematrix A(G) trachten te vinden. We gebruiken hierbij dat A(G)Ct= 0.

Hieruit volgt dat A(G) =

DT(G)t In−1

voldoet met

b e f g d a c h l

A(G) =

1 1 0 0 0 1 0 1 1 0 0 1 1 0 0 0 1 1 1 1

1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

Dit is nog geen goede incidentiematrix, want niet iedere rij bevat twee 1’en. Vervang daartoe de vierde rij door de som van de rijen drie en vier;

voeg tenslotte nog een vijfde rij toe:

b e f g d a c h l

A(G) =

1 1 0 0 0 1 0 1 1 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 1

1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 1 1 1 0 1

Dit geeft onderstaande schakeling:

s s

s

s s

@

@

@

@

@

@

@

@

1 5

2

3 4

a

b c

d e

f g

h

l

(28)

Vraag 1.5

Beschouw nevenstaande graaf en neem T = {e2, e3, e5, e6}.

a. Bepaal CT(G) door de onafhankelijke kringen op te sporen.

b. Bepaal CT(G) via A(G).

s s s s

s

@

@

@

@

@

e1 @ e2

e3 e4

e5

e6 1

2 3

4

5

1.1.4 De snedenmatrix

Zij G een samenhangende, niet-gerichte graaf met n knooppunten en m takken. Laat T een willekeurige opspannende boom zijn, bestaande uit de takken em−n+2, em−n+3, . . . , em. Door een tak van T weg te laten is de resterende graaf niet meer samenhangend. Dus iedere tak ek (m − n + 2 ≤ k ≤ m) genereert een minimale snede. De n − 1 aldus geconstrueerde sneden geven n−1 onafhankelijke vectoren in WS(G): ekkomt namelijk alleen voor in de (k−m+n−1)-de snede, k = m − n + 2, m − n + 3, . . . , m.

De bij T behorende snedenmatrix ST(G) is de matrix met als rijen deze n − 1 vectoren.

ST(G) heeft dus de gedaante:

e1 e2 · · · em−n+1 em−n+2 · · · em ST(G) = FT(G)

In−1

!

. (1.4)

Voorbeeld 1.1 (vervolg)

Beschouw weer nevenstaande graaf met als opspannende boom T = {e2, e4, e5, e7, e8}.

Dit geeft de volgende snedenmatrix door ach- tereenvolgens e2, e4, e5, e7 en e8 uit T te ver- wijderen:

e1 e3 e6 e2 e4 e5 e7 e8

ST(G) =

1 0 0 1 1 0 1 1 0 1 0 1 1 0 1

1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1

 .

s

s s

s s

s

 HH

HH HH

H HH

HH H



e1

e2

e3

e4

e5

e6

e7

e8

1

3

2

5

4

6

De vector van de snede {e2, e6, e7} wordt verkregen door de snedenvectoren van e2 en e7 (de takken van de snede die tot T behoren) bij elkaar op te tellen (modulo 2). De volgende stelling toont aan dat dit algemeen geldt.

Stelling 1.17

Zij S een (som van tak-disjuncte) snede(n), bestaande uit de takken {ej | j ∈ J }, en laat s de bijbehorende vector van WS(G) zijn. Zij J= {j ∈ J | ej ∈ T } = {j1, j2, . . . , jk} met ji de index van de rij van ST(G) behorende bij het i-de element van J. Dan geldt:

s =Pk

i=1{ST(G)}ji, waarbij {ST(G)}ji de ji-de rij van ST(G) is.

(29)

Bewijs

Beschouw de vector s +Pk

i=1{ST(G)}ji. Dit is weer een element van WS(G), dus de correspon- derende takkenverz. is `of leeg, `of bevat een snede. Kies een p zdd. ep ∈ T .

Als ep ∈ S : p ∈ J, zeg p behoort bij js:s + Pki=1{ST(G)}ji

p = sp⊕ {ST(G)}jsp = 1 ⊕ 1 = 0.

Als ep∈ S : p // ∈ J :s + Pki=1{ST(G)}ji

p = sp= 0.

Hieruit volgt: s + Pki=1{ST(G)}ji

p = 0 voor alle p met ep ∈ T . De takken bij de niet-nul elementen van s +Pk

i=1{ST(G)}ji zitten dus in E\T . E\T bevat echter geen snede, zodat ook buiten T de elementen van s +Pk

i=1{ST(G)}ji gelijk aan 0 zijn.

Omdat s +Pk

i=1{ST(G)}ji een (0,1)-vector is geldt s =Pk

i=1{ST(G)}ji. Gevolg 1.3

De rijen van ST(G) vormen een basis voor WS(G) en de vectorruimte WS(G) heeft dimensie n−1.

Stelling 1.18 FT(G) = DT(G)t. Bewijs

Omdat iedere snede een even aantal takken gemeen heeft met iedere kring, geldt:

P

j{ST(G)}ij· {CT(G)}kj = het aantal takken in de doorsnede van de i-de snede en de k-de kring

≡ 0 (modulo 2) voor iedere i en k.

Hieruit volgt:

0 = ST(G) · CT(G)t=

FT(G), In−1 Im−n+1

DT(G)t

!

= FT(G) + DT(G)t: FT(G) = DT(G)t. Gevolg 1.4

1. De matrix ST(G) volgt direct uit CT(G) en omgekeerd.

2. De rijen van CT(G) vormen een basis voor de nulruimte van ST(G), immers:

Uit het bewijs van Stelling1.18volgt dat iedere rij van CT(G) in de nulruimte van ST(G) zit.

Omdat de m − n + 1 rijen van CT(G) lineair onafhankelijk zijn en omdat geldt dat de dimensie nulruimte ST(G) = m − dimensie ST(G) = m − n + 1,

is CT(G) een basis voor de nulruimte van ST(G).

Omgekeerd vormen (analoog) de rijen van ST(G) een basis voor de nulruimte van CT(G).

Stelling 1.19

S is een minimale snede van een samenhangende graaf G d.e.s.d. als S een verz. takken is die ten minste ´e´en tak gemeen heeft met iedere opspannende boom van G en minimaal is t.a.v. deze eigenschap.

Bewijs

⇐ De takken van G die niet tot S behoren bevatten geen enkele opspannende boom.

Deze takken vormen dus geen samenhangende deelgraaf meer. S is dus een splitsende verz.

en omdat S minimaal is, is S een minimale snede.

Referenties

GERELATEERDE DOCUMENTEN

1 Als de parameters gespecificeerd zijn, bijvoorbeeld in het kortste pad probleem als het netwerk N is gegeven (een netwerk is een gerichte graaf met ´e´en of meer functies op

De duale simplex methode 2 doet iets omgekeerds: we hebben steeds een toelaatbaar hoekpunt van het duale LP-probleem en zodra de bijbehorende oplossing van het oorspronkelijke

⇒ Laat A totaal unimodulair zijn en in iedere kolom precies twee niet-nul elementen hebben (in verband met wat moet worden aangetoond is dit geen beperking).. Construeer de

Stelling 1.12 kan ook worden gebruikt om het aantal opspannende bomen van een niet-gerichte graaf te bepalen: maak er een gerichte graaf van door iedere tak een willekeurige richting

Probleem: Is G samenhangend (d.w.z. is er een kring zdd. is er een kring zdd. is er een ronde zdd. is er een keten zdd. is er een pad zdd. dat beide grafen evenveel knooppunten

Er kan worden aangetoond dat de resultaten van het verdisconteerde model ook voor dit model gelden, met verdisconteringsfactor α = 1, indien S 0 minstens ´e´en element bevat en er

Als tijdens de duale simplex methode de verschilvariabele van de extra rij in de basis komt, dan kan deze rij uit het tableau worden verwijderd: het tableau is immers duaal

⇒ Laat A totaal unimodulair zijn en in iedere kolom precies twee niet-nul elementen hebben (in verband met wat moet worden aangetoond is dit geen beperking).. Construeer de