1 Automatisches Zeichnen von Graphen Prof. Dr. Petra Mutzel 1. VO WS 2007/08 15. Oktober 2007 Lehrstuhl für Algorithm Engineering LS11 Universität Dortmund
1
Automatisches Zeichnenvon Graphen
Prof. Dr. Petra Mutzel
1. VO WS 2007/08 15. Oktober 2007
Lehrstuhl für
Algorithm Engineering LS11
Universität Dortmund
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 2
Graphzeichnen = Zeichnen schöner Diagramme
0102030405060708090
1.Qrtl.
3.Qrtl.
OstWestNord
1. Qrtl.2. Qrtl.3. Qrtl.4. Qrtl.
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 3
Was ist Graphzeichnen?
0102030405060708090
100
1. Qrtl
.2. Q
rtl.
3. Qrtl
.4. Q
rtl.
OstWestNord
= Zeichnen schöner Diagramme• NICHT Balkendiagramme• NICHT Kuchendiagramme• NICHT statistische
Aufbereitung von DatenSONDERN:
übersichtliche Darstellung von Objekten und deren Beziehungen zueinander (Graphen)
Diagramm aus der Zeitung
taz 26.05.2000
TQM
TQM
IntensitaetKundenbeziehung /
-qualitaet
Markt-forschung
Preise
Produkt-palette
Bench-marking
Forschung +Entwicklung
Maschinen
Anreize /Einkommen
Tools
Investitionen
Projektleitung /Qualitaetssicherung
Weiterbildung
Rekrutierung
Organisation(Prozessorganisation)
Kommunikation
Strategie /Unternehmenspolitik
interneQualitaets-vorgaben
Vorgaben
?
Reklam Image
Kundenbindung
Konkurrenz-druck
rel. Kunden-zufriedenheit
AnsehenManagement
Auftraege /Umsatz
Cash Flow
Kunden-kenntnis- /
orientierung
Fehlerkultur /-toleranz
Kaeufermarkt
Kunden-erwartungen
Qualitaetsvorgaben,Gesetze, Revision
ProblemloesungKunde
StabilitaetKosten &
Preise
InnovationrelativeMarktleistungs-
qualitaet
TransparenzZiele
Angst
Widerstand
kurzfristigesDenken
Umgang mitKaeuflichkeit /
Konfkliktkultur
HierarchiedenkenVerteidigungs-
verhalten
MitarbeiterQualifikation
Denken in ProzessenSystemdenken
Team-beziehungen
Mitarbeiter-zufriedenheit
Lern-prozess
Fuehrungs-qualitaet /
Vorbild
Prozess-qualitaet
StabilitaetSysteme
Kreativitaet
Kosten
Budget
Leidensdruck
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 7
TQM
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 8
Ziel des Graph Drawing
„Ideale“ Repräsentation diskreter Objekte und deren Beziehungen (Graphen)
• Was sind gute Repräsentationen?• Algorithmen für automatische Layoutverfahren• Navigation in Repräsentationen
• Information Visualization• Graphenalgorithmen• Datenstrukturen• Optimierungsverfahren
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 9
bevor wir thematisch beginnen:
Kapitel 0: Kurzvorstellung und Organisatorisches
Die Professoren am LS11
Günter Rudolph:Evolutionäre Algorithmen
Petra Mutzel:Algorithm Engineering
Jan Vahrenhold:Geom. Alg.+ Didaktik
Sven Rahmann:Bioinformatik
NEU
Kurz-Vorstellung• Studium an Univ. Augsburg (WiMa/Math) 1983--1990• Wiss. Mitarb. an Rice University, Houston (TX)• Wiss. Mitarb. an FU Berlin• Promotion an Univ. zu Köln (Inf) 1994• Habilitation am Max-Planck-Institut für Informatik,
Saarbrücken 1999
• Vertr.-Professur (C3) an Univ. Heidelberg (Inf) 1999• Lehrstuhl für Algorithmen und Datenstrukturen, TU Wien
1999--2004• seit Dezember 2004:
Lehrstuhl für Algorithm Engineering, LS11
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 12
Algorithm Engineering
• Design,• theoretische Analyse,• Implementierung, und• experimentelle Evaluation
von Algorithmen und Datenstrukturen
anwendungsorientiert
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 13
Forschungsinteressen
• Algorithmen und Datenstrukturen• Graphenalgorithmen• Kombinatorische Optimierung
anwendungsorientiert
• Graphenlayout• Netzwerkdesign• Bioinformatik
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 14
Organisatorisches• Zeiten: Mo 12:15-13:45, Di 12:15-13:45• Raum: OH 14, R. 304
• Übung: – Projektarbeit in Gruppen, Präsentationen– 2-wöchig, d.h. 6 Termine– meist Originalartikel, Programmieraufgaben und
Experimentieraufgaben– mittels eigener Software Library OGDF: www.ogdf.net– Termine: Di ab 16:00 Uhr– Anmeldung: Di 16.10. in VO, Einteilung: s. web
1. Übungsblatt: Di 16.10.1. Übungsstunde mit Präsentationen: Di 30.10.
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 15
Organisatorisches
• Schwerpunktgebiete– 4: Algorithmen, Komplexität und formale Modelle– 6: Computational Intelligence und Natural Computing– 7: Intelligente Systeme– (nicht 1: Softwarekonstruktion)
• Material: – Folien, Originalpaper, Mitschriften(?)
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 16
Prüfungselemente
• Mündliche Fachprüfung: – Über VO 4 inkl Ü 2: 9LP– Anforderungen:
• Zusammenhänge des Gebiets• Spezielle Fragestellungen einordnen und
bearbeiten• (Regelmäßige aktive Mitarbeit in Übungen, u.a.
mind. drei erfolgreiche Präsentationen) • Mündliche Prüfung: Stoff der VO und Ü (20 Min.)
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 17
Prüfungselemente
• Leistungsnachweis: – Über VO 4 inkl. Ü 2: 9LP– Anforderungen:
• Regelmäßige aktive Mitarbeit in Übungen, u.a. mind. drei erfolgreiche Präsentationen
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 18
Literatur für diese VO• M. Kaufmann, D. Wagner (Eds.): Drawing Graphs:
Methods and Models, Lecture Notes in Computer Science, Tutorial, Vol. 2025, 2001, ISBN 3-540-42062-2.
• G. Di Battista, P. Eades, R. Tamassia, I. Tollis: Graph Drawing: Algorithms for the Visualization of Graphs, Prentice Hall, 1999, ISBN 0-13-301615-3.
• M. Jünger, P. Mutzel (Eds.): Graph Drawing Software, Graph Drawing Software, Springer Verlag, 2004, ISBN 3-540-00881-0.
• Aktuelle Originalartikel
„Introduction“ auf unseren Webseiten
Buch über Software
„Introduction“ gibt guten Überblick über Zeichenverfahren
GDEGDE
OGDF: Open Graph Drawing FrameworkGDE: GoVisual Diagram Editor
C++ Bibliothek, seit 1999Dortmund (Wien), Köln
www.ogdf.net, (GDE bis Nov. 2007: www.oreas.com/gde.php )
AGD: Algorithms for Graph DrawingC++ Bibliothek
seit 1996 Theorie und SoftwareentwicklungSaarbrücken / Wien, Köln, Halle (Trier)
gefördert von der Deutschen Forschungsgemeinschaft
Unsere Software
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 21
FRAGEN?
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 22
Kapitel 1: Einführung
• Motivation• Anwendungsbeispiele• Aesthetikkriterien• Zeichenverfahren - Überblick• Streifzug durch die Vorlesung
Verbrechensbekämpfung
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 25
Ergebnis der Datenbankanfrage
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 26
Ergebnis der Datenbankanfrage
Verbrechensbekämpfung
Ausgangssituation
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 28
Verbrechensbekämpfung
Datenbankabfrage
Verbrechensbekämpfung
Automatisches Layoutfür erweiterten Graphen
UML-Klassendiagramme
«Enquiry»Requisition Inquiry
PO requisition
Requisition Status
«Enquiry»GRV Inquiry
Goods Received Voucher
-GRA No.-Qty Returned-Reason
GRA
GRV Status
-GRV No-Supplier Code-Supplier Description-GRV Status-Authority No-Purchase Order No.-Suppliers Invoice/Delivery Note-Date Received
GRV Header
-UOM-Qty Ordered-Qty Received to Date-Qty on Delivery Note-Qty Counted-Qty Inspected OK-Qty Rejected-Qty Accepted-Unit Net Price-Qty on GRA-Supplier Invoice No.-Supplier Invoice Value-GRV Total (Excl. Vat)
GRV Detail
GRN Inquiry
Goods Returned Note
-GRN No-Supplier Code-Supplier Description-Suppliers Invoice/Delivery Note-GRV Ref. No-Purchase Order No.-Authority No.-Date Returned
GRN Header-Item Code-Item Description-Qty on GRN-Qty Returned-Unit Net Price-GRN Reason Code-Reason Description-Supplier Credit Note-Supplier Value
GRN Detail
-Date Required-Qty Required
Split line Item
«Enquiry»PO Inquiry
Purchase Order PO Status
-Warehouse-Supplier Code-UOM-Qty Required-Due Date-Price-Trade Discount 1-Trade Discount 2-Line Status
PO Requisition Detail
-quest No-Requistion Type-Created By-Requested By-Authorised By-Date Time Created-Request Status
PO Requisition Header-Purchase Order No-Supplier Code-Supplier Description-Order Type-Buyer-Date Time Created-Order Status : PO Status-Settlement Discount-Authority No-W/H Code-W/H Description-Version No
Purchase Order Header-Special Instructions-Requisition No-Ordering UOM-Qty Required-Qty received-Date Required-Standard Cost-Supplier Price-Trade Discount 1-Trade Discount 2-Requested By-Total Value (Excl. Vat)-Line Item Status : PO Status
Purchase Order Detail
«Enquiry»Supplier Inquiry
Supplier Status
-Supplier Code-Supplier Name-Supplier Status-Settlement Discount %-Payment Terms (Days)-Street No.-Street Name-Suburb-City-Physical Postal Code-P.O. Box No.-Postal Code-Banking Details-E-mail Address-Creditor Contact Person-MD Name-MD Number-Phone Number-Fax No-Statement Delivery Method-Method of Payment-Supplier Rating-Date Created-Trade Discount 1-Trade Discount 2
Supplier Master File
Transaction Type
-Item Code-Item Description
Stock Items
-Expence Code-Cost Center-Description of Product-Quoted Reference No.
Non-Stock Item
GL Account Stock Account
Employee GL Accounts
Budget
-Employee No.-Name-Surname-ID No.
Employee Master File
«Enquiry»Cardex Report
«Enquiry»Item Inquiry
-Supplier Code-Item Code-W/H Code-Supplier Price-Date On-Date Off-Max Stock Level-Minimum Stock Level-Multiples-Type (MRP or ROP)-Record Qty on D/Note?-Record Qty Counted?-Inspected OK?-Rejected?-Accepted?-EOQ-Supplier Lead Time-Ordering UOM-Conversion Factor
Supplier W/H Item Matrix
-Warehouse Code-Warehouse Description
Warehouse
-W/H Code-Item Code-Inventory on Hold-Inventory on Order-Supplier Code-Lead Time-Inventory on Hand-Minimum Order Qty-Maximum Order Qty-Re-order Point
Warehouse Item
-Warehouse-Product Group
Buyer Role
-Item Code-Item Description-Standard Cost-Stocking UOM-TAX-Material Cost-Last Cost Price-Inventory Unit-Forecast Method-D/Note inquiry-MRP - Lead Time-MRP - Supplier Code-MRP - W/H
Item Master File
Buyer
ModelElement
Feature
-body : BooleanExpressionConstraint
-defaultValue : ExpressionParameter
PersonsConstrBehavioralFeature
StructuralFeature-isRoot : Boolean-isLeaf : Boolean-isAbstract : Boolean
GeneralizableElement
Attribute
OperationMethod
ReturnName
«Datentyp»Datatype«Datentyp»
NameSpace
«Datentyp»Real
«Datentyp»String
«Datentyp»Boolean
«Datentyp»Integer
Package
Model
Classifier
-isActive : BooleanClass
Klasse17
«Datentyp»Frau«Datentyp»
Mann«Datentyp»Standort
«Datentyp»Arbeitsleistung
«Datentyp»Person
«Datentyp»Projekt
«Datentyp»bezeichnung
«Datentyp»Name
«Datentyp»budget
-language : Name-body : String
Expression
«Datentyp»InitVal
«Datentyp»Stunden
«Datentyp»getName
«Datentyp»getName
«Datentyp»setName
«Datentyp»setName
«Datentyp»NameToSet
-Ende3
*
-Ende4
*
ModelElement
Feature
-body : BooleanExpressionConstraint
-defaultValue : ExpressionParameter
PersonsConstr
BehavioralFeature
StructuralFeature
-isRoot : Boolean-isLeaf : Boolean-isAbstract : Boolean
GeneralizableElement
Attribute
Operation
Method
ReturnName
«Datentyp»Datatype
«Datentyp»NameSpace
«Datentyp»Real
«Datentyp»String
«Datentyp»Boolean
«Datentyp»Integer
Package
Model
Classifier
-isActive : BooleanClass
Klasse17
«Datentyp»Frau
«Datentyp»Mann
«Datentyp»Standort
«datatype»Arbeitsleistung
«Datentyp»Person
«datatype»Projekt
«Datentyp»bezeichnung
«Datentyp»Name
«Datentyp»budget
-language : Name-body : String
Expression «Datentyp»InitVal
«Datentyp»Stunden
«Datentyp»getName
«Datentyp»getName
«Datentyp»setName
«Datentyp»setName
«Datentyp»NameToSet
-Ende3*-Ende4*
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 35
Metabolische Pathways in der Bioinformatik
KEGG Datenbank
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 36
Biologische Netzwerke
vorher
Protein-Interaktionsnetzwerke (Koop. mit MPII Saarbrücken)
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 37
Biologische Netzwerke
nachher:
Protein-Interaktionsnetzwerke (Koop. mit MPII Saarbrücken)Aktuelle Diplomarbeit: A. Kunert
Der chemische Strukturraum: PG 504
PG 504 Koop. mit MPI Mol. Phys.
PG 504 Koop. mit MPI Mol. Phys.
PG 504 Koop. mit MPI Mol. Phys.
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 41
Was ist eine schöne Zeichnung?WERKE
Werke_IDWerke_PLZ
N
SOLLBESTAND
e
ARTIKEL
Artikel_IDArtikel_Menge
PRODUKTION
t
SORTIMENTE
s
VERTRIEB
LAUFZEIT
Laufzeit_ID
WERKEWerke_IDWerke_PLZ
UMLAGERUNGENUmlagerungen_IDUmlagerungen_Menge
SOLLBESTANDSollbestand_IDSollbestand_Menge
ARTIKELArtikel_IDArtikel_Menge
PRODUKTIONProduktion_IDProduktion_Zeit
SORTIMENTESortimente_IDSortimente_Preis
VERTRIEBVertrieb_IDVertrieb_Nummer
LAUFZEIT
Laufzeit_ID
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 42
Aesthetik Kriterien
• Wenige Kreuzungen• Wenige Kantenknicke• Kurze Kantenlänge• Kleine Zeichenfläche
• speziell: Hierarchie, Symmetrie
Metrik
Topologie
Form
• unterstützt durch WahrnehmungspsychologischeStudien (z.B. Purchase, Cohen, Chase [1995], ff.)
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 43
Datenbank Modell
Vertrag Person Produktbestand Produktvorgang Provisionssatz
Konditionbestand
Normalvertrag
Vertragsinhaber/Vertrag
Vertreter/Vorgang Vermittler/Vorgang Provisionssatz/Produktvorgang
Struktur
Bausparvertrag
Vertragsinshaber
Preis
Vermittler
Buchung
ZKVertrag Konto Vorgang Vertreter
KLVetrag Einlagenvertrag Immobilienvermittl. UnbekVetrag Darlehensvetrag RLVertrag
Original
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 44
Physikalisches / Kräfte-Modell
Datenbank Modell
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 45
Vertrag
Person
Produktbestand ProduktvorgangProvisionssatz
Konditionbestand
Normalvertrag
Vertragsinhaber/Vertrag
Vertreter/Vorgang Vermittler/Vorgang
Provisionssatz/Produktvorgang
Struktur
Bausparvertrag
Vertragsinshaber
Preis
Vermittler
Buchung
ZKVertrag
Konto
VorgangVertreter
KLVetrag
Einlagenvertrag Immobilienvermittl.
UnbekVetrag
Darlehensvetrag
RLVertrag
Datenbank Modell
Hierarchisches Modell
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 46
Vertrag
Person
Produktbestand
Produktvorgang Provisionssatz
Konditionbestand
Normalvertrag
Vertragsinhaber/Vertrag
Vertreter/Vorgang
Vermittler/Vorgang
Provisionssatz/Produktvorgang
Struktur
Bausparvertrag
Vertragsinshaber
Preis Vermittler
Buchung
ZKVertrag
Konto Vorgang
Vertreter
KLVetrag
EinlagenvertragImmobilienvermittl.
UnbekVetrag
Darlehensvetrag
RLVertrag
Datenbank Modell
Planares quasi-orthog. Modell
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 47
Überblick Kapitel 1
• Einführung
• Zeichnen von Bäumen
Petra Mutzel: Automatisches Zeichnen von Graphen, WS07/08 48
zu 2. Zeichnen von Bäumen0
1 23
4 5 67 8
9 10 1112
1314 15 16
17
Interesse? Dann bis morgen…