Didactisch materiaal bij de cursus Optimalisatietechnieken http://telin.UGent.be/~philips/optimalisatie/ Academiejaar 2010-2011 Prof. dr. ir. W. Philips [email protected] Tel: 09/264.33.85 Fax: 09/264.42.95 UNIVERSITEIT GENT Telecommunicatie en Informatieverwerking versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Copyright notice This powerpoint presentation was developed as an educational aid to the renewed course “Optimisation Techniques” (Optimalisatietechnieken), taught at the University of Gent, Belgium as of 1998. This presentation may be used, modified and copied free of charge for non-commercial purposes by individuals and non-for-profit organisations and distributed free of charge by individuals and non-for-profit organisations to individuals and non-for-profit organisations, either in electronic form on a physical storage medium such as a CD-rom, provided that the following conditions are observed: 1. If you use this presentation as a whole or in part either in original or modified form, you should include the copyright notice “© W. Philips, Universiteit Gent, 1998” in a font size of at least 10 point on each slide; 2. You should include this slide (with the copyright conditions) once in each document (by which is meant either a computer file or a reproduction derived from such a file); 3. If you modify the presentation, you should clearly state so in the presentation; 4. You may not charge a fee for presenting or distributing the presentation, except to cover your costs pertaining to distribution. In other words, you or your organisation should not intend to make or make a profit from the activity for which you use or distribute the presentation; 5. You may not distribute the presentations electronically through a network (e.g., an HTTP or FTP server) without express permission by the author. In case the presentation is modified these requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the presentation, and can be reasonably considered independent and separate works in themselves, then these requirements do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the presentation, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. In particular note that condition 4 also applies to the modified work (i.e., you may not charge for it). “Using and distributing the presentation” means using it for any purpose, including but not limited to viewing it, presenting it to an audience in a lecture, distributing it to students or employees for self-teaching purposes, ... Use, modification, copying and distribution for commercial purposes or by commercial organisations is not covered by this licence and is not permitted without the author’s consent. A fee may be charged for such use. Disclaimer: Note that no warrantee is offered, neither for the correctness of the contents of this presentation, nor to the safety of its use. Electronic documents such as this one are inherently unsafe because they may become infected by macro viruses. The programs used to view and modify this software are also inherently unsafe and may contain bugs that might corrupt the data or the operating system on your computer. If you use this presentation, I would appreciate being notified of this by email. I would also like to be informed of any errors or omissions that you discover. Finally, if you have developed similar presentations I would be grateful if you allow me to use these in my course lectures. Prof. dr. ir. W. Philips Department of Telecommunications and Information Processing University of Gent St.-Pietersnieuwstraat 41, B9000 Gent, Belgium E-mail: [email protected] Fax: 32-9-264.42.95 Tel: 32-9-264.33.85 02a.2 Zelfstudie: Enkele begrippen uit de graaftheorie versie: 21/2/2011 gewijzigd op: 6/10/2003 © W. Philips, Universiteit Gent, 1998-2011 Grafen Graaf: een verzameling knopen (vertices) verbonden door takken (edges) Dezelfde graaf kan op veel manieren worden getekend! Bepaald door: V, de verzameling van alle knopen en E, de verzameling van alle takken Gerichte graaf (directed graph): een graaf met éénrichtingstakken: bestaat uit knopen (nodes) en pijlen (arcs) Elke knoop heeft nul of meer opvolgers (successors) en nul of meer voorgangers (predecessors) 02a.4 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Definities en notaties a a b w Tak (a,b),(b,a) of w b w Pijl: (a,b) of w Opmerking: soms is w niet de naam van de tak maar een waarde geassocieerd aan tak a (a,b)1 b Lus (a,b)2 w1 x1 w2 x2 wn-1 ... xn Pad: een aaneensluitende sequentie takken wi=(xi , xi+1), i=1,…n-1 Notatie (x1…xn) of w1,w2,… 02a.5 versie: 21/2/2011 gewijzigd op: 6/10/2003 © W. Philips, Universiteit Gent, 1998-2011 Paden en circuits w1 w4 w6 Circuit: gesloten pad (beginknoop=eindknoop) w3 w5 w2 w1 w4 a w3 w2 Pad b Enkelvoudig (“simple”) pad: aan elke knoop (behalve begin- en eindknoop) hangen juist twee takken Symbolische voorstelling: •tak: rechte lijn of lijn met 1 bocht •pad: kronkelende lijn 02a.6 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Circuits en paden in gerichte graaf In een gerichte graaf moet men duidelijk afspreken of men in de definities van “pad” en “circuit” eist dat het pad of het circuit gericht is, d.w.z. de zin van de pijlen volgt In de literatuur zijn er verschillende strekkingen •strekking 1: de zin van de pijlen heeft geen belang, tenzij men het expliciet heeft over gerichte paden en circuits •strekking 2: paden moeten de zin van de pijlen volgen tenzij men het expliciet heeft over niet-gerichte paden -een gericht pad noemt men dus een pad -een niet gericht pad noemt men hier ook een ketting -circuits moeten hier wel de zin van de pijlen volgen (!) Wij zullen steeds veronderstellen dat paden en circuits de zin van de pijlen volgen; als dat niet zo is zullen we het expliciet hebben over niet-gerichte paden en circuits 02a.7 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Geconnecteerdheid (connectedness) geconnecteerd, niet volledig, 1 component niet-geconnecteerd, niet volledig 2 componenten geconnecteerd, volledig 1 component Geconnecteerde graaf: bevat een pad tussen elke twee knopen Volledig geconnecteerde graaf: er ligt een tak tussen elke twee knopen Een niet-geconnecteerde graaf bestaat uit componenten die zelf geconnecteerd zijn Hoeveel takken bevat een volledig geconn. graaf met v knopen? 02a.8 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Geconnecteerdheid in gerichte graaf geconnecteerde graaf, maar niet sterk geconnecteerd s t sterk-geconnecteerde graaf s t Definities: •een graaf met pijlen is geconnecteerd de corresponderende graaf zonder pijlpunten is geconnecteerd •een gerichte graaf is sterk geconnecteerd er bestaat een pad dat de pijlen respecteert van elke knoop naar elke andere knoop Als er geen pad van s naar t bestaat zijn er daarvoor twee mogelijke oorzaken: s en t behoren tot 2 verschillende componenten of er bestaat geen gericht pad van s naar t 02a.9 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Sub-graaf G G’ gegenereerd door G’ gegenereerd door rode knopen blauwe takken Subgraaf G’ van G: wordt verkregen door het verwijderen van een aantal takken en de corresponderende knopen: E’ E en V’ V Subgraaf gegenereerd door verzameling V’ van knopen: bestaat uit deze knopen en uit enkel de takken die twee knopen uit V’ verbinden Subgraaf gegenereerd door verzameling E’ van takken: bestaat uit deze takken en uit enkel die knopen die uiteinden van takken uit E’ zijn 02a.10 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Planaire grafen Planair 4 (!) mazen Planair 2 mazen Planair (!) Planair? Een graaf is planair als men hem kan tekenen zonder dat twee takken elkaar snijden (tenzij in een knoop) Als een planaire graaf zo wordt getekend, dan verdeelt hij het vlak in mazen (=gebieden begrensd door de takken) 02a.11 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Duale van een planaire graaf duaal In dit voorbeeld is de duale graaf (toevallig) gelijk aan zichzelf! Constructie van de duale graaf: 1. plaats één knoop in elke “maas” 2. voor elke tak in de gegeven graaf - noem de mazen aan weerszijden van die tak A en B (soms is A=B; geef hier van een voorbeeld) - teken een tak tussen de knopen A en B in de duale graaf De duale graaf is ook planair De duale van de duale graaf is dikwijls gelijk aan de originele graaf; wanneer wel en wanneer niet? 02a.12 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Het vierkleurenprobleem Men wenst de landen op een landkaart zo te kleuren dat • landen die in meer dan één punt grenzen steeds een verschillende kleur hebben • men zo weinig mogelijk kleuren nodig heeft Vierkleurenstelling: • men heeft nooit meer dan 4 kleuren nodig • een van de meest complexe bewijzen uit de wiskunde! Het vinden van een optimale kleuring is niet gemakkelijk Het vinden van een kleuring met 5 kleuren is wel een stuk gemakkelijker 02a.13 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Graad van een knoop… De graad van een knoop is het aantal takken aan deze knoop Bij een gerichte graaf kan men een onderscheid maken tussen •het aantal takken dat uit een knoop vertrekt: de uit-graad •het aantal takken dat in een knoop toekomt: de in-graad graad: 4 in-graad: 1 uit-graad: 3 02a.14 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 … Graad van een knoop Opmerking: bij gerichte grafen tekent men soms ook takken zonder pijlen; men moet duidelijk definiëren wat men met dergelijke takken bedoelt •men kan deze takken beschouwen als twee parallelle pijlen in tegengestelde zin graad= in-graad + uit-graad •men kan ze ook beschouwen als tweerichtingstakken graad in-graad + uit-graad Meest logische interpretatie in-graad: 1 uit-graad: 3 graad: 4 graad: 3 02a.15 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Bomen en bossen Een boom Een bos Een boom is een geconnecteerde graaf zonder (niet-gerichte) circuits Een bos is een niet-noodzakelijk geconnecteerde graaf zonder (niet-gerichte) circuits (een verzameling bomen) Eigenschappen (Bewijs dit zelf): •In een boom is er een uniek pad tussen elke twee knopen •Een boom met m knopen heeft m-1 takken Let op: een boom is een bijzonder geval van een bos 02a.16 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Opspannende boom: voorbeelden boom 1 boom 2 Opspannende bomen Opspannend bos Een opspannende boom van een graaf G: een boom die alle knopen van G bevat (en waarvan de takken tot G behoren) Een koorde van een graaf G voor een bepaalde opspannende boom B: een tak van G die niet tot B behoort Een opspannend bos van een graaf G: een bos dat alle knopen van G bevat (en waarvan de takken tot G behoren) Opspannende bomen en bossen zijn dus deelgrafen van G en zijn niet uniek! 02a.17 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Een snede K: blauwe knopen S: blauwe takken 1 extra component enkelvoudig Bij een verzameling knopen K hoort een snede S: de verzameling takken met 1 uiteinde in K en 1 uiteinde niet in K De snede S is ook de minimale verzameling van takken die men moet doorsnijden om K volledig af te snijden van de “buitenwereld” De snede is enkelvoudig als het wegnemen van de snedetakken het aantal componenten van de graaf met niet meer dan 1 doet toenemen; zoniet is ze meervoudig 02a.18 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Voorbeeld: snede in een boom... “Echte” subsneden: 1 2 1,2 S K 1 3 2 4 S is een meervoudige snede: 1 component voor het wegnemen van S en 5 componenten na het wegnemen van S Alternatieve definitie: een snede is meervoudig als ze als “echte” deelverzameling een andere snede bevat 02a.19 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 ...Voorbeeld: snede in een boom Een snede S verdeelt een graaf in minstens twee “eilanden” (gescheiden subgrafen) 02a.20 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Disconnecterende verzameling takken disconnecterende verzamelling takken en (enkelvoudige) snede disconnecterende verzameling takken maar geen snede Een disconnecterende verzameling takken is een verzameling takken, die als men ze wegneemt de graaf doet uiteenvallen in meerdere componenten Elke snede is een disconnecterende verzameling takken, maar het omgekeerde geldt niet 02a.21 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Bi-partite graaf gelijk! niet bi-partite bi-partite bi-partite Een graaf is bi-partite • als men zijn knopen kan kleuren met twee kleuren zodat geen enkele tak knopen met dezelfde kleur verbindt • d.w.z. als men zijn verzameling V van knopen kan partitioneren in gescheiden V1 en V2 zodat geen enkele tak twee knopen van V1 verbindt noch twee knopen van V2 02a.22 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Een stroom... Een stroom beschrijft het transport van voorwerpen (elektronen, auto's, personen) in een netwerk 6 10 5 5 3 3 Bronknoop: genereert stroom Afvoerknoop: neemt stroom op Distributieknoop 4 5 Capaciteit van een tak: maximaal mogelijke stroom door die tak Een stroom is mogelijk als hij voldoet aan •de capaciteitsbeperkingen in iedere tak •de wet van het behoud van stroom in ieder knooppunt 02a.23 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Stroombehoud: voorbeeld 6 10 5 I2 I1 5 3 I4 3 I5 I3 4 Bronkoop: genereert stroom Afvoerknoop: neemt stroom op Distributieknoop Capaciteit Stroombehoud: Generatie van stroom+Inkomende stromen =Verbruik van stroom+Uitgaande stromen Voorbeeld stroombehoud: I1+I2=10 I2=I3 I1+I4=I5+5 ... Capaciteitsbeperkingen: I1 6 I2 5 I3 4 ... 02a.24 versie: 21/2/2011 © W. Philips, Universiteit Gent, 1998-2011 Literatuur Evans, blzn. 1-18 N. Hartsfield and G. Ringel. Pearls in Graph Theory. A comprehensive introduction. Academic Press, 1994. ISBN: 0-12-328553-4. Peterson software •windows-programma •http://www.utc.edu/~cpmavata/petersen/ •Mogelijkheden: -grafen tekenen, analyseren -Prim en Kruskal (optimale bomen) -Dijkstra (optimale paden) -... 02a.25