• No results found

GEAVANCEERDE ONDERWERPEN IN DE BESLISKUNDE L.C.M. KALLENBERG UNIVERSITEIT LEIDEN

N/A
N/A
Protected

Academic year: 2021

Share "GEAVANCEERDE ONDERWERPEN IN DE BESLISKUNDE L.C.M. KALLENBERG UNIVERSITEIT LEIDEN"

Copied!
643
0
0

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

Hele tekst

(1)

GEAVANCEERDE ONDERWERPEN IN DE BESLISKUNDE

L.C.M. KALLENBERG

UNIVERSITEIT LEIDEN

(2)
(3)

IKR

Discrete Markovketens Simulatie

Vernieuwingstheorie Markovprocessen

Markov beslissingsketens

Combinatoriek en enumeratie AN1

Complexiteitstheorie LA1

Lineaire optimalisering

Dynamische programmering

Betrouwbaarheidstheorie

Voorraadtheorie

Scheduling

Grafentheorie Speltheorie: non-

cooperatieve spelen Speltheorie:

cooperatieve spelen

Projectplanning

Speciale lineaire modellen

Netwerkoptimalisering

Knapzakproblemen

Geheeltallige lineaire programmering

Grafentheorie II

Matroïden

Koppelingen Bomen, sorteren

en het Chinese postbodeprobleem Netwerkoptimalisering II

Speciale technieken Lineaire

optimalisering II Niet-lineaire

optimalisering AN2

Inwendige punt

methoden Beslissingstheorie

Legenda: Optimalisering (semester 2/4)

Besliskunde A (semester 3/5)

Besliskunde B (semester 4/6)

Besliskunde 4 (semester 5+)

(4)

Voorwoord

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

In de hoofdstukken komen een aantal onderwerpen uit de besliskunde aan bod. In het diagram kan je voor elk hoofdstuk zien wat de benodigde voorkennis is. 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 3 EC; Hoofdstuk 5 3 EC; Hoofdstuk 9 1.5 EC;

Hoofdstuk 2 2 EC; Hoofdstuk 6 0.5 EC; Hoofdstuk 10 2 EC;

Hoofdstuk 3 0.5 EC; Hoofdstuk 7 1.5 EC; Hoofdstuk 11 1.5 EC;

Hoofdstuk 4 2.5 EC; Hoofdstuk 8 1.5 EC; Hoofdstuk 12 2 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: 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 3: 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.

Hoofdstuk 4: 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 5: 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

i

(5)

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.

Hoofdstuk 6: 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 7: 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 8: Betrouwbaarheidstheorie

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

Hoofdstuk 9: Lineaire Optimalisering (deel 2)

Deel 1 van Lineaire Optimalisering is reeds in Optimalisering besproken. In dit hoofdstuk komen andere resultaten aan de orde: implementatie aspecten, gevoeligheidsanalyse, de duale simplex methode en de primale-duale simplex methode.

Hoofdstuk 10: 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 11: Inwendige puntmethoden

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,

(6)

de affiene schaling methode, de potentiaal reductie methode en diverse pad-volgende methoden (primaal, primaal-duaal en predictor-corrector).

Hoofdstuk 12: Niet-lineaire Optimalisering

Begonnen wordt met voorbeelden, algemene optimaliteitsvoorwaarden en eigenschappen zoals convexiteit. Daarna worden de onbeperkte en de beperkte optimalisering behandeld. Bij de onbeperkte optimalisering wordt ingegaan op ééndimensionale en meerdimensionale optimalisa- tie. De behandeling van de beperkte optimalisering betreft zowel theorie als methoden. De theoretische zaken zijn Lagrange multipliers, Karush-Kuhn-Tucker voorwaarden en dualiteit. De methoden die worden behandeld zijn de volgende: het algoritme van Wolfe voor kwadratische optimalisering, de methode van toelaatbare richtingen, de gereduceerde gradiënt methode, de gegeneraliseerde gereduceerde gradiënt methode en de barrière methode.

(7)
(8)

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. . . 10

1.1.4 De snedenmatrix . . . 15

1.1.5 De padenmatrix . . . 17

1.1.6 De structuurmatrix. . . 18

1.1.7 Opgaven . . . 22

1.2 Vlakke en duale grafen . . . 23

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

1.2.2 Scheidingspunten . . . 25

1.2.3 Separabiliteit en blokken. . . 29

1.2.4 Stelling van Kuratowski . . . 35

1.2.5 Stelling van Wagner . . . 40

1.2.6 Algoritme om te bepalen of een graaf vlak is . . . 41

1.2.7 Rechte grafen en driehoeksgrafen . . . 45

1.2.8 Minimum en maximum aantal snijpunten . . . 49

1.2.9 Duale grafen . . . 55

1.2.10 Opgaven . . . 59

1.3 Kleurproblemen . . . 60

1.3.1 Het kleuren van de takken . . . 60

1.3.2 Het kleuren van de knooppunten . . . 70

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

1.3.4 Het kleurenpolynoom . . . 83

1.3.5 Opgaven . . . 86

2 KOPPELINGEN 89 2.1 Algemene theorie . . . 89

2.1.1 Eigenschappen in algemene grafen . . . 89

2.1.2 Eigenschappen in bipartiete grafen . . . 97

2.1.3 Equivalente combinatorische resultaten. . . 100 v

(9)

2.1.4 Opgaven . . . 107

2.2 Algoritmen voor bipartiete grafen . . . 108

2.2.1 Koppeling met maximale cardinaliteit in bipartiete graaf. . . 108

2.2.2 Koppeling met maximaal gewicht in bipartiete graaf . . . 116

2.2.3 Gilmore-Gomory en Gale-Shapley koppelingen . . . 121

2.2.4 Opgaven . . . 125

2.3 Algoritmen voor algemene grafen . . . 126

2.3.1 Koppeling met maximale cardinaliteit in een willekeurige graaf . . . 126

2.3.2 Koppeling met maximaal gewicht in een willekeurige graaf . . . 135

2.3.3 Opgaven . . . 140

3 BOMEN (deel 2), SORTEREN EN HET CHINESE POSTBODEPROBLEEM141 3.1 Bomen (deel 2) . . . 141

3.1.1 Boomwandelingen . . . 141

3.1.2 Binaire zoekbomen . . . 145

3.1.3 Steiner bomen . . . 148

3.1.4 Opgaven . . . 152

3.2 Sorteren . . . 152

3.2.1 Bubble sort . . . 152

3.2.2 Insertion sort . . . 153

3.2.3 Merge sort . . . 154

3.2.4 Quick sort. . . 156

3.2.5 Opgaven . . . 160

3.3 Het Chinese postbodeprobleem . . . 160

3.3.1 Ongerichte versie . . . 160

3.3.2 Gerichte versie . . . 162

3.3.3 Gemengde versie . . . 162

3.3.4 Opgaven . . . 167

4 NETWERK OPTIMALISERING (deel 2) 169 4.1 Netwerkstromen . . . 169

4.1.1 Disjuncte paden en de Stelling van Menger . . . 169

4.1.2 Maximale stromen en minimale sneden. . . 171

4.1.3 Circulatiestromen met minimale kosten . . . 179

4.1.4 Opgaven . . . 185

4.2 Netwerk simplex methode . . . 186

4.2.1 Inleiding . . . 186

4.2.2 Bases en opspannende bomen . . . 188

4.2.3 Algoritme voor problemen zonder capaciteiten . . . 190

4.2.4 Problemen met onder- en bovengrenzen . . . 197

4.2.5 Duale netwerk simplex methode . . . 201

(10)

4.2.6 De netwerk simplex methode voor het kortste pad probleem . . . 206

4.2.7 Maximale stroom probleem . . . 212

4.2.8 Opgaven . . . 215

5 MATROÏDEN 219 5.1 Inleiding en definities . . . 219

5.1.1 Opgaven . . . 227

5.2 Duale matroïde . . . 227

5.2.1 Opgaven . . . 230

5.3 Voorbeelden van matroïden . . . 230

5.3.1 Opgaven . . . 234

5.4 Grafen en matroïden . . . 234

5.4.1 Opgaven . . . 236

5.5 Het gretige algoritme . . . 237

5.5.1 Opgaven . . . 241

5.6 Onafhankelijkheidssystemen . . . 242

5.6.1 Opgaven . . . 246

5.7 Doorsnede van matroïden . . . 246

5.7.1 Inleiding . . . 246

5.7.2 Onafhankelijke verzameling met maximale cardinaliteit . . . 248

5.7.3 Onafhankelijke verzameling met maximaal gewicht . . . 253

5.7.4 Opgaven . . . 256

5.8 Grafoïden . . . 257

5.9 Representeerbaarheid van matroïden . . . 259

5.9.1 Opgaven . . . 265

5.10 Polymatroïden . . . 265

5.10.1 Opgaven . . . 269

6 BESLISSINGSTHEORIE 271 6.1 Inleiding . . . 271

6.2 Beslissen zonder kansen . . . 272

6.2.1 Opgaven . . . 274

6.3 Beslissen met kansen . . . 274

6.3.1 Opgaven . . . 277

6.4 Beslissingsbomen . . . 278

6.4.1 Opgaven . . . 280

7 VOORRAADTHEORIE 281 7.1 Inleiding . . . 281

7.2 Continue deterministische modellen met één product . . . 283

7.2.1 Opgaven . . . 288

7.3 Continue deterministische modellen met meer producten . . . 289

(11)

7.3.1 De afwegingskromme . . . 289

7.3.2 Een cyclisch productieproces . . . 291

7.3.3 Opgaven . . . 292

7.4 Periodieke deterministische modellen . . . 293

7.4.1 Geen tekorten toegestaan . . . 293

7.4.2 Wel tekorten toegestaan . . . 297

7.4.3 Silver-Meal heuristiek . . . 299

7.4.4 Opgaven . . . 301

7.5 Continue stochastische modellen . . . 302

7.5.1 Opgaven . . . 307

7.6 Periodieke stochastische modellen . . . 308

7.6.1 Eén periode en geen vaste bestelkosten (krantenjongenprobleem) . . . 308

7.6.2 Eén periode, vaste bestelkosten en een beginvoorraad . . . 311

7.6.3 Oneindig veel perioden en geen vaste bestelkosten . . . 312

7.6.4 Opgaven . . . 314

8 BETROUWBAARHEIDSTHEORIE 317 8.1 Structuurfuncties . . . 317

8.1.1 Opgaven . . . 322

8.2 Betrouwbaarheidsfuncties . . . 323

8.2.1 Opgaven . . . 329

8.3 Levensduur van het systeem . . . 330

8.3.1 Opgaven . . . 334

8.4 De verwachte levensduur . . . 335

8.4.1 Opgaven . . . 336

8.5 Systemen met reparatie . . . 337

8.5.1 Opgaven . . . 339

9 LINEAIRE OPTIMALISERING (deel 2) 341 9.1 Inleiding . . . 341

9.2 Implementatie aspecten . . . 342

9.2.1 Begrensde variabelen . . . 342

9.2.2 Herziene simplex methode en de productvorm van de inverse . . . 345

9.2.3 Opgaven . . . 351

9.3 Gevoeligheidsanalyse . . . 351

9.3.1 Veranderingen in één coëfficiënt van de doelfunctie . . . 352

9.3.2 Veranderingen in één coëfficiënt van het rechterlid . . . 352

9.3.3 Veranderingen in meer coëfficiënten van het rechterlid (of doelfunctie) . . . 353

9.3.4 Veranderingen in een kolom van een niet-basisvariabele . . . 354

9.3.5 Toevoegen van een nieuwe activiteit/variabele. . . 354

9.3.6 Parametrische programmering. . . 356

(12)

9.3.7 Opgaven . . . 359

9.4 De duale en de primale-duale simplex methode . . . 361

9.4.1 De duale simplex methode. . . 361

9.4.2 De primale-duale methode . . . 364

9.4.3 Opgaven . . . 369

10 SPECIALE TECHNIEKEN 371 10.1 Decompositie methoden . . . 371

10.1.1 Dantzig-Wolfe decompositie . . . 371

10.1.2 Benders decompositie . . . 383

10.1.3 Opgaven . . . 388

10.2 Lagrange relaxatie . . . 390

10.2.1 Inleiding en voorbeelden . . . 390

10.2.2 Beste Lagrange relaxatie . . . 394

10.2.3 Opgaven . . . 404

10.3 Kolomgeneratie voor geheeltallige problemen . . . 406

10.3.1 Inleiding . . . 406

10.3.2 Dantzig-Wolfe decompositie van een geheeltallig LP-probleem . . . 407

10.3.3 LP-relaxatie van het masterprobleem . . . 408

10.3.4 Branch-and-price algoritme voor (0, 1)-problemen . . . 413

10.3.5 Opgaven . . . 419

11 INWENDIGE PUNTMETHODEN 421 11.1 Inleiding . . . 421

11.2 De methode van Karmarkar . . . 423

11.2.1 Het idee van projectieve schaling . . . 423

11.2.2 Het algoritme . . . 425

11.3 De affiene schaling methode . . . 431

11.3.1 De primale affiene schaling methode . . . 431

11.3.2 De duale affiene schaling methode . . . 441

11.3.3 De primale-duale affiene schaling methode . . . 443

11.4 Potentiaal reductie methode . . . 452

11.5 Pad-volgende methoden . . . 460

11.5.1 Primale pad-volgende methode . . . 463

11.5.2 Primale-duale pad-volgende methode . . . 468

11.5.3 Predictor-corrector methode . . . 472

11.5.4 Vergelijking van de richtingen van diverse inwendige punt methoden . . . . 482

11.6 Opgaven . . . 483

12 NIET-LINEAIRE OPTIMALISERING 487 12.1 Inleiding . . . 487

12.1.1 Klassificatie van niet-lineaire optimaliseringsproblemen . . . 487

(13)

12.1.2 Voorbeelden. . . 488

12.1.3 Afgeleiden . . . 489

12.1.4 Optimaliteitsvoorwaarden . . . 491

12.1.5 Convexiteit . . . 493

12.1.6 Opgaven . . . 498

12.2 Onbeperkte optimalisering . . . 498

12.2.1 Inleiding . . . 498

12.2.2 Eéndimensionale optimalisatie . . . 499

12.2.3 Meerdimensionale optimalisatie . . . 504

12.2.4 Opgaven . . . 509

12.3 Beperkte optimalisering: theorie . . . 510

12.3.1 Inleiding . . . 510

12.3.2 Lagrange multipliers bij gelijkheidsbeperkingen . . . 512

12.3.3 Karush-Kuhn-Tucker voorwaarden bij gelijkheden en ongelijkheden . . . 521

12.3.4 Fritz John voorwaarden . . . 525

12.3.5 Convexe optimalisering en dualiteit . . . 529

12.3.6 Opgaven . . . 531

12.4 Beperkte optimalisering: methoden . . . 533

12.4.1 Kwadratische optimalisering . . . 533

12.4.2 Methode van toelaatbare richtingen . . . 539

12.4.3 Gereduceerde gradiënt methode . . . 547

12.4.4 Gegeneraliseerde gereduceerde gradiënt methode . . . 550

12.4.5 Barrière methode . . . 553

12.4.6 Opgaven . . . 555

A OPLOSSING VAN DE VRAGEN 557 A.1 Hoofdstuk 1 . . . 558

A.2 Hoofdstuk 2 . . . 566

A.3 Hoofdstuk 3 . . . 571

A.4 Hoofdstuk 4 . . . 574

A.5 Hoofdstuk 5 . . . 582

A.6 Hoofdstuk 6 . . . 586

A.7 Hoofdstuk 7 . . . 590

A.8 Hoofdstuk 8 . . . 594

A.9 Hoofdstuk 9 . . . 598

A.10 Hoofdstuk 10 . . . 603

A.11 Hoofdstuk 11 . . . 610

A.12 Hoofdstuk 12 . . . 615

B TABELLEN 621

(14)

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



TT TT TT TT TT



QQ QQ QQ

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

(15)

Laat ons wederom de graaf K4 beschouwen. 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ëren (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.

(16)

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 en −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:













α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.

(17)

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

determinant =∏p

j=1 αj + (−1)p−1p

j=1 βj.

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

p

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

j=1 αj = 2∏p

j=1 αj =±2.

De matrix A is dus niet totaal unimodulair, wat een tegenspraak geeft. Iedere kring heeft dus een even aantal speciale takken. Perk nu alle gewone takken in, d.w.z. voeg de uiteinden samen tot één knooppuntn(kies één 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 één uiteinde in I1 en één 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 voor deze I1 en I2 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 één 1 bevat, dan ontwikkelen we de determinant naar deze kolom: de determinant is dan± det(B) voor de (k− 1) × (k − 1) matrix B 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:

i∈I1 bij =∑

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.

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. Ook definiëren we voor een gerichte graaf G G als de bijbehorende ongerichte graaf. Als we het bij een gerichte graaf dan hebben over bijvoorbeeld kringen en componenten, die eigenlijk alleen voor ongerichte grafen zijn gedefinieerd, dan bedoelen we de kringen en componenten van de bijbehorende graaf G, dus die van de ongerichte variant van G.

(18)

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.

Bewijs

⇒ Stel een verz. kolomvectoren van A(G) is lineair onafhankelijk en 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 de bij een verz. kolomvectoren van A(G) horende takken bevatten geen kring en stel dat de som van de kolomvectoren de 0-vector oplevert. Dan vormen deze bijbehorende takken een deelgraaf zdd. ieder knooppunt incident is met een even aantal takken. Dit is een Euler- graaf 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 in G geen kring bevatten.

Bewijs

⇒ Stel een verz. kolomvectoren van A(G) is lineair onafhankelijk en 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



























(19)

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 de bij een verz. kolomvectoren van A(G) horende pijlen bevatten geen kring en stel dat er een lineaire combinatie van een aantal van deze kolomvectoren is die de 0-vector op- levert. 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 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 dat 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:

òfwel beide uiteinden behoren bij deze k rijen, òfwel geen der uiteinden behoort bij deze k rijen.

De knooppunten bij deze k rijen genereren dus een deelgraaf met één of meer componenten:

tegenspraak met de samenhang van G.

Door bij een gerichte graaf G de ongerichte variant G te bekijken, is schrijfwijze (1.1) uit te breiden naar gerichte grafen en kunnen we ook de volgende stelling bewijzen.

Stelling 1.8

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

(20)

Bewijs

Analoog aan het bewijs van Stelling 1.7 is het voldoende om het te bewijzen voor een samen- hangende graaf. Omdat iedere kolom één +1 en één -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: òfwel beide uiteinden behoren (met dezelfde factor) bij deze k rijen òfwel geen der uiteinden behoort bij deze k rijen. De knooppunten bij de k rijen genereren dus een deelgraaf met één of meer componenten: tegenspraak met de samenhang van G.

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: A1heeft 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.

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

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

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: A1heeft 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 AB, waarbij A uit A wordt verkregen door n kolommen van A te kiezen en dan voor B de bijbehorende rijen van B te kiezen.

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

(21)

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) =∑

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) =∑

det(A1AT1) =∑

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

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̸= j en (i, j) ∈ E;

0 als i̸= 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=∑

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

{BBT}ij =∑

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)}.

2Deze stelling is impliciet al aanwezig in een artikel van Kirchhoff uit 1847 (G. Kirchhoff, Über die Auflösungen der Gleichungen, auf die man bei der Untersuchung der Verteilung galvanischer Ströme gefürt wird, Ann. Phys.

Chem. 72 (1847) 497–508.

(22)

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,

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 één 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ëren we de Kirchhoff matrx K(G) door:

{K(G)}ij =







d(i) als i = j

−1 als i̸= j en (i, j) ∈ A 0 als i̸= 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ó 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.

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

(23)

⇐ Omdat de (1, 1)-cofactor van K(G) gelijk is aan 1 heeft iedere kolom van de bijbehorende (n− 1) × (n − 1) matrix minstens één 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̸= j een −1 als (i, j) ∈ A en anders een 0. De j-de kolom van K(G) kunnen we dus schrijven als de som van d(j) kolommen waarbij iedere kolom hoort bij één pijl die naar knooppunt j loopt en we kunnen dan dus de matrix K(G) splitsen in d(j) matrices. Door dit te doen voor j = 2, 3, . . . , n (in die volgorde) splitsen we de matrix K(G) in α =n

j=2d(j) matrices. Noem G1, ..., Gα de bijbehorende grafen, dan geldt dus: K(G) =α

i=1

K(Gi). Dan geldt ook det(K(G)) =

α i=1

det(K(Gi)) en er geldt, door de deelmatrix van K(G), K(G1), ..., K(Gα) zonder de eerste rij en eerste kolom te noteren met K11(G), K11(G1), ..., K11(Gα): det(K11(G)) =

α i=1

det(K11(Gi)).

Er geldt voor alle i dat Gi een graaf is met n− 1 takken (ga dit zelf na), en volgens Lemma1.1is Gi dan een in v1 gewortelde boom d.e.s.d. als de (1, 1)-cofactor van K(Gi) gelijk is aan 1. Merk verder op dat als Gi geen in v1 gewortelde boom is er een knooppunt j ̸= 1 is met d(j) = 0, waaruit volgt dat det K11(Gi) = 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 één kring. De aldus

(24)

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ëntatie 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.

Voorbeeld 1.1

Beschouw nevenstaande graaf en neem als opspan- nende 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



HHHH HH

HHHH HH



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 =k

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

Bewijs

Beschouw de vector c +k

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

Als ep∈ C : p ∈ J, zeg p behoort bij js :{ c +k

i=1{CT(G)}ji}

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

Als ep∈ C : p /∈ J/ :{

c +k

i=1{CT(G)}ji}

p = cp = 0.

Hieruit volgt {

c +k

i=1{CT(G)}ji}

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

i=1{CT(G)}ji zitten in T . T bevat geen kring,

(25)

zodat ook hiervoor c +k

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

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

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 =∑

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

Gevolg 1.2

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

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+ A12DT(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 één rij minder heeft dan A(G), is er minstens één kolom van A12 met precies één 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 één 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ënt worden bepaald.

(26)

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+{A−112}•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



 .

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 eenheids- vector. Voor de vierde eenheidsvector vervangen we de eerste kring door de som van de eerste

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