parent
9baf700c9b
commit
537045dd1e
@ -145,7 +145,7 @@ $n! = n\cdot(n-1)\cdot...\cdot2\cdot1$ Möglichkeiten
|
|||||||
|
|
||||||
**Bemerkung:** Es gilt
|
**Bemerkung:** Es gilt
|
||||||
$$
|
$$
|
||||||
n^{\underline{k}} = \frac{n!}{(n-1)!}
|
n^{\underline{k}} = \frac{n!}{(n-k)!}
|
||||||
$$
|
$$
|
||||||
|
|
||||||
### Fall C
|
### Fall C
|
||||||
|
@ -78,3 +78,121 @@ sogar:
|
|||||||
# Satz
|
# Satz
|
||||||
|
|
||||||
Ein Graph $G=(V,E)$ hat $\chi(G) = 2$ $\Leftrightarrow$ $G$ ist bipratit.
|
Ein Graph $G=(V,E)$ hat $\chi(G) = 2$ $\Leftrightarrow$ $G$ ist bipratit.
|
||||||
|
|
||||||
|
|
||||||
|
## Beweis
|
||||||
|
|
||||||
|
"$\Leftarrow$" siehe oben
|
||||||
|
|
||||||
|
"$\Rightarrow$" Sei $G=(V,E)$ ein Graph mit $\chi(G) = 2$. Das heißt $\exists c
|
||||||
|
: V \rightarrow \{1,2\}$ mit $\forall \{u,v\} \in E: c(u) \neq c(v)$.
|
||||||
|
|
||||||
|
Setze $V_1 = \{v \in V | c(v) = 1 \}$ und $V_2 = \{v \in V | c(v) = 2 \}$.
|
||||||
|
Damit gilt $V = V_1 \biguplus V_2$ und $E \subseteq \{ \{u,v\} | u \in V_1, v
|
||||||
|
\in V_2 \}$ denn es gibt keine Katen zu Knoten gleicher Farbe.
|
||||||
|
|
||||||
|
|
||||||
|
Es gilt weiterhin
|
||||||
|
|
||||||
|
# Satz
|
||||||
|
|
||||||
|
Sei $G=(V,E)$ Graph, dann gilt $\chi(G) = 2$ genau dann, wenn $G$ keinen Kreis
|
||||||
|
ungerader Länge enthält.
|
||||||
|
|
||||||
|
## Beweis
|
||||||
|
|
||||||
|
"$\Rightarrow$" Sei $G$ ein Graph, der einen Kreis ungerader Länge enthält. Für
|
||||||
|
diesen Teilgraph braucht man schon 3 Farben. Damit kann $G$ nicht 2-färbbar
|
||||||
|
sein.
|
||||||
|
|
||||||
|
"$\Leftarrow$" Sei $G$ ein Graph der keinen Kreis ungerader Länge enthäöt. Wir
|
||||||
|
nehmen ohne Einschränkung an, dass $G$ zusammenhängend ist. Wähle $s\in V$
|
||||||
|
beliebig und führe Breitensuche auf $G$ mit Startknoten $s$ aus. Liefert
|
||||||
|
Spannbaum $T = \{ \{v,pred[v]\} | v \in V \setminus \{s\} \}$ und
|
||||||
|
Abstandsvektor $d[v]$.
|
||||||
|
|
||||||
|
Wir setzen $c: V \rightarrow \{1,2\}$ mit $c(v) = \begin{cases}
|
||||||
|
1 & 2 \mid d[v] \\
|
||||||
|
2 & 2 \nmid d[v]
|
||||||
|
\end{cases}$. Dies liefert die Färbung auf $T$.
|
||||||
|
|
||||||
|
Die weiteren Kanten von $G$ schließen Kreise gerader Länge. Deshalb haben
|
||||||
|
Endknoten immer unterschiedliche Farben.
|
||||||
|
|
||||||
|
$$
|
||||||
|
\tag*{$\Box$}
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
$$
|
||||||
|
\chi(G) = 2 \Leftrightarrow G\text{ ist bipartit} \Leftrightarrow G \text{
|
||||||
|
enthält keinen Kreis ungerader Länge}
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
# Satz
|
||||||
|
|
||||||
|
Sei $G=(V,E)$ ein planarer Graph. Dann gilt $\chi(G) \leq 6$.
|
||||||
|
|
||||||
|
## Beweis
|
||||||
|
|
||||||
|
(per Induktion)
|
||||||
|
|
||||||
|
Die Aussage ist trivial, falls $|V| \leq 6$.
|
||||||
|
|
||||||
|
**Induktionsschritt**: Sei nun $G=(V,E)$ planar mit $|V| \geq 6$. Da $G$
|
||||||
|
planar, $\exists v \in V : deg(v) \leq 5$.
|
||||||
|
|
||||||
|
Betrachte $G' = G \setminus \{v\}$. Nach Induktionsanfang gibt es eine Färbung
|
||||||
|
für $G'$ mit maximal 6 Farben. Das heißt
|
||||||
|
|
||||||
|
$$
|
||||||
|
\exists c' : V \setminus \{v\} \rightarrow \{1,...,6\} \text{ so dass} \\
|
||||||
|
\forall \{u,w\} \in E, u,w \neq v : c'(u) \neq c'(v)
|
||||||
|
$$
|
||||||
|
|
||||||
|
Wir konstruieren
|
||||||
|
|
||||||
|
$$
|
||||||
|
c: V \rightarrow \{1,...,6\} \text{ mit} \\
|
||||||
|
c(u) = \begin{cases}
|
||||||
|
c'(u) & u \neq v \\
|
||||||
|
\min \{\{1,...,6\} \setminus \{c'(x)\} | x \in \Gamma(v)\} & u = v
|
||||||
|
\end{cases}
|
||||||
|
$$
|
||||||
|
|
||||||
|
Da $|\Gamma(v)| \leq 5$ ist $c(v) \in \{1,...,6\}$ wohl definiert und $c$ ist
|
||||||
|
Färbung von $G$.
|
||||||
|
|
||||||
|
$$
|
||||||
|
\tag*{$\Box$}
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
Mit ein wenig mehr Aufwand kann man zeigen
|
||||||
|
|
||||||
|
$$
|
||||||
|
G \text{ planar} \Rightarrow \chi(G) \leq 5
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
Es gilt sogar
|
||||||
|
|
||||||
|
# Satz
|
||||||
|
|
||||||
|
Sei $G=(V,E)$ planar, dann gilt $\chi(G) \leq 4$
|
||||||
|
|
||||||
|
|
||||||
|
## Bemerkungen
|
||||||
|
|
||||||
|
i) Computergestützter Beweis
|
||||||
|
|
||||||
|
i) Es gibt einen Algorithmus, der für planare Graphen eine 4-Färbung in
|
||||||
|
Laufzeit $O(|V|^2)$ berechnet
|
||||||
|
|
||||||
|
i) Für allgemeine Graphen ist die Frage $\chi(G) \stackrel{?}{\le} 3$ nicht
|
||||||
|
effizient zu entscheiden (d.h. wir kennen keinen Algorithmus mit polynomieller
|
||||||
|
Laufzeit)
|
||||||
|
|
||||||
|
|
||||||
|
Deshalb: effiziente Algorithmen, die eine nicht-optimale Lösung finden
|
||||||
|
63
school/di-ma/20181128_2-greedy-algorithmen.md
Normal file
63
school/di-ma/20181128_2-greedy-algorithmen.md
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
---
|
||||||
|
title: Greedy-Algorithmen
|
||||||
|
date: 2018-11-28
|
||||||
|
---
|
||||||
|
|
||||||
|
Greedy-Algorithmen suchen immer lokal die beste Lösung. Die Lösungen müssen
|
||||||
|
nicht global optimal sein.
|
||||||
|
|
||||||
|
# Algorithmus (Greedy-Färbung)
|
||||||
|
|
||||||
|
**Eingabe**: $G=(V,E)$ ohne Einschränkung $V \in \{1,...,n\}$
|
||||||
|
|
||||||
|
i) setze $c(1) = 1$
|
||||||
|
|
||||||
|
i) `for ` $i \in \{2,...,n\}$ setze
|
||||||
|
|
||||||
|
$$
|
||||||
|
c(i) = \min\limits_{k\in \mathbb{N}} \{ k \neq c(v) | v \in \{1,...,i+1\}
|
||||||
|
\cap \Gamma(i) \}
|
||||||
|
$$
|
||||||
|
|
||||||
|
i) **Ausgabe**: $c : V \rightarrow \{ 1,..., \max \{c(i) | i \in V\} \}$
|
||||||
|
|
||||||
|
|
||||||
|
## Korrektheit
|
||||||
|
|
||||||
|
Da benachbarte Knoten unterschiedliche Farben haben, sit $c$ eine gültige
|
||||||
|
Färbung.
|
||||||
|
|
||||||
|
**Laufzeit**: $O(|V|)$ Iterationen.
|
||||||
|
|
||||||
|
|
||||||
|
Wie gut ist die Lösung des Greedy-Algorithmus?
|
||||||
|
|
||||||
|
|
||||||
|
Sei
|
||||||
|
$$
|
||||||
|
C = \max \{ c(i) | i \in \{1,...,n\} \}
|
||||||
|
$$
|
||||||
|
die Anzahl der Farben die der Greedy-Algorithmus braucht und
|
||||||
|
$$
|
||||||
|
A(G) = \max\limits_{v \in V} deg(v)
|
||||||
|
$$
|
||||||
|
dann gilt
|
||||||
|
$$
|
||||||
|
\chi(G) \leq C \leq \Delta(G) + 1
|
||||||
|
$$
|
||||||
|
da jeder Knoten maximal $\Delta(G)$ Nachbarn hat, ist die gewählte Farbe im
|
||||||
|
Schritt ii) immer kleiner gleich $\Delta(G) + 1$.
|
||||||
|
|
||||||
|
Die Güte der Lösung ist abhängig von der Reihenfolge, in welcher der
|
||||||
|
Greedy-Algorithmus die Knoten abarbeitet.
|
||||||
|
|
||||||
|
**Beispiel**: Betrachte bipartiten Graph mit $V_1 = \{u_1,...,u_n\}$ und
|
||||||
|
$V_2=\{v_1,...,v_n\}$ und $E = \{ \{u_i,v_j\} \mid i,j \in \{1,...,n\}, i \neq
|
||||||
|
j\}$
|
||||||
|
|
||||||
|
a) Reihenfolge $(u_1,u_2,...,u_n,v_1,v_2,...,v_n)$, dann gilt $C = \chi(G)$
|
||||||
|
|
||||||
|
a) Reihenfolge $(u_1,v_1,u_2,v_2,...,u_n,v_n)$, dann gilt $C=n=\Delta(G) + 1$
|
||||||
|
|
||||||
|
Man kann zeigen, dass es immer eine Reihenfolge gibt, so dass $C = \chi(G)$,
|
||||||
|
aber diese Reihenfolge kann man im Allgemeinen nicht effizient finden.
|
18
school/di-ma/20181204_1-kantenfaerbung.dot
Normal file
18
school/di-ma/20181204_1-kantenfaerbung.dot
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
graph g {
|
||||||
|
splines=false;
|
||||||
|
node [ shape="circle" ];
|
||||||
|
|
||||||
|
{
|
||||||
|
rank="same";
|
||||||
|
A; B;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
rank="same";
|
||||||
|
C; D;
|
||||||
|
}
|
||||||
|
|
||||||
|
A -- B [ label="1" ];
|
||||||
|
A -- C [ label="2" ];
|
||||||
|
A -- D [ label="3" ];
|
||||||
|
B -- D [ label="2" ];
|
||||||
|
}
|
63
school/di-ma/20181204_1-kantenfaerbung.md
Normal file
63
school/di-ma/20181204_1-kantenfaerbung.md
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
---
|
||||||
|
title: Kantenfärbung
|
||||||
|
date: 2018-12-04
|
||||||
|
---
|
||||||
|
|
||||||
|
**Beispiel**: $n$ Teams $\widehat{=}$ Knoten, $m$ Partien zwischen je 2 Teams
|
||||||
|
$\widehat{=} Kanten$
|
||||||
|
|
||||||
|
![Graph](20181204_1-kantenfaerbung.png)
|
||||||
|
|
||||||
|
Festlegen der Termine, an denen die SPiele stattfinden (Termine haben Nummern
|
||||||
|
$1,...,k$).
|
||||||
|
|
||||||
|
**Frage**: Wie viele Termine braucht man?
|
||||||
|
|
||||||
|
**Bedingung**: Kein Team kann an einem Termin 2 Spiele spielen
|
||||||
|
|
||||||
|
|
||||||
|
# Definition (Kantenfärbung)
|
||||||
|
|
||||||
|
Sei $G=(V,E)$ ein Graph.
|
||||||
|
|
||||||
|
i) Eine Kantenfärbung ist eine Abbildung
|
||||||
|
$$
|
||||||
|
c : E \rightarrow \{1,...,k\}
|
||||||
|
$$
|
||||||
|
mit der Eigenschaft
|
||||||
|
$$
|
||||||
|
\forall e,e' \in E, e \neq e' \land e \cap e' = \emptyset : c(e) \neq c(e')
|
||||||
|
$$
|
||||||
|
|
||||||
|
i) Ein Graph heißt $k$-kantenfärbbar, falls es eine $k$-Kantenfärbung für $G$
|
||||||
|
gibt.
|
||||||
|
|
||||||
|
i) Der **chromatische Index** $\chi'(G)$ ist definiert als
|
||||||
|
$$
|
||||||
|
\chi'(G) = \min \{k \in \mathbb{N} \mid
|
||||||
|
G \text{ ist } k \text{-kantenfärbbar}\}
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
**Bemerkung**: Es gilt $\chi'(G) \geq \Delta(G)$ mit $\Delta(G) =
|
||||||
|
\max\limits_{v \in V} deg(v)$, da alle $\Delta(G)$ Kanten eines Knotens $v$ mit
|
||||||
|
$deg(v) = \Delta(G)$ unterschiedliche Farben haben müssen.
|
||||||
|
|
||||||
|
Es gilt sogar:
|
||||||
|
|
||||||
|
# Satz
|
||||||
|
|
||||||
|
Sei $G=(V,E)$ Graph, dann gilt
|
||||||
|
$$
|
||||||
|
\Delta(G) \leq \chi'(G) \leq \Delta(G) + 1
|
||||||
|
$$
|
||||||
|
|
||||||
|
ohne Beweis
|
||||||
|
|
||||||
|
$$
|
||||||
|
\tag*{$\Box$}
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
**Bemerkung**: zu entscheiden, ob $\chi'(G) = \Delta(G)$ oder
|
||||||
|
$\chi'(G)=\Delta(G)+1$ ist im Allgemeinen ein schweres Problem.
|
29
school/di-ma/20181204_2-matching.dot
Normal file
29
school/di-ma/20181204_2-matching.dot
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
graph g {
|
||||||
|
rankdir="LR";
|
||||||
|
node [ shape="circle" ];
|
||||||
|
{
|
||||||
|
rank="same";
|
||||||
|
J1;
|
||||||
|
J2;
|
||||||
|
J3;
|
||||||
|
J1 -- J2 -- J3 [ style="invis" ];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
rank="same";
|
||||||
|
B1;
|
||||||
|
B2;
|
||||||
|
B3;
|
||||||
|
B4;
|
||||||
|
|
||||||
|
B1 -- B2 -- B3 -- B4 [ style="invis" ];
|
||||||
|
}
|
||||||
|
J1 -- B1 [ penwidth=3 ];
|
||||||
|
J1 -- B3;
|
||||||
|
J1 -- B4;
|
||||||
|
|
||||||
|
J2 -- B3 [ penwidth=3 ];
|
||||||
|
J2 -- B4;
|
||||||
|
|
||||||
|
J3 -- B2 [ penwidth=3 ];
|
||||||
|
J3 -- B4;
|
||||||
|
}
|
76
school/di-ma/20181204_2-matching.md
Normal file
76
school/di-ma/20181204_2-matching.md
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
---
|
||||||
|
title: Matching
|
||||||
|
date: 2018-12-04
|
||||||
|
---
|
||||||
|
|
||||||
|
**Beispiele**
|
||||||
|
|
||||||
|
i) verschiedene Jobs und Bewerber $\widehat{=}$ Knoten. Kanten zwischen Job und
|
||||||
|
Bewerber, falls Bewerber geeignet ist für Job.
|
||||||
|
|
||||||
|
Ziel: Jedem Job einen Bewerber zuordnen
|
||||||
|
|
||||||
|
![Beispiel Matching](20181204_2-matching.png)
|
||||||
|
|
||||||
|
i) Statt Jobs haben wir Rechentasks und statt Bewerbern haben wir Rechner.
|
||||||
|
Kanten zwischen Task und Rechner falls Rechner die nötigen Ressourcen hat, um
|
||||||
|
Task auszuführen
|
||||||
|
|
||||||
|
i) Heiraten. Kanten zwischen Personen, falls sie sich heiraten wollen. Ziel:
|
||||||
|
alle sollen heiraten
|
||||||
|
|
||||||
|
|
||||||
|
**Bemerkung**: Fall i) und ii) entsprechen bipartiten Graphen.
|
||||||
|
|
||||||
|
|
||||||
|
# Definition (Matching)
|
||||||
|
|
||||||
|
Sei $G=(V,E)$ ein Graph und $M \subseteq E$
|
||||||
|
|
||||||
|
i) $M$ heißt **Matching**, falls
|
||||||
|
$$
|
||||||
|
\forall e_1,e_2 \in M : e_1 \cap e_2 = \emptyset
|
||||||
|
$$
|
||||||
|
|
||||||
|
i) Ein Knoten $v \in V$ heißt überdeckt von $M$, falls $\exists e\in M:v\in e$
|
||||||
|
|
||||||
|
i) Matching $M$ heißt perfekt, falls alle Knoten überdeckt sind, d.h.
|
||||||
|
$|M|=\frac{|V|}{2}$. Wenn $|V| = 2y + 1$ ($|V|$ ist ungerade), gibt es kein
|
||||||
|
perfektes Matching
|
||||||
|
|
||||||
|
|
||||||
|
**Frage**: Kann man effizient maximale Matchings finden?
|
||||||
|
|
||||||
|
Zumindest für bipartite Graphen, ja!
|
||||||
|
|
||||||
|
|
||||||
|
# Notation
|
||||||
|
|
||||||
|
Sei $G=(V,E)$ Graph und $X \subseteq V$. Dann sei
|
||||||
|
|
||||||
|
$$
|
||||||
|
\Gamma(X) = \bigcup\limits_{a\in X} \Gamma(a)
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
# Satz (Hall, Heiratssatz)
|
||||||
|
|
||||||
|
Sei $G=(A\biguplus B, E)$ ein bipartiter Graph. $G$ enthält ein Matching $M
|
||||||
|
\subseteq E$ mit $|M| = |A|$, genau dann, wenn
|
||||||
|
|
||||||
|
$$
|
||||||
|
\forall X \subseteq A : |\Gamma(X)| \geq |X|
|
||||||
|
$$
|
||||||
|
|
||||||
|
## Bemerkung
|
||||||
|
|
||||||
|
* Falls Bedingung erfüllt, folgt $|B| \geq |A|$, denn $\Gamma(A) \subseteq B$
|
||||||
|
* Falls $|A| = |B|$, dann ist das Matching perfekt.
|
||||||
|
|
||||||
|
|
||||||
|
## Beweis
|
||||||
|
|
||||||
|
"$\Rightarrow$" sei $M$ ein Matching mit $|M| = |A|$ und $X \subseteq A$.
|
||||||
|
Betrachten der Teilgraph $G'=(A\bigcup B, M)$. Dann gilt $| \Gamma(X) | = | X
|
||||||
|
|$ in $G'$, da $M$ Matching und damit gilt $|\Gamma(X)| \geq |X|$ in $G$, da in
|
||||||
|
$G$ nur neue Nachbarn hinzu kommen können.
|
@ -27,3 +27,6 @@ subtitle: >
|
|||||||
- [2018-11-21 Eulertouren](20181121_1-eulertouren)
|
- [2018-11-21 Eulertouren](20181121_1-eulertouren)
|
||||||
- [2018-11-21 Planare Graphen](20181121_2-planare_graphen)
|
- [2018-11-21 Planare Graphen](20181121_2-planare_graphen)
|
||||||
- [2018-11-28 Knoten-Färbung](20181128_1-knotenfaerbung)
|
- [2018-11-28 Knoten-Färbung](20181128_1-knotenfaerbung)
|
||||||
|
- [2018-11-28 Greedy-Algorithmen](20181128_2-greedy-algorithmen)
|
||||||
|
- [2018-12-04 Kantenfärbung](20181204_1-kantenfaerbung)
|
||||||
|
- [2018-12-04 Matching](20181204_2-matching)
|
||||||
|
Loading…
Reference in New Issue
Block a user