Úprava 14., 15., 18., 19., 20., 23. a přidání 21., 25. a 26. otázky z DMA

This commit is contained in:
Filip Znachor 2023-08-21 10:31:12 +02:00
parent 443ddb0657
commit 0f92cbb238
9 changed files with 100 additions and 5 deletions

View file

@ -21,7 +21,9 @@ Mějme graf $G$, kde graf $H$ je
- graf $G$ s odebranými vrcholy a všemi hranamy k nim připojeným
### Faktor grafu
**Faktor grafu** $G$ je libovolný jeho podgraf $H$, pro který platí, že množina vrcholů $V(G) = V(H)$ a množina hran $E(G) \subseteq E(H)$. Faktor $H$ je **vlastní**, je-li různý od grafu $G$.
**Faktor grafu** $G$ je libovolný jeho podgraf $F$, pro který platí, že množina vrcholů $V(G) = V(F)$ a množina hran $E(G) \subseteq E(F)$. Faktor $F$ je **vlastní**, je-li různý od grafu $G$.
Řekneme, že faktor $F$ je **sudý**, má-li v něm každý vrchol sudý stupeň.
### Rovnost grafů $G_{1} = G_{2}$

View file

@ -22,4 +22,6 @@ faktor (podgraf jiný, než je graf $G$).
Faktor grafu $G$ (podgraf se stejnými vrcholy ale s odebranými stranami), který je stromem, se nazývá **kostra grafu** $G$.
**Věta**: Každý souvislý graf má alespoň jednu kostru.
- najdu kružnici - odstraním hranu - opakuji (reverzní mazací algoritmus)
- najdu kružnici - odstraním hranu - opakuji (reverzní mazací algoritmus)
Zjištění počtu koster grafu ve 21. otázce.

View file

@ -1,6 +1,6 @@
# Eulerovské grafy
Tah z $u$ do $v$ v grafu $G$ je sled $(u = v_{0}, v_{1}, \dots, v_{k} = v)$, ve kterém se **mohou opakovat vrcholy**, ale **hrany** $v_{i1}v_i$ **jsou** pro různá $i$ **různé**.
Tah z $u$ do $v$ v grafu $G$ je sled $(u = v_{0}, v_{1}, \dots, v_{k} = v)$, ve kterém se **mohou opakovat vrcholy**, ale **hrany** $v_{i-1}v_i$ **jsou** pro různá $i$ **různé**.
- Tahem nazveme sled, ve kterém se neopakují hrany.
**Uzavřený tah** je tah, který je uzavřeným sledem (začíná a končí stejným vrcholem).

View file

@ -5,3 +5,26 @@
**Uzavřený tah** v grafu $G$ je tah $(v_{0}, \dots, v_{k})$, ve kterém platí $v_{0}= v_{k}$.
**Kružnice** v grafu $G$ je uzavřený sled délky alespoň 3, ve kterém se vrchol $v_{0}$ objevuje právě dvakrát a každý ostatní vrchol grafu nejvýše jednou. Číslo $k$ je délka dané kružnice.
# Prostor kružnic grafu
- $G = (V, E), \vert E\vert = m$
- každému faktoru grafu $G$ lze přiložit charakteristický vektor $x \in \mathbb{Z}^m_{2}$
**Věta**: Množina sudých faktorů (jejich char. vektorů) tvoří lineární podprostor vektorového prostoru $\mathbb{Z}^m_{2}$.
**Prostor kružnic** $\mathcal C(G)$ neorientovaného grafu $G$ je lineární prostor sudých faktorů (charakteristických vektorů).
- ? báze, dimenze $\mathcal C(G)$, počet prvků $\mathcal C(G)$ (počet sudých faktorů)
Konstrukce báze $\mathcal C(G)$
1) kostra grafu G ... T (lib. ale pevná)
2) systém fundamentálních kružnic
- pro každou hranu e grafu G, která není na T vezmeme kružnici v T + e - fundamentální kružnice příslušného e vzhledem ke kostře T
- počet fund. kružnic $= m-n+1$
3) $\dim(\mathcal C(G)) = m-n+1$ (G souvislý)
Věta: fundamentální kružnice tvoří bázi $\mathcal C(G)$
- $\dim(\mathcal C(G)) = m-n+1$ (G souvislý)
- počet prvků $\mathcal C(G)$ = počet sudých faktorů G = počet podmnožin fundamentálních kružnic = $2^{m-n+1}$

View file

@ -8,6 +8,8 @@ $m_{i,j} = \begin{cases} 1, & \text{jestliže } v_{i} \in e_{j}, \\ 0 & \text{ji
se nazývá **vrcholově-hranová incidenční matice** grafu $G$.
**Poznámka**: S incidenční maticí neorientovaného grafu je potřeba pracovat nad tělesem $\mathbb{Z}_{2}$.
## Pro orientovaný graf
**Definice**: Nechť $\vec{G}$ je **orientovaný graf** s vrcholy $V = \{v_{1}, \dots, v_{n}\}$ a hranami $E = \{e_{1}, \dots, e_{m}\}$. Předpokládáme, že graf $\vec{G}$ **neobsahuje smyčky** (hrany $x, x$). Matice $M(\vec{G})$ typu $n/m$ definovaná předpisem
@ -15,7 +17,7 @@ se nazývá **vrcholově-hranová incidenční matice** grafu $G$.
$m_{i,j} = \begin{cases} 1 & \text{pokud hrana } e_{j} \text{ začíná ve vrcholu } v_{i}\\-1 & \text{pokud hrana } e_{j} \text{ končí ve vrcholu } v_{i}\\0 & \text{jinak (} e_{j} \text{ nekoliduje s } v_{i}\text{)} \end{cases}$
se nazývá **vrcholově-hranová incidenční matice** orientovaného grafu $\vec{G}$.
- n-tý řádek je n-tý vrchol a jednotlivé sloupce určují začátek ($+1$) nebo konec ($-1$) hrany v tomto vrcholu
- i-tý řádek je i-tý vrchol a j-tý sloupec určuje začátek ($+1$) nebo konec ($-1$) j-té hrany v i-tém vrcholu
### Vlastnosti

View file

@ -0,0 +1,24 @@
# Počet koster
**Cauchy-Binetova věta**: Nechť $B$ je matice o rozměrech $r\times s$, kde $r \leq s$. Potom platí, že
- $\displaystyle\det(B\cdot B^T) = \sum_{I} (\det B_{I})^2,$
kde $I$ probíhá všechny $r$-prvkové množiny sloupců a $B_I$ je čtvercová podmatice matice $B$, určená sloupci z množiny $I$.
**Věta**: Nechť $\vec{G}$ je slabě souvislý orientovaný graf bez smyček a $A = M_{R}(\vec{G})$. Potom **počet koster** grafu $\vec{G}$ **je roven determinantu** matice $A \cdot A^T$.
# Laplaceova matice
Nechť $G$ je neorientovaný graf s vrcholy $V = \{v_{1}, \dots, v_{n}\}$ a $\vec{G}$ nějaké jeho orientace bez smyček a násobných hran. Dále položme
- $L = M(\vec{G}) \cdot (M(\vec{G}))^T \quad$ (tzv. **Laplaceova matice** grafu $G$).
Potom pro prvky čtvercové matice $L = (l_{ij})$ řádu $n$ platí:
$l_{ij} = \begin{cases} \text{d}(v_{i}) & \text{pokud } i=j, \\ -1 & \text{pokud } v_{i}v_{j} \in E(G), \\ 0 & \text{jinak.} \end{cases}$
Navíc platí, že matici $L' = M_{R}(\vec{G}) \cdot (M_{R}(\vec{G}))^T$ získáme vypuštěním posledního řádku a sloupce z matice $L$.
Kolik koster má úplný graf na $n$ vrcholech?
- Úplný graf na $n \geq 2$ vrcholech má $n^{n-2}$ různých koster.

View file

@ -79,4 +79,5 @@ Mějme orientovaný graf $\vec{G}$ s vrcholy $v_{1}, \dots, v_{n}$. Potom matici
**Tvrzení**: Nechť $G$ je neorietovaný graf. Potom pro každé $x, y, z \in V(G)$ platé
1) $d^w(x, y) \geq 0, \quad d^w(x, y) = 0 \iff x = y,$
2) $d^w(x, y) = d^w(y, x),$
3) $d^w(x, z) \leq d^w(x, y) + d^w(y, z).$
3) $d^w(x, z) \leq d^w(x, y) + d^w(y, z).$
- tj. $\text{d}^w$ je metrika na $G$

View file

@ -0,0 +1,30 @@
# Úloha minimální kostry
Nechť $G$ je souvislý ohodnocený neorientovaný graf a nechť $T$ je kostra grafu $G$. Potom číslo
$\displaystyle w(T) = \sum_{e \in E(T)} w(e)$
nazveme **vahou kostry $T$ v grafu $G$**. Kostru $T'$ takovou, že $w(T') = \min\{ w(T); T \text{ je kostra } G \}$, nazveme **minimální kostrou grafu $G$**.
**Algoritmus** na hledání minimální kostry - **O. Borůvka**.
- Vstup: souvislý ohodnocený neorientovaný graf.
1. $F$ je faktor grafu $G$ s $E(F) = \emptyset$ (nemá žádné hrany).
2. Existuje hrana $e \in E(G) - E(F)$ taková, že faktor $F' = (V(G), E(F) \cup \{e\})$ neobsahuje kružnici?
- Pokud ne - KONEC, pokud ano, pokračuj na 3.
3. Ze všech takových hran vyber hranu $e'$ s minimální váhou a polož $F = (V(G), E(F) \cup \{e'\})$ a jdi na 2.
**Věta**: Nechť $G$ je souvislý ohodnocený neorientovaný graf. Potom faktor $F$ nalezený předchozím algoritmem je minimální kostra grafu $G$.
**Algoritmus** na hledání minimální kostry - **V. Jarník**.
- Vstup: souvislý ohodnocený neorientovaný graf.
1. Zvolme libovolný vrchol $x \in V(G)$, položme $i := 1$ a $G_{1} = (\{x\}, \emptyset)$.
2. Je $V(G_{i}) = V(G)$?
- ANO - $G_{i}$ je minimální kostrou grafu $G$, konec
- NE - zvolme hranu $e_{i}$ s nejmenší vahou takovou, že má jeden konec v $G_{i}$ a druhý $x_{i}$ mimo $G_{i}$ (ze souvislosti grafu $G$ taková hrana existuje), krok 3
3. Označme $G_{i+1}$ graf vzniklý z grafu $G_{i}$ přidáním hrany $e_{i}$ včetně jejího koncového vrcholu $x_{i}$
- $V(G_{i+1}) = V(G_{i} \cup \{x_{i}\}), \quad E(G_{i+1}) = E(G_{i}) \cup \{h_{i}\}$
- krok 2
TODO: kritická cesta

View file

@ -0,0 +1,11 @@
# Úloha minimální cesty
**Algoritmus**: Minimální cesta z vrcholu $x$ do vrcholu $y$ - **E. W. Dijkstra**.
- Vstup: ohodnocený orientovaný graf $\vec{G}$, vrcholy $x$ a $y$.
1. Vrcholu $x$ přiřaď trvalou hodnotu $t(x) = 0$, ostatním vrcholům dočasnou hodnotu $\infty$ - horní hranice délky.
2. Je-li $u$ poslední vrchol. jemuž byla přiřazena trvalá hodnota $t(u)$, pak všem vrcholům $v$, pro něž $(u, v) \in E(\vec{G})$ a které ještě nemají trvalou hodnotu, přiřaď novou dočasnou hodnotu $d(v) = min\{ d(v), t(u) + w(u, v) \}$
3. Pro vrchol $w$ s nejmenší dočasnou hodnotou polož $t(w) = d(w)$.
4. Má vrchol $y$ trvalou hodnotu? Pokud ne, jdi na krok 2. Pokud ano, $t(y)$ je délka minimální cesty z $x$ do $y$, konec.
**Poznámka**: Hrany, na nichž $w(x, y) = t(y) - t(x)$ určují minimální cestu.