• No results found

Schatten van partitiefuncties

N/A
N/A
Protected

Academic year: 2021

Share "Schatten van partitiefuncties"

Copied!
51
0
0

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

Hele tekst

(1)

Schatten van partitiefuncties

Siebe Verheijen

15 januari 2021

Bachelorscriptie Wiskunde Begeleiding: dr. Guus Regts

Korteweg-de Vries Instituut voor Wiskunde

(2)

Samenvatting

In dit project bekijken we algoritmen om een partitiefunctie, gerelateerd aan het Ising-model, te berekenen. We bekijken fully polynomial random approximation schemes, dit zijn algoritmen die een getal retourneren die met zekere grote kans hoogstens een vooraf gekozen foutmarge afwijkt van de daadwerkelijke waarde van de partitiefunctie: bovendien moet zo’n algoritme een running-time hebben die polynomiaal is in de grootte van de graaf en de foutmarge. We construeren twee van zulke algoritmes: ´e´en met behulp van een Markovketen op de verzameling even deelgrafen van een graaf, de ander met behulp van een Markovketen die naast een even deelgraaf ook nog een extra verzameling zijden bijhoudt.

Titel: Schatten van partitiefuncties

Auteur: Siebe Verheijen, siebe.verheijen@student.uva.nl, 11901179 Begeleiding: dr. Guus Regts,

Tweede beoordelaar: dr. Viresh Patel, Einddatum: 15 januari 2021

Korteweg-de Vries Instituut voor Wiskunde Universiteit van Amsterdam

Science Park 904, 1098 XH Amsterdam http://www.kdvi.uva.nl

(3)

Inhoudsopgave

1. Inleiding 4 2. Even deelgrafen 6 Even deelgrafen . . . 6 Basiscykels . . . 8 3. De partitiefunctie 12 De partitiefunctie . . . 12 Relatie met modellen . . . 13

4. FPAUS en FPRAS 17

FPRAS . . . 17 Bewijs van stelling 4.6 . . . 20 Een Markovketen op even deelgrafen . . . 24

5. Path coupling I 27

Coupling . . . 27 Constructie van coupling . . . 29 Restrictie op de basiscykels . . . 32

6. Path coupling II 36

Bouwen van een nieuwe Markovketen . . . 36 Bouwen van een coupling . . . 38 Een nieuwe FPRAS . . . 41

7. Conclusie 46

Bibliografie 47

Populaire samenvatting 48 A. Afschatten met e-machten 50

(4)

1. Inleiding

Het beschrijven van de werkelijkheid is in de wetenschap vrijwel altijd een uitdaging. Vaak zijn daarom modellen nodig die deze werkelijkheid zo goed als mogelijk beschrijven. Op deze modellen kunnen dan zowel harde computationele kracht als de resultaten uit vakgebieden worden toegepast, bijvoorbeeld de wiskunde.

Stel dat we een grote bak hebben met allemaal kleine bolletjes; elk bolletje zal straks een kleur krijgen, rood of blauw. De bolletjes hebben invloed op elkaar: bolletjes die dichtbij elkaar zijn, zullen een beetje de neiging hebben om elkaars kleur over te nemen; de mate waarin ze elkaar be¨ınvloeden neemt toe naarmate de bolletjes dichter bij elkaar liggen. Hoe zal straks de bak eruit zien? Vooral rood, vooral blauw? Zijn rood en blauw vooral gemengd, of juist gescheiden?

Om hier beter naar te kijken, maken we een model van de bak; we nemen aan dat de bolletjes een perfect rooster vormen, bijvoorbeeld een deel van de punten van Z3. We

nemen verder aan dat bolletjes alleen invloed op elkaar hebben als ze echt naast elkaar liggen, alle andere correlaties verwaarlozen we. We tekenen een graaf, met knopen die in Z3 liggen en verbinden twee knopen met elkaar als ze afstand 1 tot elkaar hebben.

Dit geeft een model voor de werkelijkheid.

Van alle mogelijke configuraties weten we nu wel redelijk hoe groot de kansen ten opzichte van elkaar zijn; we weten of ze een factor 2 of 3 verschillen. Om te bepalen hoe groot de kansen precies zijn, moeten we de som van alle geschaalde kansen bepalen: dit heet de partitiefunctie, die afhangt van de graaf en van λ, die aangeeft in welke mate de kleur van bolletjes met elkaar gecorreleerd zijn.

Om met de partitiefunctie te kunnen rekenen, vertalen we het naar grafentheorie. We tonen aan dat de configuraties overeenkomen met even deelgrafen van de graaf G: dat zijn deelgrafen over alle knopen van G waarin elke knoop een even aantal buren heeft. We proberen meteen wat structuur te brengen in de even deelgrafen.

Het berekenen van deze partitiefunctie blijkt een behoorlijke klus te zijn: het zou fijn zijn als er een algoritme bestaat die deze partitiefunctie bepaalt in een tijd die hoogstens polynomiaal in de grootte van de graaf G toeneemt. Zo’n algoritme bestaat echter (nog) niet. Wel zijn er deelresultaten geboekt, zo is bijvoorbeeld een algoritme gevonden voor grafen die in het vlak kunnen worden getekend [6].

We hoeven echter niet per se de precieze waarde van de partitiefunctie te weten: een goede benadering is voldoende. Een algoritme met een tijdsduur die polynomiaal is in de grootte van de graaf G en een foutmarge ε bestaat echter ook nog niet.

We maken de eisen voor ons algoritme daarom nog wat ruimer: we hoeven niet per se met kans 1 een getal te krijgen die binnen de foutmarges van de werkelijke waarde valt, maar slechts met een kans van bijna 1. Dit wordt dan een niet-deterministisch algoritme:

(5)

een algoritme dat zo af en toe een dobbelsteen gooit en op basis van het aantal ogen bepaalt wat er daarna gebeurt. Als we eenmaal zo’n algoritme hebben gevonden voor een zekere kans, bijvoorbeeld 3/4, dan is het daarna niet moeilijk meer om voor elke kans tussen (1/2, 1) zo’n algoritme te maken [7, H6]. Dit noemen we een fully polynomial random approximation scheme, kortweg een FPRAS.

In dit project gaan we twee van zulke algoritmen bouwen voor bepaalde waarden van λ: als λ dichterbij 1 komt, dan zijn er steeds meer grafen waarop we onze algoritmen kunnen toepassen. De opbouw van beide algoritmen zijn ongeveer hetzelfde: we laten zien dat het voldoende is om een fully polynomial almost uniform sampler, kortweg FPAUS, te bouwen: dat is een sampler met als input de graaf G en als output een even deelgraaf van G, waarbij elke even deelgraaf H met een kans bijna evenredig aan λ|H| gesampled wordt; hierbij is |H| het aantal zijden in H. Hierbij betekent “ongeveer” nog precies defini¨eren.

We bouwen zo’n FPAUS met behulp van een Markovketen: we starten in een even deelgraaf van de graaf G en gaan rondlopen over de ruimte van even deelgrafen van G. We stoppen na een aantal stappen, zeg N , en kijken waar we zijn ge¨eindigd. Dit geeft een sampler van de even deelgrafen van G: we hebben een algoritme die elke even deelgraaf met zekere kans.

De Markovketen zal exponentieel veel staten bevatten. Om dit op te lossen, defini¨eren we de Markovketen alleen lokaal. We laten zien dat H(G) een vectorruimte over F2

vormt, vinden een basis van cykels en gebruiken deze voor de transities: in elke stap doen we of niets, of tellen we een basiscykel op bij de huidige staat.

Hoe meer stappen we zetten, hoe meer de kansen van de sampler evenredig worden aan λ|H|. Met behulp van de techniek path coupling proberen we aan te tonen dat het aantal stappen dat nodig is, slechts polynomiaal is in de grootte van de graaf, om zo een FPRAS te bouwen.

(6)

2. Even deelgrafen

In dit project zijn we bezig met het rekenen en schatten met even deelgrafen. Voordat we aan het rekenen slaan, beginnen we met een hoofdstuk waarin we de even deelgrafen uitsluitend vanaf de grafentheoretische kant bekijken.

Even deelgrafen

We beginnen met de definitie van een even deelgraaf.

Definitie 2.1. Zij G een graaf. We noemen een deelgraaf H een even deelgraaf van G als als alle knopen in H een even graad hebben. We noteren H(G) voor de collectie van even deelgrafen van G.

Een voorbeeld:

Figuur 2.1.: Links: een graaf G. Rechts: een even deelgraaf H van G.

Formeel gezien is een even deelgraaf dus eigenlijk geen deelgraaf maar een deelverza-meling van de zijden. Omdat we alleen opspannende even deelgrafen bekijken, komt dit gelukkig op hetzelfde neer.

Opmerking 2.2. Omdat we G toestaan om lussen of meerdere zijden tussen twee punten te hebben, zullen we soms iets anders naar even deelgrafen kijken: een deelgraaf H van G is even precies als aan elke knoop v een even aantal uiteinden van zijden in H vastzitten. Deze verzameling van uiteinden noteren we als Uv(H). We krijgen nu voor

H ∈ P(E(G)) dat

H ∈ H(G) ⇐⇒ |Uv(H)| is even voor alle v ∈ V (G). (2.1)

Opmerking 2.3. We kunnen in speciale gevallen enige structuur brengen in G.

Het eerste wat we opmerken is dat als G een lus e heeft, dat dan een deelgraaf H zonder e even is precies als H ∪ {e} even is: H(G) ∼= H(G − e) × {∅, {e}.

Als G uit twee componenten bestaat, zeg G1 en G2, dan is een deelgraaf H van G

(7)

kunnen H(G) dan opvatten als H(G1)×H(G2). Daarom zullen we alleen samenhangende

grafen beschouwen.

We kunnen zelfs eisen dat G 2-samenhangend is: laat v0 ∈ V (G) een snijpunt zijn en

schrijf B1, . . . , Bb voor de blokken van G. Neem voor het gemak aan dat v0 het enige

snijpunt is en bovendien geen lussen in G heeft. Zij H een even deelgraaf van G. De som P

v∈Bi−v0|Uv(H)| is even omdat elke term even is. Daardoor komen er een even

aantal zijden uit H vanuit Bi in v0. Dit geldt voor elk blok, waardoor H(G) opgevat

kan worden als Q H(Bi).

Er blijkt een simpele formule te zijn voor het aantal even deelgrafen van G. Lemma 2.4. Zij G een samenhangende graaf met m zijden en n punten. Dan geldt

|H(G)| = 2m−n+1. (2.2) Bewijs. Zij B een opspannende boom van G. Merk op dat de machtsverzameling Q van E(G)\E(B) uit 2m−n+1 elementen bestaat; het volstaat dus om een bijectie te vinden tussen Q en H(G). Dit doen we door voor elke deelverzameling X ⊆ E(G)\E(B) aan te tonen dat er precies een even deelgraaf H ∈ H(G) is zodat H ∩ (E(G)\E(B)) = X; als deze afbeelding bestaat is de afbeelding H 7→ H ∩ (E(G)\E(B)) duidelijk de inverse.

Dit bewijzen we door met inductie iets lichtjes sterkers te bewijzen: als B een boom (niet noodzakelijk opspannend) is die een deelgraaf is van G en X ⊆ E(G)\E(B) zodanig dat elk punt v in V (G)\V (B) een even graad heeft in X als deelgraaf opgevat, dan is er precies ´e´en H ⊆ H(G) zodanig dat X ⊆ H en H\X ⊆ E(B).

We doen inductie naar |V (B)|.

Inductiebasis: stel |V (B)| = 1, zeg V (B) = {v0}. Omdat elke zijde twee uiteinden heeft,

isP

v∈V (G)|Uv(X)| even. Per aanname zijn alle termen met v 6∈ V (B) even, dus ook de

laatste term |Uv0(X)| is even, dus X is een even deelgraaf. Omdat |E(B)| = |V (B)|−1 =

0 is H = X de enig mogelijke even deelgraaf zodat H ⊇ X en H\X ∈ E(B).

Inductiehypothese: stel voor alle bomen B met |V (B)| = k en voor alle X ⊆ E(G)\E(B) bestaat er een unieke H ∈ H(G) zodat H ⊇ X en H\X ⊆ E(B).

Inductiestap: stel |V (B)| = k + 1. Omdat k + 1 ≥ 2 heeft B nu een blaadje b met zijde e. Hierdoor geldt Ub(Y ) = Ub(X) of Ub(Y ) = Ub(X) t {e}. We willen dat |Ub(Y )| even

wordt. Als |Ub(X)| even is, dan moet dus e niet worden toegevoegd. Kies nu X0 = X.

Als |Ub(X)| oneven is, dan moet e juist wel worden toegevoegd, kies X0 = X t {e}.

In beide gevallen bekijken we B0 = B − b. Nu is B0 een boom in G met |V (B)| = k en X0 ⊆ E(G)\E(B0) dus per inductiehypothese vinden we een unieke H ∈ H(G) met H ⊇ X0en H\X0⊆ E(B0). Er geldt ook dat H ⊇ X en H\X ⊆ E(B) en per constructie is deze H uniek, waarmee het inductiebewijs is voltooid.

(8)

Analoog aan de formule van Euler is deze formule ook uitbreidbaar voor niet samen-hangende grafen: we krijgen dan

H(G) = 2m−n+k(G) (2.3) met k(G) het aantal componenten van G.

De verzameling even deelgrafen bevat veel meer structuur dan op het eerste gezicht blijkt:

Propositie 2.5. De verzameling H(G) vormt een (m−n+1)-dimensionale vectorruimte over F2 met het symmetrisch verschil als optelling.

Bewijs. Laten we beginnen met aantonen dat het een vectorruimte is. Ten eerste geldt H(G) ⊆ P(E(G)) en een machtsverzameling is altijd een vectorruimte over F2 met het

symmetrisch verschil als optelling. We hoeven dus alleen aan te tonen dat H(G) een lineaire deelruimte is. We zien direct dat voor H ∈ H(G) geldt 1 · H = H ∈ H(G) en 0 · H = 0 en dat is de lege deelgraaf en die is even. Het optellen van twee even deelgrafen H1en H2is wat subtieler: we zien dat Uv(H1⊕H2) = Uv(H1)⊕Uv(H2). Omdat |Uv(H1)|

en |Uv(H2)| even zijn, heeft hun symmetrisch verschil ook even grootte. Dit geldt voor

elke knoop v en dus is H1⊕ H2 even.

We vinden tenslotte dat 2dim H(G) = |F2|dim H(G) = |H(G)| = 2m−n+1 waaruit de

gewenste dimensie volgt.

Basiscykels

Nu we H(G) de structuur van een vectorruimte kunnen geven, kunnen we er eenvoudiger mee werken. We willen een basis hebben voor H(G).

Voor vlakke grafen is er een natuurlijke basis:

Propositie 2.6. Zij G een samenhangende vlakke graaf. Dan vormen de cykels om de binnenfacetten een basis voor de vectorruimte H(G) over F2.

Bewijs. Wegens de formule van Euler zijn er m − n + 2 facetten; min het buitenfacet blijven er m − n + 1 over, de dimensie van H(G), dus we hoeven alleen aan te tonen dat de cykels C1, . . . , Cf om de binnenfacetten F1, . . . , Ff lineair onafhankelijk zijn: we

stellen daarom dat S :=P

iαiCi= 0H(G)= ∅ met αi ∈ F2.

Ten eerste merken we op dat G een facet Fk heeft dat aan het buitenfacet grenst; de

zijden tussen Fk en het buitenfacet mogen niet in S = ∅ voorkomen maar komen in

geen andere cykel buiten Ck voor, dus αk= 0.

Ten tweede merken we op dat als de facetten Fi en Fj buren zijn, dat dan αi = αj: de

zijden in Ci∩ Cj mogen namelijk niet in de somPiαiCi = ∅ voorkomen en ze komen

niet in een andere cykel voor.

Ten derde merken we op dat de duale graaf G0 samenhangend is. Hieruit concluderen we dat alle αi nul moeten zijn en dus dat de cykels om de binnenfacetten vrij zijn.

(9)

Ook voor niet-vlakke grafen kan er eenvoudig een basis gevonden worden die bestaat uit slechts cykels. Een voorbeeld is door, net als in Lemma 2.4 nemen we een opspan-nende boom B van een graaf G. Voor alle m − n + 1 zijden vw = ei ∈ E(G)\E(B)

maken we een cykel Ci die bestaat uit ei plus de route van v naar w in B. Dit levert

een verzameling cykels C op van m − n + 1 cykels. Ze zijn lineair onafhankelijk omdat de zijde ei in precies ´e´en cykel voorkomt.

Opmerking 2.7. We zijn vooral ge¨ınteresseerd in een basis die bestaat uit deelgrafen waarvan de maximale grootte minimaal is. Het minimum voor dit maximum kan behaalt worden met alleen maar cykels. Immers, stel dat er een niet-cykel H voorkomt in de basis B. Met de stelling van Veblen is deze te schrijven als som van disjuncte cykels Ci. Omdat H = PiCi niet in het opspansel zit van B\{H}, kunnen niet alle Ci in

dit opspansel zitten. Laat C een cykel zijn die niet in het opspansel zit. Dan heeft (B\{H}) t {C} nu dim H(G) onafhankelijke vectoren en vormt dus een basis, waarvan de grootten van de vectoren niet groter zijn dan van de oorspronkelijke basis.

Er is meer bekend over cykelbases waarvan de som van alle grootten minimaal is, dan over cykelbases waarvan de maximale grootte minimaal is; gelukkig blijkt het ook voldoende om slechts hier naar te kijken [1]. We werken met zijden met gewichten 1, wat in elk geval gehele getallen zijn, dus er bestaat een algoritme in O(m2n) om zo’n

cykelbasis te vinden [2].

We gaan later regelmatig de even deelgrafen van nieuwe grafen bekijken, verkregen door het contraheren van zijden. Als e geen lus is, noteren we G/e als de graaf verkregen door e te contraheren in G. We noteren p voor de natuurlijke bijectie van E(G)\{e} naar E(G/e). Hiermee kunnen we p ook beschouwen als een afbeelding van P(E(G)\{e}) naar P(E(G/e)) en dit is zelfs een lineaire afbeelding als we beide machtsverzamelingen de natuurlijke structuur van een vectorruimte over F2 geven. We kunnen nu zelfs p

uitbreiden tot een natuurlijke lineaire afbeelding van P(E(G)) naar P(E(G/e)) door p({e}) = ∅ te nemen.

Propositie 2.8. Zij G een graaf en e een zijde van G dat geen lus is. Dan vormt de natuurlijke lineaire afbeelding p : P(E(G)) → P(E(G/e)) een bijectie van H(G) naar H(G/e).

Bewijs. We tonen eerst aan dat p(H(G)) ⊆ H(G/e), waarna we met een dimensie-argument het bewijs afmaken.

Laat H ∈ H(G). Nu we toch bezig zijn, gebruiken we p ook voor de natuurlijke afbeelding V (G) → V (G/e). Schrijf e = {v, w} met v, w ∈ V (G) en noteer vw = p(v) = p(w). Voor alle x ∈ V (G/e)\{vw} vinden we meteen dat |Ux(p(H))| = |Up−1(x)(H)|

even is. Voor x = vw krijgen we |Uvw(p(H))| = |Uv(H)| + |Uw(H)| − 2 en dat is ook

even. Uit Opmerking 2.2 concluderen we dat p(H) ∈ H(G/e) en dus dat p een lineaire afbeelding is van H(G) naar H(G/e).

Nu heeft G/e ´e´en knoop en ´e´en zijde minder dan G, dus ze hebben dezelfde dimensie. Omdat e geen lus is, is {e} geen even deelgraaf in G. Hieruit volgt dat

(10)

dus p : H(G) → H(G/e) is injectief, dus bijectief. Een eenvoudige observatie is dat

|p(H)| = (

|H| als e 6∈ H,

|H| − 1 als e ∈ H,. (2.4) De contractie p vormt dus een isomorfisme van vectorruimten tussen H(G) en H(G/e). De beelden van de basiscykels van H(G) vormen dus weer een basis, we noteren deze als p(B). Echter, deze beelden zijn niet per se cykels, bijvoorbeeld:

C

e p(C)

Figuur 2.2.: Links: graaf G met zijde e en cykel C. Rechts: graaf G/e met beeld van C onder contractie.

Gelukkig behoudt de contractie wel andere eigenschappen van H(G). Definitie 2.9. Zij G een graaf en B een basis van H(G). We noteren

• S(G, B) voor de maximale grootte in B: S := max

H∈B|H|,

• R(G, B) voor het maximale gebruik van een zijde door B: R := max

e∈E(G)#{H ∈ B : e ∈ H};

• G(G, B) voor de graaf met B als verzameling knopen en zijden tussen H1, H2 ∈ B

precies als H1∩ H26= ∅;

• D(G, B) als de maximale graad van G(G, B).

De contractie p blijkt ervoor te zorgen dat S, R en D niet groter worden:

Propositie 2.10. Zij G een graaf en B een basis van H(G). Zij e een zijde van G dat geen lus is. Dan geldt

S (G/e, p(B)) ≤ S(G, B); R (G/e, p(B)) ≤ R(G, B); D (G/e, p(B)) ≤ D(G, B).

(11)

Bewijs. We gaan S, R en D alledrie af: • S: Dit volgt direct uit (2.4).

• R: Voor elke zijde e0 ∈ E(G/e) en even deelgraaf H ∈ B geldt dat e0 ∈ p(H) ⇐⇒

p−1(e) ∈ H, dus elke zijde e0in G/e wordt even vaak gebruikt door p(B) als p−1(e) door B. Nu is p−1een injectie van E(G/e) naar E(G), waaruit het gevraagde volgt. • D: Analoog aan het vorige deel vinden we dat p(H1) en p(H2) verbonden zijn

in G(G, p(B)) precies als H1 en H2 een zijde e0 ∈ E(G)\{e} gemeen hebben, wat

impliceert dat H1 en H2 verbonden zijn in G(G, B). De graaf G(G/e, p(B) kan dus

worden opgevat als deelgraaf van G(G, B). Hieruit volgt gewenste de ongelijkheid tussen de maximale graden.

Opmerking 2.11. Wegens 2.3 kunnen we aannemen dat G 2-samenhangend is. Daaruit volgt dat G(G) samenhangend is. Als |C| ≥ 3 geldt daarom dat D ≥ 2. Om dezelfde reden mogen we aannemen dat R ≥ 2. Als S = 1 dan bestaat G uit alleen maar lussen en geldt H(G) = P(E(G)), daarom kunnen we ook aannemen dat S ≥ 2.

Opmerking 2.12. Er geldt tenslotte nog dat D ≤ (R − 1)S. Immers, een cykel C heeft hoogstens S zijden en elke zijde die C gebruikt, wordt gebruikt door nog hoogstens R − 1 andere cykels, waardoor C hoogstens met (R − 1)S cykels een zijde deelt.

(12)

3. De partitiefunctie

Grafen worden vaak gebruikt voor het modelleren van fysische structuren; eigenschappen van deze grafen kunnen fysieke betekenis hebben. We bekijken in dit hoofdstuk enkele functies op grafen.

De partitiefunctie

De functie waar we ons voornamelijk mee bezig zullen houden is de zogeheten partitie-functie:

Definitie 3.1. Zij G een graaf en λ ∈ R>0. De partitiefunctie van G in λ defini¨eren

we als

Z(λ, G) = X

H∈H(G)

λ|H|. (3.1)

Als we λ of G fixeren, schrijven we regelmatig simpelweg Z(G) of Z(λ) in plaats van Z(λ, G).

Voorbeeld 3.2. Zij G de graaf zoals in 3.2.

Figuur 3.1.: Links: graaf G. Rechts: de vier even deelgrafen van G.

Dan

Z(λ, G) = λ0+ λ4+ λ4+ λ6 = 1 + 2λ4+ λ6.

Voorbeeld 3.3. Voor λ = 1 staat in 3.1 simpelweg het aantal elementen in H(G), wat gelijk is aan 2m−n+1.

Voorbeeld 3.4. Zij G een graaf met ´e´en punt en m zijden. Dan geldt H(G) = P(E(G)). We vinden, sommerend over de grootten |H| = k, dat

Z(G) = X

H∈H(G)

λ|H|= X

H⊆E(G)

(13)

Meer in het algemeen: zei v0 een snijpunt zoals als in 2.3. Dan geldt

Z(λ, G) =YZ(λ, Bi).

De partitiefunctie is, gegeven G, een polynoom in λ. Het voldoet aan de volgende eigenschap:

Lemma 3.5. Zij e een zijde van G dat geen lus is. Dan geldt

Z(G) = λZ(G/e) + (1 − λ)Z(G\e). (3.2) Bewijs. In Propositie 2.8 hebben we een bijectie p : H(G) → H(G/e) gevonden. Verder hebben we een natuurlijke inbedding H(G\e) ,→ H(G); hiermee hebben we genoeg ingredi¨enten om (3.2) per even deelgraaf van G te vergelijken. Laat H ∈ H(G). Links draagt H uiteraard λ|H| bij; rechts krijgen we

1. Als e ∈ H dan draagt H in Z(G/e) nu λ|p(H)|= λ|H|−1bij. H komt niet in H(G\e) voor. Dankzij de extra factor λ geeft H aan de rechterkant λ|H|;

2. Als e 6∈ H dan draagt H in Z(G/e) nu λ|p(H)|= λ|H| bij en in Z(G\e) ook. Met de voorfactoren λ en (1 − λ) krijgen we drie termen waarvan de twee met λ wegvallen en er precies λ|H| overblijft.

Er geldt in (3.2) termsgewijze gelijkheid, waaruit totale gelijkheid volgt.

De voornaamste reden dat we ook toestaan dat G een multigraaf kan zijn, is omdat we Lemma 3.5 herhaaldelijk zullen toepassen.

Opmerking 3.6. Zij e een zijde van G dat geen lus is. Uit (2.4) volgt dat elke term λ|p(H)| in Z(G/e) gelijk is aan de term λ|H| uit Z(G) of gelijk is aan λ−1· λ|H|. Elke term in

Z(G/e) is dus even groot of λ−1 keer zo groot als z’n evenknie in Z(G), dus in totaal zal Z(G/e) tussen Z(G) en λ−1Z(G) liggen. We concluderen dat Z(G/e)/Z(G) tussen 1 en λ−1 ligt.

Het doel van dit project is om methoden te onderzoeken die Z(λ, G) snel genoeg schatten wanneer de graaf G erg groot wordt. We gaan hier uitgebreider op in in het volgende hoofdstuk.

Relatie met modellen

Een nut van de partitiefunctie is dat het gerelateerd is aan de partitiefuncties van het Random Cluster-model [3] en het Ising-model [5]. We tonen deze relaties aan met behulp van een paar tussenstappen, waarbij elke relatie een eenvoudige transformatie is van de input en/of output van de partitiefunctie.

Om onderscheid te maken, noteren we in deze paragraaf bovenstaande functie Z als Zε

(14)

Definitie 3.7. Zij G een graaf en x ∈ (0, 1). We defini¨eren de grote partitiefunctie als ZAF(x, G) = X A∈H(G)   X F ⊇A x 1 − x |F |  , (3.3)

waarbij de binnenste som loopt over alle verzameling zijden F ⊆ E waar A in bevat zit. We gaan deze grote partitiefunctie nader bekijken; noteer voor het gemak E = E(G). Voor de binnenste som vinden we

X F ⊇A x 1 − x |F | = (1 − x)−|E|x|A| X F ⊇A x|F |−|A|(1 − x)|E|−|F |.

Dit werken we met het binomium van Newton: als we f = |F | − |A| schrijven, is de sommatie gelijk aan

|E|−|A|

X

f =0

xf(1 − x)|E|−f = 1|E|−|A| = 1 waaruit we concluderen dat

X F ⊇A x 1 − x |F | = (1 − x)−|E|· x|A|. (3.4) In het bijzonder geldt nu voor x ∈ (0, 1)

(1 − x)|E|ZAF(x, G) = Zε(x, G) (3.5)

waardoor de kleine en grote partitiefunctie praktisch even makkelijk berekenbaar zijn. Merk trouwens op dat (1 − x)|E| < 1 (voor een niet-triviale graaf) waardoor de grote partitiefunctie daadwerkelijk groter is dan de kleine.

We kunnen deze partitiefuncties relateren aan (een speciaal geval van) het Random Cluster-model [3]:

Definitie 3.8. Zij G een graaf en x > 0. We defini¨eren de partitiefunctie voor het Random Cluster-model als

ZRC(x, G) =

X

F ⊆E

2k(F )· x|F | (3.6) waarbij k(F ) gelijk is aan het aantal componenten van de graaf ge¨ınduceerd door de zijden van F in de graaf G.

(15)

Deze relateren we aan de grote partitiefunctie. Door sommatievolgorde om te wisselen en (2.3) te gebruiken vinden we voor x ∈ (0, 1)

ZAF(x, G) = X A∈H(G) X F ⊇A x 1 − x |F | = X F ⊆E X A∈H(G) A⊆F x 1 − x |F | = X F ⊆E X A∈H(F ) x 1 − x |F | = X F ⊆E 2|F |−|V |+k(F ) x 1 − x |F | = 2−|V |· X F ⊆E 2k(F ) 2x 1 − x |F | en we concluderen 2|V |ZAF(x, G) = ZRC  2x 1 − x, G  . (3.7)

Tenslotte kunnen we de partitiefunctie voor het Random Cluster-model relateren aan de partitiefunctie voor (een speciaal geval van) het Ising-model [5]:

Definitie 3.9. Zij G een graaf en x > 1. De partitiefunctie voor het Ising-model is gedefinieerd als ZI(x, G) = X σ : V →{1,−1} Y uv∈E(G) xσ(u)σ(v). (3.8)

Deze is gerelateerd aan ZRC. We maken eerst een klein tussenstapje: we schrijven

V = V (G), [2] = {0, 1},

E(σ) := {uv ∈ E(G) : σ(u) = σ(v)} en voor x > 1

ZJ(x, G) =

X

σ : V →{1,−1}

x|E(σ)|. We zien nu eenvoudig dat

ZJ(x, G) = x|E|· ZI( √ x, G). (3.9) We schrijven nu x|E(σ)|= (1 + x − 1)|E(σ)|= X F ⊆E(σ) (x − 1)|F |

(16)

en vinden nu ZJ(x, G) = X σ : V →{1,−1} X F ⊆E(σ) (x − 1)|F | = X F ⊆E(G)   X σ : F ⊆E(σ) (x − 1)|F |  .

Nu hangt de term (b − 1)|F | niet af van σ, dus we hoeven alleen maar te weten hoeveel σ voldoen aan F ⊆ E(σ). Met de definitie van E(σ) vinden we dat F ⊆ E(σ) precies als voor elk tweetal buren u en v in F geldt dat σ(u) = σ(v). Dit is precies het geval als σ op elke component van F constant is, dus er zijn 2k(F ) afbeeldingen σ die voldoen. We concluderen dat

ZJ(x, G) =

X

F ⊆E(G)

2k(F )(x − 1)|F | = ZRC(x − 1, G). (3.10)

Schrijf nu ∼ voor als het berekenen van twee functies in dezelfde complexiteitsklasse zitten. We vinden nu achtereenvolgens

Zε (3.5) ∼ ZAF (3.7) ∼ ZRC (3.10) ∼ ZJ (3.9) ∼ ZI (3.11)

(17)

4. FPAUS en FPRAS

Ons doel is om de partitiefunctie Z(λ, G) te kunnen bepalen voor willekeurige grafen. In dit hoofdstuk formaliseren we wat voor algoritme we precies willen en bekijken we daarna hoe zo’n algoritme gebouwd zou kunnen worden.

FPRAS

Zoals gezegd, willen we weten wat Z(λ, G) is. We willen een algoritme waarvan de running-time van boven kan worden begrensd door een polynoom in de grootte van de graaf. Uit (3.11) blijkt dat zo’n algoritme vinden even snel is als een algoritme voor de partitiefunctie van het Ising-model. Het vinden van zo’n algoritme is een #P -volledig [5], dus dat lijkt te hoog gegrepen. Deelresultaten zijn wel behaald: voor vlakke grafen kan een link worden gelegd tussen even deelgrafen en matchings, waarna met behulp van de matchings de partitiefunctie exact kan worden berekend [6].

We kunnen ook iets minder vragen: we vragen geen exacte waarde van Z(λ, G), maar slechts een benadering. We willen een algoritme dat hoogstens een factor eεafwijkt van de daadwerkelijke uitkomst voor kleine ε > 0. Hoe kleiner ε, hoe langer de berekening zal duren; we eisen dat de running-time van het algoritme polynomiaal is in ε−1. Zo’n algoritme is echter ook niet bekend.

We maken de drempel nog wat lager: we hoeven geen benadering van Z(λ, G), maar slechts een niet-deterministisch algoritme wat met grote kans een goede benadering wordt. Hierbij mag een ondergrens van deze kans niet afhankelijk zijn van de input. Dit geeft ons de volgende definitie:

Definitie 4.1. Een random approximation scheme is een niet-deterministisch algo-ritme A met als input

• een graaf G met n knopen en m zijden • een waarde λ > 0

• een foutmarge ε > 0

en met als output een getal N zodanig

P N ∈ [e−εZ(λ, G), eεZ(λ, G)] ≥ 3

4. (4.1) We noemen A een fully polynomial random approximation scheme, kortweg FPRAS, als bovendien de running-time van A van boven wordt begrensd door een polynoom in n, m en ε−1.

(18)

Grof gezegd: een FPRAS is een algoritme dat in polynomiale tijd met grote kans een goede schatting voor Z(λ, G) geeft.

De kans 34 had vervangen kunnen worden door elk ander getal in (12, 1); als we met kans 1 − δ een goede benadering willen, moeten we onze FPRAS O(log δ−1) vaak toepassen en de mediaan van de resultaten nemen [7, H6].

Om een FPRAS te bouwen gaan we eerst wat anders doen: we gaan even deelgrafen uit H(G) samplen. We gaan meerdere samplers van H(G) bekijken, dus we brengen eerst wat structuur:

Definitie 4.2. Zij π1 en π2 twee kansverdelingen met dezelfde eindige sample space Ω.

We defini¨eren de totale variatie tussen π1 en π2 als

dTV(π1, π2) = max

A⊆Ω|π1(A) − π2(A)|. (4.2)

De totale variatie geeft een metriek op de samplers van H(G):

Propositie 4.3. De totale variatie dTVis een metriek op de ruimte van kansverdelingen

op Ω.

Bewijs. Eerst zoeken we een andere uitdrukking voor dTV. Laat π1, π2twee

kansverdelig-nen op Ω zijn en schrijf B = {ω ∈ Ω : π1(ω) ≥ π2(ω)}. De extrema voor π1(A) − π2(A)

worden nu aangenomen op A = B (maximum) en A = Bc (minimum). De absolute waarden hiervan zijn gelijk want

π1(B) − π2(B) = 1 − π1(Bc) − (1 − π2(Bc)) = − (π1(Bc) − π2(Bc)) .

We gebruiken dat π1(ω) − π2(ω) ≥ 0 ⇐⇒ ω ∈ B en krijgen

π1(B) − π2(B) = 1 2(π1(B) − π2(B)) + 1 2(π2(B c) − π 1(Bc)) = 1 2 X ω∈B |π1(ω) − π2(ω)| + 1 2 X ω∈Bc |π1(ω) − π2(ω)| = 1 2 X ω∈Ω |π1(ω) − π2(ω)|.

Samen met dTV(π1, π2) = π1(B) − π2(B) geeft dit

dTV(π1, π2) = 1 2 X ω∈Ω |π1(ω) − π2(ω)|. (4.3)

Orden nu de elementen van Ω als ω1, . . . , ωk. De ruimte van kansverdelingen op Ω

kunnen we in Rk leggen: we leggen π op de co¨ordinaten (π(ω1), . . . , π(ωk). We zien nu

dat in (4.3) de rechterkant simpelweg de taxicab-metriek is, op een factor 12 na. We concluderen dat dTV op een constante na de taxicab-metriek is teruggetrokken op een

(19)

We defini¨eren nu een concrete sampler op H(G).

Definitie 4.4. Zij G een graaf en λ > 0. Een uniform sampler S is een sampler van H(G) die elke H ∈ H(G) met kans λ|H|/Z(G) kiest. De bijbehorende verdeling noteren

we als π.

Concreet: π is de kansverdeling op H(G) zodat π(H) evenredig is met x|H|.

Met behulp van een uniform sampler kunnen we een FPRAS bouwen, zo blijkt straks. Het kost echter veel werk om een uniform sampler te bouwen: er zijn exponentieel veel even deelgrafen in G met allemaal verschillende grootten. Weliswaar kunnen we een basis vinden voor H(G), maar door het nemen van symmetrische verschillen hebben we weinig controle over de grootten van de sommen. We gaan daarom opzoek naar iets wat geen uniform sampler is, maar wel in de buurt komt:

Definitie 4.5. Een almost uniform sampler S is een sampler van H(G) met als input • een graaf G met n knopen en m zijden

• een waarde λ > 0 • een afstand δ > 0 zodanig dat

kS − πkTV≤ δ. (4.4) We noemen S een fully polynomial almost uniform sampler, kortweg FPAUS, als bo-vendien de running-time van S van boven wordt begrensd door een polynoom in n, m, max(λ, λ−1) en log δ−1.

Grof gezegd: een FPAUS is een sampler die willekeurig goed lijkt op de sampler π en een polynomiale running-time heeft.

De reden dat we ge¨ınteresseerd zijn in een FPAUS , is nu heel erg simpel:

Stelling 4.6. Als er een FPAUS bestaat voor H(G), dan bestaat er een FPRAS voor Z(λ, G).

Het bewijs heeft dezelfde structuur als [4]: in plaats van ´e´en grote schatter maken we meerdere kleinere schatters, waarvan het telescoperend product hopelijk een goede schatting geeft. In tegenstelling tot [4] halen we nu geen zijden weg, maar contraheren we zijden:

Claim 4.7. Zij (e1, e2, . . . , en−1) een afnummering van de zijden van een opspannende

boom van G. Definieer nu voor i = n, n − 1, . . . , 1 recursief Gn= G en Gi−1= Gi/ei−1.

Merk op dat Gi nu precies i knopen heeft. Nu geldt

Z(G) = (1 + λ)m−n+1· n Y i=2 Z(Gi) Z(Gi−1) (4.5)

(20)

Bewijs. Dit is een telescoperend product. In de teller houden we alleen Z(Gn) = Z(G)

over. In de noemer houden we Z(G1) over. Nu is G1 een graaf op ´e´en punt, dus we

passen Voorbeeld 3.4 toe: het aantal zijden in G0 is het aantal zijden m in G min het

aantal weggedeelde zijden n − 1, wat precies wegvalt tegen de factor (1 + λ)m−n+1. Ons doel is nu om schatters te vinden voor Z(Gi)/Z(Gi−1). Het blijkt handiger te

zijn om te rekenen met de inverse:

τi:= Z(Gi−1) Z(Gi) = Z(Gi/ei) Z(Gi) . (4.6)

Met behulp van (3.2) vinden we

1 = λτi+ (1 − λ) Z(Gi\ei) Z(Gi) . We schrijven ρi := Z(GZ(Gi\ei)i) en krijgen τi= λ−1+ (1 − λ−1)ρi. (4.7)

Zij πieen perfect uniforme verdeling op H(Gi). Zij nu Xide indicatorfunctie die aangeeft

of een deelgraaf Si van Gi gesampled volgens πi niet in H(Gi\ei) zit, oftewel of ei 6∈ S.

We vinden dat P(Xi = 1) = P(ei6∈ Si) = X H∈H(Gi\ei) P(H) = X H∈H(Gi\ei) λ|H| Z(Gi) = Z(Gi\ei) Z(Gi) = ρi. (4.8)

Nu is Xi een Bernoulli-verdeling, waardoor E(Xi) = P(Xi = 1) = ρi. Deze verwachting

kunnen we schatten door onze sampler herhaaldelijk toe te passen, zeg s maal, en dan het gemiddelde te nemen van de Xi-tjes. Als we dit voor alle ρi doen, vinden we ook

schattingen voor alle τi-tjes en daarmee voor Z(λ, G). Waar we wel aan moeten denken

is dat we geen uniform sampler hebben, maar slechts een almost uniform sampler; we zullen de afstand δ klein genoeg moeten maken om dit probleem op te lossen. Het enige wat we hierna nog doen dit hoofdstuk, is berekeningen uitvoeren en aantonen dat δ−1 en s slechts polynomiaal afhangen van de input.

Bewijs van stelling 4.6

Laat S een FPAUS zijn voor H. Laat een graaf G, λ > 0 en ε > 0 gegeven zijn waarbij we z.v.v.a. aannemen dat ε ≤ 1. Definieer ei, Gi, ρi, Xi, Si en τi zoals hiervoor.

Zij π0i de verdeling van de almost uniform sampler S op Gi voor i = n, . . . , 2. Laat ze

allemaal een afstand van hoogstens δ tot πi hebben met πi de verdeling van een perfecte

uniform sampler van H(Gi); we kiezen δ−1 = 3ε−1n max(λ, λ−1). Voor elke i, samplen

we s = d10ε−2n max(λ, λ−1)e onafhankelijke kopi¨en Si(1), . . . , Si(s). Merk op dat δ−1 polynomiaal is in de input en z’n logaritme dus ook en dat ook s polynomiaal is in de input.

(21)

Laat {Zi(`)} de bijbehorende indicatorfuncties zijn die aangeven of ei niet in Si(`) zit

voor 1 ≤ ` ≤ s; de verdelingen voor Zi(1), . . . , Zi(s) zijn allemaal identiek, noteer die verdeling simpelweg als Zi. Ook Zi is een Bernoulli-verdeling, noteer de verwachting als

µi. Per constructie is µi nu een benadering voor ρi:

i− ρi| = |E(Zi) − E(Xi)| = |P(e 6∈ Si(`)) − P(e 6∈ Si)| ≤ dTV(πi0, πi) ≤ δ.

Laat Yi(`) = g(Zi(`)), waarbij g de affiene transformatie x 7→ λ−1+ (1 − λ−1)x is. Voor vaste i zijn ook de Yi(`)-tjes gelijk verdeeld, noteer hun verdeling als Yi. Noteer tenslotte

hun gemiddele als Yi. Omdat g affien is, vinden we

νi:= E(Yi) = E(Yi) = E(g(Zi)) = g(E(Zi)) = g(µi) = λ−1+ (1 − λ−1)µi.

Net zoals dat µi een benadering is voor ρi, is νi een benadering voor τi:

i− τi| = |g(µi) − g(ρi)| = |1 − λ−1| · |µi− ρi| ≤ |1 − λ−1|δ. (4.9)

Omdat de Yi onafhankelijk zijn, krijgen we

E( Y Yi) = Y E(Yi) = Y νi. (4.10)

Omdat we de νi-tjes gaan vermenigvuldigen, willen we (4.9) liever omzetten in iets met

logaritmes. We zullen hierna regelmatig Propositie A.2 uit de appendix gebruiken. Claim 4.8. Er geldt

| log νi− log τi| < 1 2εn

−1. (4.11)

Bewijs. Uit Opmerking 3.6 volgt dat τi= Z(Gi/ei)/Z(Gi) tussen 1 en λ−1 ligt. Schrijf

δ0 = |νi− τi|. We doen een gevalsonderscheiding op λ:

1. λ ≥ 1: dan λ−1≤ τi≤ 1. Ten eerste vinden we

λδ ≤ λ(1 − λ−1)δ = 1

3λ(1 − λ

−1−1εn−1 1

3εn

−1

Met behulp van A.2 krijgen we

νi ≤ τi+ δ0 ≤ τi+ (τiλ)δ0≤ τieλδ 0 ≤ τieεn−13 < τie εn−1 2 en νi≥ τi− δ0≥ τi− (τiλ)δ0 = τi(1 − λδ0) ≥ τi(1 − εn−1 3 ) ≥ e −εn−1 2 . 2. λ ≤ 1: dan 1 ≤ τi ≤ λ−1. We vinden nu δ0 = (λ−1− 1)δ = 1 3(λ −1− 1)λεn−1< 1 3εn −1.

Nu vinden we op analoge wijze als bij het eerste geval dat τie− en−1 2 < τi(1 − δ0) ≤ τi− δ0 ≤ νi ≤ τi+ δ0 ≤ τieδ 0 < τie εn−1 2 .

Beide gevallen resulteren in νi ∈ τi(e−

εn−1 2 , e

εn−1

(22)

Onze grote schatter voor Z(λ, G) zal N := (1 + λ)m−n+1Q Yi −1

worden. Kijkend naar (4.1) willen we de kans dat N buiten [e−ε, eε]Z(λ, G) valt zo klein mogelijk praten. Noem deze gebeurtenis /. Dit doen we met behulp van een aantal implicaties.

Claim 4.9. Er geldt / =⇒ Y Yi− Y νi > ε 3 Y νi. (4.12)

Bewijs. Met (4.5) en (4.7) vinden we / ⇐⇒ (1 + λ)m−n+1YYi −1 6∈ [e−ε, eε](1 + λ)m−n+1Yτi−1 oftewel / ⇐⇒ log Y Yi− log Y τi > ε.

Echter, we willenQ Yi niet metQ τi maar metQ νi vergelijken ((4.10)). Gelukkig geeft

(4.9) ons log Y νi− log Y τi < (n − 1) 1 2εn −1 < ε 2. Verder geeft de driehoeksongelijkheid dat

log Y Yi− log Y νi ≥ log Y Yi− log Y τi − log Y νi− log Y τi . en deze laatste drie bevindingen geven ons tezamen

/ =⇒ log Y Yi− log Y τi > ε =⇒ log Y Yi− log Y τi − log Y νi− log Y τi > ε − ε 2 =⇒ log Y Yi− log Y νi > ε 2 =⇒YYi 6∈ (e− ε 2, e ε 2) Y νi.

Met A.2 krijgen we (1 − ε3, 1 +ε3) ⊂ (e−ε2, e ε

2) waaruit het gevraagde volgt.

Nu we Claim 4.12 hebben bewezen, willen we de kans dat Q Yi veel afwijkt van z’n

verwachting νi zo klein mogelijk hebben. De ongelijkheid van Chebyshev gaat ons hierbij

helpen.

We hebben tot dusver nog nergens gebruikt dat we niet 1 maar s kopi¨en hebben van elke Zi, daar komt nu verandering in. We hebben deze kopi¨en nodig om de varianties

van stochasten klein te krijgen. Om te beginnen was Zi verdeeld volgens Bernoulli(µi),

dus het heeft variantie µi(1 − µi). Dit levert

Var(Yi) = s−1Var(Yi) = s−1|1 − λ−1|2Var(Zi) = s−1|1 − λ−1|2µi(1 − µi). (4.13)

(23)

Claim 4.10. Er geldt Var(Yi) E(Yi)2 ≤ 1 4max(λ, λ −1). (4.14)

Bewijs. We inverteren de boel en krijgen

E(Yi)2 Var(Yi) = λ −1(1 − µ i) + µi 2 |1 − λ−1|2µ i(1 − µi) =  λ−1 |1 − λ−1| r 1 − µi µi + 1 |1 − λ−1| r µi 1 − µi 2 .

We gebruiken (a+b)2≥ 4ab voor a, b ∈ R en vinden dat bovenstaande minstens 4λ−1|1−

λ−1|−2 is, waarvan de inverse weer 14λ|1 − λ−1|2 is. We hoeven dit nu alleen nog af te

schatten op 14max(λ, λ−1):

1. Voor λ ≥ 1 geldt 0 ≤ 1 − λ−1 ≤ 1 en dus λ|1 − λ−1|2≤ λ = max(λ, λ−1);

2. Voor λ ≤ 1 geldt λ · |1 − λ−1|2 < λ · |λ−1− 1|λ−1< λ−1= max(λ, λ−1).

Hiermee kunnen we een bovengrens voor de variantie vanQ Yi bepalen:

Claim 4.11. De variantie σ2 van Q Yi voldoet aan

σ2 ≤ε 6 Y νi 2 .

Bewijs. Schrijf Λ = max(λ, λ−1). Met de vorige claim krijgen we Var(Yi) = s−1Var(Yi) ≤ (4s)−1max(λ, λ−1)E(Yi)2 =

Λ 4sν

2 i.

Dat geeft met A.2

E  Yi 2 = Var(Yi) + E(Yi)2 ≤  1 + Λ 4s  νi2 ≤ e4sΛν2 i.

We kunnen nu de variantie van het product van boven begrenzen:

VarYYi = E Y Yi 2 − EYYi 2 =YE  Yi 2 −Yνi 2 ≤ e(n−1)Λ4s · Y νi2−Yνi2 en met A.2 halen we de e-macht weer weg:

e(n−1)Λ4s − 1 = e (n−1)Λ 40ε2nΛ − 1 < e ε2 37 − 1 ≤ ε 2 36. waaruit het gevraagde volgt.

(24)

We kunnen nu eindelijk de ongelijkheid van Chebyshev toepassen. Merk op dat 2σ ≤ 2ε6Q νi = ε3Q νi: P(/) ≤ P Y Yi− Y νi > ε 3 Y νi  ≤ P Y Yi− E( Y Yi) > 2σ  ≤ 1 4, waarmee het bewijs van Stelling 4.6 is voltooid.

Of een algoritme een FPAUS is, hangt af van λ. We kunnen ook de begrippen FPAUS en FPRAS defini¨eren op slechts een familie F van alle mogelijke grafen, waarbij het afhangt van λ hoe groot die familie is. De definities voor FPRAS en FPAUS blijven hetzelfde, behalve dat we ons dan beperken tot grafen die in F liggen. Hiermee kunnen we Stelling 4.6 veralgemeniseren:

Gevolg 4.12. Zij F (λ) een familie van grafen die voldoet aan

G ∈ F (λ) =⇒ G/e ∈ F (λ) ∀e ∈ E(G). (4.15) Als er een FPAUS bestaat voor F (λ), dan bestaat er ook een FPRAS voor F (λ). Bewijs. In het bewijs van Stelling 4.6 gebruiken we alleen een FPAUS op de grafen Gi= Gi+1/ei+1, die (per inductie) allen in F (λ) zitten als G daar ook in zit.

Een Markovketen op even deelgrafen

Het is een logische stap om nu te gaan zoeken naar een FPAUS. De strategie is om een discrete-tijd-Markovketen (Xt) te bouwen met als staten de even deelgrafen van een

graaf G; we starten ergens, we lopen een tijdje rond over de Markovketen en stoppen op een gegeven tijdstip. Dit proces is een sampler van H(G), dus dat is al een begin. Als we ervoor zorgen dat (Xt) ergodisch is en de verdeling π als stationaire verdeling heeft, dan

zal onze sampler gaan lijken op de stationaire verdeling π: een almost uniform sampler op H(G) dus. Als we dit eenmaal hebben gedaan, is het alleen nog maar de vraag of de sampler polynomiaal snel op de uniform sampler gaat lijken.

Er is echter ´e´en praktisch puntje: de Markovketen heeft exponenti¨eel veel staten, namelijk 2m−n+1. Hierdoor kunnen we niet de gehele Markovketen bouwen, dat kost teveel tijd. Om dit op te lossen, defini¨eren we de Markovketen slechts lokaal. We maken hierbij gebruik van de vectorruimtestructuur; we noteren f = dim H(G) = m − n + 1. Definitie 4.13. Zij G een graaf met cykelbasis C = (C1, . . . , Cf). en λ > 0. We bouwen

onze Markovketen (Xt) op H(G) impliciet. We kiezen X0= ∅. Daarna:

1. Kies een cykel C uit C uniform willekeurig. 2. Dan

• met kans λ|Xt|⊕C|/ λ|Xt|+ λ|Xt⊕C| kiezen we X

t+1= Xt⊕ C;

• met kans λ|Xt|/ λ|Xt|+ λ|Xt⊕C| kiezen we X

(25)

De kans om van een staat naar een andere staat te springen is nu positief precies als ze maar ´e´en basiscykel verschillen. We noteren dH voor de Hamming-distance op H(G).

Voor verschillende H1, H2 ∈ H(G) noteren we p(H1, H2) als de transitiekans van H1

naar H2. We vinden p(H1, H2) = ( 0 als dH(H1, H2) ≥ 2 1 fλ |H2|/ λ|H1|+ λ|H2| als d H(H1, H2) = 1 .

Deze Markovketen is inderdaad ergodisch en met (unieke) stationaire verdeling π: • Irreducibel: We zien dat zowel p(H1, H2) > 0 en p(H2, , H1) > 0 elk precies gelden

als dH(H1, H2) = 1. Alle transities met kans groter dan nul vormen dus de graaf

die eruit ziet als een f -dimensionale kubus, self-loops daargelaten; deze graaf is samenhangend, dus (Xt) is irreducibel.

• Aperiodiek: er geldt p(H, H) ≥ 1 f(1 − p(H, H ⊕ C1)) = 1 m λ|H| λ|H|+ λ|H⊕C1| > 0,

dus elke staat in (Xt) heeft self-loops, dus (Xt) is aperiodiek en dus ergodisch.

• Invariante verdeling: we tonen zelfs aan dat (Xt) en π in detailed balance zijn:

als dH(H1, H2) ≥ 2 dan geldt π(H1)p(H1, H2) = 0 = π(H2)p(H2, H1) en voor

dH(H1, H2) = 1 krijgen we π(H1)p(H1, H2) = λ|H1| Z(G)· 1 f λ|H2| λ|H1|+ λ|H2| = λ |H2| Z(G)· 1 f λ|H1| λ|H2|+ λ|H1| = π(H2)p(H2, H1)

Omdat (Xt) ergodisch is, heeft het een unieke invariante verdeling, dus de verdeling π.

Bovendien convergeert p(t)(∅, H) naar π(H) voor t → ∞, dus als we onze Markovketen lang genoeg laten lopen en dan waarnemen waar de Markovketen in H(G) is, dan begint het dus op de uniform sampler te lijken; op deze manier construeren we almost uniform sampler voor H(G).

Wat resteert is hopen dat de uniform sampler ook een FPAUS is: dat de mixing-time τ (δ) om een totale variatie van hoogstens δ ten opzichte van π te hebben, slechts polynomiaal is in δ, λ en de grootte van G. Uit [4, H4] blijkt dat als voor t = τ de totale variatie hoogstens δ is, dat dit dan voor alle t ≥ τ geldt. Het volstaat dus om een polynomiale bovengrens voor τ te hebben.

Er is geen resultaat bekend over een FPRAS die geconstrueerd is met een Markovketen met als state space H(G). De komende twee hoofdstukken beperken we ons daarom alleen tot resultaten voor λ vlakbij 1, waarbij “vlakbij” afhangt van de graaf.

(26)

Er is wel een FPRAS bekend voor de partitiefunctie [5]. Jerrum en Sinclair hebben dit gedaan door een Markovketen te bouwen op niet H(G), maar op heel P(E(G)).

(27)

5. Path coupling I

In [4, H4] wordt de techniek path coupling uitgelegd en toegepast. Met deze techniek kan mogelijk een bovengrens voor de mixing-time gevonden worden. Het idee van deze techniek is om niet ´e´en Markovketen over de state space te laten lopen, maar twee, om vervolgens de verwachte afstand tussen de Markovketens in de state space te gebruiken om een bovengrens voor de mixing-time te vinden.

Coupling

Het idee van path coupling werkt in principe op alle Markovketens met eindige state space; omdat we het echter alleen toepassen op de Markovketen gedefinieerd in Definitie 4.13, noemen we onze Markovketen hierna ook gewoon (Xt).

Definitie 5.1. Een coupling van de Markovketen (Xt) met state space Ω = H(G) is

een Markovketen (Ut, Vt) op Ω × Ω met transitiekansen die voldoen aan

P U1 = u0 | (U0, V0) = (u, v) = p(u, u0)

P( V1 = v0 | (U0, V0) = (u, v) = p(v, v0)

In andere woorden: de Markovketens (Ut) en (Vt) gedragen zich precies zoals (Xt).

Het meest eenvoudige voorbeeld hiervan is een Markovketen met transitiekansen ˆ

p((u, v), (u0, v0)) = p(u, u0) · p(v, v0) (5.1) in dit geval gedragen Uten Vtzich volledig onafhankelijk. Dit geeft echter volstrekt geen

nieuwe informatie, het verdubbelt hoogstens de hoeveelheid rekenwerk. Een coupling blijkt interessant te zijn als Xten Ytjuist niet onafhankelijk, maar zo afhankelijk mogelijk

van elkaar zijn. In [4, H4] vinden we het Coupling Lemma:

Lemma 5.2. Zij (Ut, Vt) een coupling van Xt met state space Ω. Zij t : (0, 1] → N een

functie zodat voor alle u, v ∈ Ω en δ > 0 geldt

P Ut(δ)6= Vt(δ)| U0= u, V0 = v ≤ δ.

Dan is t(δ) een bovengrens voor de mixing-time τ (δ).

Ons doel is nu om een coupling te vinden voor (Xt) zoals gedefinieerd in Definitie 4.13

en een functie t te vinden zodanig dat aan bovenstaand lemma wordt voldaan; als t dan polynomiaal is, hebben we een FPAUS gevonden.

We willen de kans dat Ut en Vt verschillend zijn, zo klein mogelijk maken voor grote

(28)

U0 6= V0en juist U1= V1 te kiezen als U0= V0. Dit voldoet aan de eisen in 5.1. Dit zorgt

ervoor dat (Xt) en (Yt) onafhankelijk rondlopen over Ω, totdat ze elkaar tegenkomen,

waarna ze samen veder lopen. Hierdoor wordt P(Xt= Yt) groter voor grote t.

Een tweede verbeterpunt van (5.1) is om Uten Vtafhankelijk van elkaar te kiezen als ze

verschillende aangrenzende staten zijn, wat precies het geval is als Ut⊕ Vteen basiscykel

Ck is. We zouden bijvoorbeeld willen dat als Ut toevallig naar Vt springt, dat dan Vt

op z’n eigen plek blijft, en vice versa. Deze afhankelijkheid noemen we “koppelen”, hier komt ook de term coupling vandaan. Ook als Utniet naar Vt springt, is het wel handig

als Vt niet de andere kant op springt, maar Ut volgt: als Ut+1 = Ut⊕ C, dan hopelijk

ook Vt+1 = Vt⊕ C: zo blijven ze in elk geval dicht bij elkaar en is de kans dat ze elkaar

bij de volgende stap tegenkomen weer wat groter.

Hiermee hebben we al idee¨en voor hoe de transitiekansen van een coupling eruit moet zien voor paren staten die hetzelfde of aangrenzend zijn. Een ander lemma uit Jerrum [4, H4] zegt min of meer dat dit ook voldoende is:

Lemma 5.3. Laat (Ut, Vt) een coupling-in-wording zijn van (Xt): de transitiekansen

zijn alleen nog maar vastgelegd voor aangrenzende staten Ut en Vt, maar nog niet op

heel Ω × Ω. Als er een ρ > 0 bestaat zodat voor elk paar aangrenzende staten (U0, V0)

E (dH(U1, V1) | U0, V0) ≤ ρ · dH(U0, V0). (5.2)

Dan kunnen we de overige transitiekansen op heel Ω × Ω dusdanig kiezen zodat voor alle paren staten (U0, V0) de afschatting in (5.2) geldt.

Om het nut van dit lemma in te zien, schatten we eerst P(Ut6= Vt) af op de verwachte

afstand: P(Ut6= Vt) = f X d=1 P (dH(Ut, Vt) = d) ≤ f X d=1 d · P (dH(Ut, Vt) = d) = f X d=0 d · P (dH(Ut, Vt) = d) = E (dH(Ut, Vt)) .

Het nut van het lemma is nu duidelijk: als we zo’n ρ kunnen vinden, dan geldt P(Ut6= Vt) ≤ E (dH(Ut, Vt)) ≤ ρt· dH(U0, V0) ≤ ρt· f

en dat gaat naar nul toe als ρ < 1. Als we t(δ) zo kiezen dat ρt· f ≤ δ, dan zijn we blij. Een herschrijving geeft dat

t(δ) = d log ρ−1−1

(29)

voldoet. Hier zien we ook deels waarom we ervoor kozen om een FPAUS polynomiaal in log δ−1 te nemen in plaats van in δ−1 zelf. Duidelijk is f = m − n + 1 en dus ook log f polynomiaal in m en n. Wat ons resteert is om de transitiekansen op aangrenzende staten te defini¨eren en te kijken of we daarna ρ kleiner dan 1 kunnen praten; met een beetje geluk is dan 1/ log ρ−1 ook polynomiaal en daarmee de mixing-time τ ≤ t(δ) ook.

Constructie van coupling

In de vorige sectie hadden we al idee¨en opgeschreven waaraan de transitiekansen op aangrenzende staten moesten voldoen. Nu maken we de idee¨en hard.

Laat Ut, Vt twee aangrenzende staten zijn met Ut⊕ Vt = Ck. Om Ut en Vt dezelfde

verdeling als Xtte laten hebben, is het voldoende om voor elke gekregen C uit C, gegeven

die C, dezelfde verdeling te hebben. We doen hierna daarom alsof C al vaststaat. We schrijven qU = λ|Ut⊕C|/  λ|Ut|+ λ|Ut⊕C|  (5.4)

en analoog defini¨eren we qV. Nu is qU de kans dat, gegeven dat C uit C is gekozen, (Ut)

van Utnaar Ut⊕ C springt. Nu is 1 − qU de kans dat gegeven i nu (Ut) niet naar Ut⊕ C

springt en dus op Ut blijft.

Omdat gegeven C er maar twee mogelijkheden zijn voor Ut+1 (en Vt+1)) en de som

van de kansen 1 is, is het voldoende om maar ´e´en van de twee kansen af te gaan. Als C = Ck, dan willen we dat Ut+1= Vt+1 met zo groot mogelijke kans: dat precies

´e´en van de twee verandert. Dit kan gelukkig met kans 1: we kiezen Ut+1 zoals Xt+1 en

daarna kiezen we Vt+1 = Xt+1. Per constructie is nu Ut+1 als Xt+1 verdeeld en verder

krijgen we

P (Vt+1 = Vt| C = Ck, Ut, Vt) = P((Ut+1= Ut⊕ C | C = Ck, Ut, Vt)

= P (Xt+1= Xt⊕ C | C = Ck, Xt)

waardoor ook Vt+1 als Xt+1 verdeeld is.

Als C 6= Ck, dan wordt het ingewikkelder. We willen nu juist dat (Ut) en (Vt) of

allebei wel, of allebei niet veranderen. Allebei veranderen impliceert zowel dat Ut als Vt

verandert en deze gebeurtenissen hebben kansen qU en qV. Hieruit volgt dat

ˆ

p ((Ut, Vt), (Ut⊕ C, Vt⊕ C)) ≤ min (qU, qV) .

Andersom geldt

ˆ

p ((Ut, Vt), (Ut, Vt)) ≤ min (1 − qU, 1 − qV) .

Deze twee kansen sommeren helaas meestal niet tot 1, dit gebeurt alleen als toevallig qU = qV. We kiezen voor deze twee kansen in elk geval deze minima, om zo de kans dat

Ut en Vt afstand 1 houden te maximaliseren. Met de kans die nog overblijft verandert

(30)

is. Als “>” dan zal (Ut) veranderen en (Vt) blijven staan, bij “<” is dit andersom. In

dit geval neemt de afstand tussen (Xt) en (Yt) toe van 1 naar 2 en de kans hierop is

p/ := 1 − ˆp((Ut, Vt), (Ut⊕ C, Vt⊕ C)) − ˆp ((Ut, Vt), (Ut, Vt))

= 1 − min (1 − qU, 1 − qV) − min (qU, qV)

= max (qU, qV) − min (qU, qV)

= |qU − qV|.

Onze transitiekansen defini¨eren we dus impliciet als volgt:

Figuur 5.1.: Coupling voor Xt

1. Kies een C uit C uniform willekeurig; 2. Dan

a) Als C = Ck dan kiezen we voor (Ut+1, Vt+1) het paar

• (Ut, Ut) met kans λ|Ut|/(λ|Ut|+ λ|Vt|);

• (Vt, Vt) met kans λ|Vt|/(λ|Ut|+ λ|Vt|);

b) Als C 6= Ck dan kiezen we voor (Ut+1, Vt+1) het paar

• (Ut⊕ C, Vt⊕ C) met kans min (qU, qV);

• (Ut, Vt) met kans min (1 − qU, 1 − qV)

• (Ut⊕ C, Vt) met kans max (0, qU− qV);

• (Ut, Vt⊕ C) met kans max (0, qV − qU).

We vinden nu snel dat (Ut) en (Vt) zich elk gedragen als (Xt);

P (Ut+1= Ut⊕ C | i, Ut, Vt) = min(qU, qV) + max(0, qU− qV) = qU = p(Ut, Ut⊕ C)

en per symmetrie geldt hetzelfde voor (Vt). We concluderen dat we hiermee

daadwerke-lijk een coupling hebben gevonden.

Geval b) in 5 zou een stuk fijner worden als qU = qV: dan hoeven we ten eerste geen

minima en maxima te nemen, maar vooral weten we dan zeker dat de afstand tussen (Ut) en (Vt) dan 1 blijft. Dit een beetje uitdiepen is dus zeker de moeite waard. We

schrijven qU = λ|Ut⊕C| λ|Ut|+ λ|Ut⊕C| =  λ|Ut|−|Ut⊕C|+ 1−1 (5.5)

en iets analoogs geldt voor qV. We krijgen hiermee

(31)

We merken op dat Vt= Ut⊕ Ck en dat we bovenstaande gelijkheid kunnen uitdrukken

in C, Ck en Ut. Om het onszelf wat makkelijker te maken, tekenen we eerst een

Venn-diagram:

Figuur 5.2.: Venn-diagram op Ut, Ck en C

We defini¨eren de ai∈ Z≥0-tjes aan de hand van het Venn-diagram en vinden

|Ut| − |Ut⊕ C| = (a4+ a5+ a6+ a7) − (a4+ a6+ a1+ a3) = a5+ a7− a1− a3;

|Vt| − |Vt⊕ C| = (a4+ a5+ a2+ a3) − (a1+ a2+ a4+ a7) = a5+ a3− a1− a7

en dus dat

p/ = 0 ⇐⇒ a3 = a7 ⇐⇒ |(Ck∩ C) ∩ Ut| = |(Ck∩ C)\Ut|.

Omdat Ut van alles kan zijn, is dit in het algemeen geen bruikbare equivalentie. Een

apart geval is wel nuttig, namelijk

Ck∩ C = ∅ =⇒ p/ = 0. (5.6)

We zijn dus blij als het aantal cykels C dat geen lege doorsnede heeft met Ck laag is.

Het is dus fijn als D, zoals in Definitie 2.9, klein is.

Nu kunnen we ρ vinden. Laat U0 en V0 twee aangrenzende staten zijn. Dan geldt

dH(U0, V0) = 1. Omdat we ρ minimaal willen hebben, stellen we ρ gelijk aan het

maxi-mum van E (dH(U1, V1) | U0, V0). Per constructie geldt dat dH(U1, V1) ≥ 2, waardoor

1 − ρ = P(dH(U1, V1) = 0) − P (dH(U1, V1) = 2) . (5.7)

We bekijken liever 1 − ρ in plaats van ρ zelf, omdat we nu 1 − ρ > 0 willen praten en dat makkelijker is dan ρ < 1. We bepalen nu in elk geval de kansen in 5.7:

• Om afstand 0 te halen moet i = k gelden (kans 1

f) en daarna zal met kans 1 dan

U1 = V1 gelden;

• Om afstand 2 te bereiken moet C ∩ Ck 6= ∅ gelden (kans Df) en daarna zal met

(32)

Schrijf nu P/= max p/; dit maximum loopt over Ut, Vt en C. We vinden meteen dat

1 − ρ = 1

f(1 − DP/) en we willen dus dat

D · P/< 1.

Restrictie op de basiscykels

Om nog enige controle te hebben over P/, gaan we nu onze eerste aanname maken: we nemen aan dat we de basiscykels {C1, . . . , Cf} zo kunnen kiezen dat de doorsnede van

twee verschillende basiscykels hoogstens ´e´en zijde heeft:

|Ci∩ Cj| ∈ {0, 1} voor alle i 6= j (5.8) Deze aanname is niet onredelijk. Voor vlakke grafen waarin elk punt graad minstens 3 heeft, kunnen we de cykels om de facetten als basiscykels nemen en hebben twee cykels hoogstens ´e´en zijde gemeen.

We kunnen (5.8) uitdrukken in termen van het Venn-diagram: a3 + a7 ∈ {0, 1}.

Hiermee kunnen we een bovengrens voor P/ vinden.

Claim 5.4. Als de basiscykels van G paarsgewijs hoogstens ´e´en zijde gemeen hebben, dan geldt P/≤ 1 − λ 1 + λ .

Bewijs. Als P/= 0 dan is de bewering triviaal. Als P/> 0, dan a3 6= a7, dus {a3, a7} =

{0, 1}. In het bijzonder geldt a7− a3 = ±1. We krijgen

P/= |qU− qV| = 1 λ|Ut|−|Ut⊕C|+ 1− 1 λ|Vt|−|Vt⊕C|+ 1 = 1

λ(a5−a1)+(a7−a3)+ 1

1

λ(a5−a1)−(a7−a3)+ 1

.

Wat overblijft is een algebra¨ısche manipulatie. Schrijf voor het gemak w = a5− a1. We

weten dat a7− a3 = ±1; dankzij de absoluutstrepen maakt het niet uit in welke breuk

de +1 en in welke de −1 staat. We schrijven verder door:

P/= 1 λw+1+ 1− 1 λw−1+ 1 = λw−1− λw+1 1 + λw−1+ λw+1+ λ2w = λ−1− λ λ−w+ λ + λ−1+ λw . Met (λw) + (λw)−1≥ 2 vinden we P/≤ λ−1− λ λ + λ−1+ 2 = 1 − λ2 λ2+ 2λ + 1 = (1 − λ)(1 + λ) (1 + λ)2 = 1 − λ 1 + λ zoals gewenst.

(33)

We willen dus nu D · 1−λ 1+λ

< 1 krijgen. Voor D = 1 is dit altijd waar; vanwege 2.11 en 3.4 nemen we verder aan dat D ≥ 2. Wat herschrijven en een gevalsonderscheiding geeft • λ > 1: dan D · −1−λ 1+λ < 1 ⇐⇒ λ < D+1 D−1; • λ < 1: dan D ·1−λ 1+λ < 1 ⇐⇒ λ > D−1 D+1 dus λ ∈ (D − 1 D + 1, D + 1 D − 1). (5.9)

We kijken dus alleen nog maar naar λ ∈ (D−1D+1,D+1D−1). Merk op dat als λ op de rand ligt, dan geldt ρ = 1 en gaat bovenstaand mis. Helaas blijkt dat we ons interval nog ietsjes kleiner moeten maken om 1/ log ρ−1 polynomiaal te houden.

Propositie 5.5. Laat η > 0. Gegeven dat λ ∈ [D−1D+1 + η,D+1D−1 − η], geldt 1/ log ρ−1 ≤ 4mη−1.

Bewijs. Wegens A.1 is het voldoende om naar 1 − ρ te kijken. We onderscheiden weer twee gevallen: • λ > 1. Schrijf v = D+1 D−1− λ. We vinden λ = (D + 1)/(D − 1) − v = 1 + 2 D+1 − v en daarmee λ − 1 λ + 1 = 1 − 2 λ + 1 = 1 − 2 2 + 2/(D − 1) − v = 1 − 1 D/(D − 1) − v/2. Met (5.7) en Claim 5.4 krijgen we

1 − ρ ≥ 1 f  1 − D ·λ − 1 λ + 1  = D − 1 f  1 1 − (D − 1)/(2D) · v − 1  .

Met A.2 werken we de rechter factor uit tot 1 1 − (D − 1)/(2D) · v− 1 ≥ e D−1 2D v− 1 ≥ D − 1 2D v en daarmee vinden we 1 − ρ ≥ 1 f (D − 1)2 2D v. (5.10) • λ < 1. Schrijf nu juist v = λ − D−1 D+1. We vinden λ = v + D−1 D+1 = v + 1 − 2 D+1 en daarmee 1 − λ 1 + λ = 2 λ + 1− 1 = 2 2 − 2/(D + 1) + v − 1 = 1 D/(D + 1) + v/2− 1.

(34)

Met (5.7) en Claim 5.4 krijgen we 1 − ρ ≥ 1 f  1 − D · 1 − λ 1 + λ  = 1 f(D + 1)  1 − 1 1 + (D + 1)/(2D) · v  . Merk op dat v ≤ 1 −D − 1 D + 1 = 2 D + 1 ≤ 1 en dus (D + 1)/2 · v ≤ 1. We vinden met A.2

1 +D + 1 2D v ≥ e D+1 2(D+1)v en daarmee 1 − 1 1 + (D + 1)/(2D) · v ≥ D + 1 2(D + 2)v met als conclusie

1 − ρ ≥ 1 f

(D + 1)2

2(D + 2)v. (5.11)

In beide gevallen kunnen we v ≥ η en f ≤ m afschatten en verder is 14 een boven-grens voor de breuk met D. We vinden dat 1 − ρ ≥ 4m1 η en met A.1 concluderen we 1/ log(ρ−1) ≤ 4mη−1.

In Opmerking 2.11 zagen we al dat het geval D = 1 een niet interessant geval is. We vinden nu voor (5.9) dat λ > 0 al voldoende is om ρ < 1 te krijgen. Bij Propositie 5.5 voldoet elke η.

We besluiten met het uiteindelijke resultaat van dit hoofdstuk:

Stelling 5.6. Er bestaat een FPRAS, gebouwd met de Markovketen zoals in Definitie 4.13, voor Z(λ, G), waarbij

λ ∈ [D − 1 D + 1 + η,

D + 1

D − 1− η] (5.12) met D = D(G, C) voor een zekere cykelbasis C van H(G) waarvan de cykels elkaar onderling in hoogstens ´e´en zijde doorsnijden. Hierbij mag η−1 polynomiaal afhangen van de grootte van G.

Bewijs. Met (5.3) en Propositie 5.5 vinden we dat de mixing-time van de Markovketen (Xt) van boven kan worden afgeschat op

t(δ) ≤ 4mη−1· log δ−1+ log f + 1

Nu is t(δ) polynomiaal in de grootte van G en log δ−1. Zij nu F (λ) de familie van grafen G waarvoor er een basis B voor H(G) bestaat zodat D = D(G, B) voldoet aan (5.12) (en waarbij zo’n basis in polynomiale tijd te vinden is) en de basisvectoren uit B elkaar

(35)

in hoogstens ´e´en zijde doorsnijden. Per constructie is p(t(δ)) nu een FPAUS voor F (λ). Voor de graaf G/e kunnen we praktisch moeiteloos de basis p(C) vinden die voldoet aan D(G/e, p(C)) ≤ D(G, C) = D wegens Propositie 2.10. Omdat het interval in (5.12) groeit als D kleiner wordt, is aan (5.12) voldaan. Verder zagen we al in Propositie 2.10 dat er bij het projecteren van basisvectoren de doorsnijding niet toeneemt en concluderen dat F (λ) aan (4.15) voldoet. Met 4.12 volgt dat er een FPRAS bestaat voor F (λ), zoals gewenst.

Uiteraard willen we nu ook nog de complexiteit van dit geconstrueerde algoritme bepalen. Om te beginnen stellen we dat we O(n) ⊆ O(m) mogen aannemen; een graaf met meer punten dan zijden is niet relevant, aangezien we losse punten meteen mogen verwijderen om Z(λ, G) te bepalen. Verder nemen we aan dat het vinden van een cykelbasis die voldoet niet al teveel tijd kost; in het algemeen hoeft dit volgens Opmerking 2.7 niet waar te zijn.

De complexiteit van de FPRAS wordt gedomineerd door het vaak toepassen van de FPAUS. Voor n − 1 grafen passen we het s = d10ε−2n max(λ, λ−1e toe. Bij elke toepassing stoppen we na t ≤ 4mη−1 · log δ−1+ log m + 1 stappen waarbij δ−1 =

3ε−1n max(λ, λ−1). Merk op dat max(λ, λ−1) ≤ (D + 1)/(D − 1) ≤ 3 dus alles met λ valt weg; de waarde van λ zit al verstopt in η−1. Al met al vinden we dat de FPRAS een complexiteit heeft van

(36)

6. Path coupling II

In het voorgaande hoofdstuk hebben we een FPRAS geconstrueerd voor grafen waarbij we een restrictie moesten stellen op de doorsnede van de basiscykels. In dit hoofdstuk gaan we met behulp van een andere Markovketen een FPRAS construeren die deze restrictie niet heeft; wel moeten we wat inleveren op de waarde van λ.

Bouwen van een nieuwe Markovketen

In hoofdstuk 3 hebben we gekeken naar diverse partitiefuncties en de relaties daartussen. We gaan in dit hoofdstuk werken met de grote partitiefunctie. We gaan een Markovketen bouwen op

η := K(G) := {(A, F ) : A ∈ H(G), F ⊆ E(G), A ⊆ F }.

We defini¨eren de uniform sampler op K(G) als de verdeling π die voldoet aan π((A, F )) ∼ x|F |, oftewel dat π((A, F )) = x|F |/ZAF(x, G).

Opmerking 6.1. Als we een FPAUS voor K(G) kunnen maken, dan hebben we ook een FPAUS voor H(G): wegens (3.4) kunnen we door (A, F ) ∈ K(G) te projecteren op A ∈ H(G) een FPAUS krijgen voor H(G). In het bijzonder is (At) dan een Markovketen

op H(G).

We willen een Markovketen (At, Ft) op η bouwen die ergodisch is met als unieke

stationaire verdeling π. Net als voor (Xt), willen we dat transitiekansen slechts lokaal

defini¨eren. In elke stap willen we nu dat (At, Ft) niets doet, ´e´en basiscykel C verandert in

At of ´e´en zijde e verandert in Ft. Hierbij moeten we er wel voor zorgen dat At⊕ C ⊆ Ft

en At⊆ Ft⊕ {e}. Als metriek op η nemen we de Hamming-distance van H(G) plus de

Hamming-distance van P(E(G)).

We kiezen ervoor om de Markovketen in elke stap een (valse) munt te laten opgooien: met kans α focust de keten zich deze stap op de even deelgraaf At en blijft Ft sowieso

ongemoeid (A), met kans 1 − α focust de keten zich deze stap op de verzameling zijden Ft en blijft At ongemoeid (B). Hierbij kiezen we uiteraard α ∈ [0, 1] en verder laten we

deze α afhangen van G en x.

In geval A zitten we in de situatie van de Markovketen (Xt), dus laten we ook maar

ongeveer hetzelfde doen: we kiezen een basiscykel C uit de basis C uniform willekeurig en daarna veranderen we Atmogelijk door At⊕C. Als At⊕C 6⊆ Ft, dan is dit ¨uberhaupt

niet mogelijk, dus dan At+1= Atmet kans 1. In het andere geval springt Atnaar At⊕ C

met kans β en blijft op z’n plek met kans 1 − β. Ook β hangt af van G en x en ligt in [0, 1].

(37)

We kijken even naar de detailed balance: voor twee buurstaten (A, F ) en (A ⊕ C, F ) geldt dat met kans α ·f1 · b naar de andere staat wordt gesprongen, in beide richtingen. Verder geldt π (A, F ) = π (A ⊕ C, F ) omdat ze dezelfde rechter co¨ordinaat hebben. Deze staten zijn dus in detailed balance.

Voor geval B kiezen we ervoor om ongeveer hetzelfde te doen als in geval A: we kiezen nu een zijde e uit E(G) uniform willekeurig, waarna we Ft mogelijk laten springen naar

Ft⊕ {e} en anders hetzelfde laten. Als e ∈ At dan e ∈ Ft en mogen we e niet weghalen

omdat e ∈ At = At+1 ⊆ Ft+1. Als e 6∈ At, dan hebben we wel keuze. We kijken eerst

naar de detailed balance voor twee staten (A, F ) en (A, F t {e}) met e 6∈ F geldt

π (A, F t {e}) =  x 1 − x  · π (A, F ).

We willen dus dat de kans om de ene kant op te springen1−xx keer zo groot is als de kans de andere kant op. We noteren deze kansen met γx en γ(1 − x), waarbij γ afhangt van x en G zodanig dat in elk geval γx, γ(1 − x) ∈ [0, 1].

(38)

Figuur 6.1.: Markovketen (At, Ft)

A. Focus met kans α op de even deelgraaf At:

1. Kies een basiscykel Ci uit {C1, . . . , Cf} willekeurig;

2. Dan

a) Als Ci ⊆ Ft dan kiezen we voor (At+1, Ft+1) het paar

• (At⊕ Ci, Ft) met kans β

• (At, Ft) met kans 1 − β

b) Als Ci 6⊆ Ft dan kiezen we (At+1, Ft+1) het paar

• (At, Ft) met kans 1

B. Focus met kans 1 − α op de verzameling zijden Ft:

1. Kies een zijde e uit E(G) willekeurig; 2. Dan

a) Als e 6∈ Ft dan kiezen we voor (At+1, Ft+1) het paar

• (At, Ftt {e}) met kans γx

• (At, Ft) met kans 1 − γx

b) Als e 6∈ Aten e ∈ Ft dan kiezen we voor (At+1, Ft+1) het paar

• (At, Ft\{e}) met kans γ(1 − x)

• (At, Ft) met kans 1 − γ(1 − x)

c) Als e ∈ Atdan kiezen we voor (At+1, Ft+1) het paar

• (At, Ft) met kans 1

Later zal blijken dat β = 12 en γ = 1 de optimale keuze zijn; de optimale waarde voor α is ingewikkelder.

Bouwen van een coupling

We willen nu weer dat onze Markovketen (At, Ft) een polynomiale mixing-time heeft.

Net als in het vorige hoofdstuk, volstaat het om alleen de coupling te defini¨eren op aangrenzende staten en dan te hopen dat ρ < 1.

Twee verschillende buurstaten verschillen in precies ´e´en co¨ordinaat; of ze verschillen een basiscykel Ckin de linker component (I), of ze verschillen een zijde {e0} in de rechter

component (II). Dit zijn twee wezenlijk verschillende gevallen en we benaderen ze daarom ook apart.

(39)

We geven nu alvast een samenvatting van de stappen, daarna werken we ze uit. De gevallen zijn onderscheiden in 1) of de ketens verschillen in basiscykel of zijde en daarna 2) welke basiscykel of zijde mogelijk wordt aangepast. We passen coupling toe precies als we bij de betreffende basiscykel / zijde uitkomen waarin de ketens verschillen: de kans dat precies ´e´en van de twee ketens verandert willen we maximaliseren. Als we niet bij precies de goede basiscykel / zijde komen maar wel in elk geval bij de juist keuze uit { basiscykel, zijde }, dan laten we de ketens elkaars gedrag kopi¨eren: als de ene keten verandert, dan verandert de ander ook en andersom. Op deze manier minimaliseren we de verwachte afstand. In het geval van een verkeerde keuze uit { basiscykel, zijde }, laten we de ketens elkaar kopi¨eren als dat mogelijk is. Voor de volledigheid zijn de transitiekansen weergegeven achteraan dit hoofdstuk.

Eerst geval I, zeg dat de twee ketens verschillen in Ck: ze bevinden zich in de staten

(A, F ) en (A ⊕ Ck, F ).

A Stel dat de focus komt op de even deelgrafen; we kiezen een basiscykel C.

• Als C = Ckdan passen we coupling toe. De kans dat precies ´e´en van de twee

ketens springt is te maximaliseren tot min (2β, 2(1 − β)).

• Als C 6= Ck maar C ⊆ F dan zijn beide springkansen β, kopi¨eren dus.

• Als C 6⊆ F dan blijven beide ketens sowieso op hun plek met kans 1 B Stel nu dat de focus komt op de verzameling zijden; we kiezen een zijde e.

• Als e 6∈ Ftdan wordt bij beide ketens met kans γx de zijde e aan F toegevoegd:

kopi¨eren dus.

• Als e 6∈ A en e 6∈ A ⊕ Ck en e ∈ Ft dan zijn beide springkansen (van F naar

F \{e} gelijk: kopi¨eren dus.

• Als e in precies ´e´en van A en A ⊕ Ck zit (wat equivalent is met e ∈ Ck, in

het bijzonder e ∈ F ), dan moet de verwachte afstand helaas mogelijk groter worden; de keten met e in de even deelgraaf moet op z’n plek blijven, de andere keten moet met kans γ(1 − x) springen.

• Als e in zowel A als A ⊕ Ck zit (en dus e ∈ F ), dan mag e niet uit F gehaald

worden en blijven beide ketens op z’n plek. We gebruiken hierna R en S zoals in Definitie 2.9.

De afstand tussen de ketens vergroot van 1 naar 2 als we met kans (1 − α) focussen op de verzameling zijden, dan met kans |Ck|/m ≤ S/m op een zijde van Ck terecht komen

en dan met kans γ(1 − x) precies ´e´en keten laten springen: de afstand verkleind van 1 naar 0 met kans 2αf−1· min(β, 1 − β). Al met al willen we dus

ρ ≥ 1 − 2αf−1min(β, 1 − β) + (1 − α)Sm−1γ(1 − x). (6.1) Nu geval II, zeg dat de twee ketens verschillen in zijde e0: ze bevinden zich in de

staten (A, F ) en (A, F t {e0}) waarbij e 6∈ F . De gevalsonderscheiding gaat ongeveer

(40)

A Stel dat de focus komt op de even deelgrafen; de basiscykel C is gekozen. • Als C ⊆ F , dan zijn beide springkansen β, kopi¨eren dus.

• Als C 6⊆ F maar C ⊆ F t {e0}, dan wordt het vervelend. Bij (A, F ) mogen

we A niet naar A ⊕ C laten springen, maar bij (A, F t {e0} wel, dat moet

zelfs met kans β.

• Als C 6⊆ F ⊆ {e0} dan moeten beide ketens op z’n plek blijven.

B Stel dat de focus komt op de deelverzameling zijden; de zijde e is gekozen.

• Als e = e0 dan coupling. De kans dat precies ´e´en van de twee ketens

springt is te maximaliseren tot min (γx + γ(1 − x), 2 − (γx + γ(1 − x))) = min (γ, 2 − γ).

• Als e 6∈ Ft en e 6= e0, dan zijn voor beide ketens de springkansen γx, dus

gelijk, kopi¨eren dus.

• Als e ∈ Ft, dan zijn beide springkansen γ(1 − x), kopi¨eren dus.

De afstand vergroot van 1 naar 2 als we met kans α focussen op de basiscykels, dan met zekere kans op een cykel C komen zodat C 6⊆ F maar C ⊆ F t {e0} en dan met

kans β springen. Zo’n cykel C moet voldoen aan C 3 e0 (en nog een vervelende weinig

toevoegende eis op F ) wat met kans hoogstens R/f het geval is. De afstand verkleint van 1 naar 0 als we met kans (1 − α) · m−1· min(γ, 2 − γ). We willen dus

ρ ≥ 1 − (1 − α)m−1min(γ, 2 − γ) + αRf−1β. (6.2) Claim 6.2. We kunnen ρ < 1 kiezen als

1 > RS(1 − x)/2. (6.3) Als dit het geval is, is ρ minimaal voor β = 12, γ = 1 en

α 1 − α = |C| m · S(1 − x) + 1 1 + R/2 . (6.4) Bewijs. We kijken naar (6.1) en (6.2) tezamen. Beide ondergrenzen voor ρ zijn strikt stijgend in β en γ gegeven β ≥ 12 en γ ≥ 1, dus we kiezen in elk geval β ≤ 12 en γ ≤ 1. We nemen beide ondergrenzen tezamen en krijgen

ρ ≥ max 1 − 2αf−1β + (1 − α)Sm−1γ(1 − x), 1 − (1 − α)m−1γ + αRf−1β . (6.5) Nu willen we ρ zo klein mogelijk hebben, dus we moeten α, β en γ zodanig kiezen dat het maximum minimaal is. We zien dat de linkerzijde strikt dalend is in α en β en strikt stijgend is in γ en dat voor de rechterzijde precies het omgekeerde geldt. Als er gelijkheid voor beide zijden kan gelden, dan moet dat dan een minimum voor het maximum geven.

Referenties

GERELATEERDE DOCUMENTEN

Traditioneel wordt dit principe wel gebruikt, maar niet in zijn volle consequentie doorgevoerd: De richtlijnen van de Inter- national commision on radiation units (ICRU) schrijven nog

Voor n + 1 schrij- ven we het linkerlid op, en splitsen de nieuwe term af; we mogen dan de induc- tiehypothese gebruiken.. Precies wat

Als er kansen worden benoemd, dan gaat het om een fusie van gemeenten, dat de gemeente stuurt op minder aanbieders, dat meer gebiedsgericht wordt gewerkt en dat de samenwerking

Deze vooringenomenheden zijn bij de meeste HRM-afdelingen niet bekend; hierdoor wordt er veelal niet aan vrouwen gedacht voor bepaalde functies 27 en hebben ze ook niet altijd

Within this heyday of the medium the research project Projecting knowledge focuses specifically on the transfer of scientific knowledge with the optical lantern by academics,

Keywords: convergence rate; coupling; gamma distribution; hierarchical Gibbs sampler; Markov chain; stochastic monotonicity.. Introduction A basic purpose of Markov chain Monte

Het college kiest er niet voor om in Eelde één gebouw in te zetten als cultuurhuis.. Dat doet afbreuk aan de

Omdat strijd met het bestemmingsplan ook de meest voorkomende reden is om een vooroverleg in eerste instantie niet positief te beoordelen, maar eerst te vragen om aanpassing van