Hálózatok
Gazd. Mat II Gyakorlatok
Hálózatok
9. gyakorlat
A maximális folyam - minimális vágás
feladatpár megoldása
Hálózatok
Hálózatok
Hálózatok
Maximális folyamfeladat
A folyamfeladatok olyan problémák megoldásához szolgáltatnak modellt, mint például hány teherautó almát lehet átküldeni egy adott úthálózaton Miskolcról Debrecenbe. A csúcsok jelölik a városokat. Az élek a városokat összekötő utakat. Minden úthoz tartozik egy kapacitás, ami azt jelöli, hogy az adott útszakaszon adott időegység alatt hány teherautó képes áthaladni. Keressük a maximális folyamot.
Elsősorban arra vagyunk kíváncsiak, hogy a megadott időegység alatt hány teherautó almát tudunk átküldeni Miskolcról Debrecenbe, de arra a kérdésre is megkapjuk a választ, hogy az egyes
útszakaszokon ehhez hány teherautót kell átküldenünk. Vannak korlátozó feltételeink, amelyek nagyon természetesek és logikusak.
Hálózatok
Maximális folyamfeladat
A folyamfeladatok olyan problémák megoldásához szolgáltatnak modellt, mint például hány teherautó almát lehet átküldeni egy adott úthálózaton Miskolcról Debrecenbe. A csúcsok jelölik a városokat. Az élek a városokat összekötő utakat. Minden úthoz tartozik egy kapacitás, ami azt jelöli, hogy az adott útszakaszon adott időegység alatt hány teherautó képes áthaladni. Keressük a maximális folyamot.
Elsősorban arra vagyunk kíváncsiak, hogy a megadott időegység alatt hány teherautó almát tudunk átküldeni Miskolcról Debrecenbe, de arra a kérdésre is megkapjuk a választ, hogy az egyes
útszakaszokon ehhez hány teherautót kell átküldenünk. Vannak korlátozó feltételeink, amelyek nagyon természetesek és logikusak.
Hálózatok
Maximális folyamfeladat
A folyamfeladatok olyan problémák megoldásához szolgáltatnak modellt, mint például hány teherautó almát lehet átküldeni egy adott úthálózaton Miskolcról Debrecenbe. A csúcsok jelölik a városokat. Az élek a városokat összekötő utakat. Minden úthoz tartozik egy kapacitás, ami azt jelöli, hogy az adott útszakaszon adott időegység alatt hány teherautó képes áthaladni. Keressük a maximális folyamot.
Elsősorban arra vagyunk kíváncsiak, hogy a megadott időegység alatt hány teherautó almát tudunk átküldeni Miskolcról Debrecenbe, de arra a kérdésre is megkapjuk a választ, hogy az egyes
útszakaszokon ehhez hány teherautót kell átküldenünk. Vannak korlátozó feltételeink, amelyek nagyon természetesek és logikusak.
Hálózatok
Az első akapacitáskorlátozás, amely azt korlátozza, hogy egy adott útszakaszon se akarjunk több teherautót átküldeni, mint amennyi az adott útszakasz kapacitása.
A második korlátozó feltételünk az úgynevezettKirchoff-féle csomóponti törvény. Ez azt fejezi ki, hogy egyetlen forrásunk van Miskolc: és egyetlen nyelőnk: Debrecen.
Tehát, ha van egy köztes városunk, mondjuk Polgár, akkor a Polgárra beérkező almát szállító teherautók számának meg kell egyezniük az onnan kilépő almát szállító teherautók számával, mivel köztes városban teherautó nem keletkezik és nem is tűnik el.
Hálózatok
Az első akapacitáskorlátozás, amely azt korlátozza, hogy egy adott útszakaszon se akarjunk több teherautót átküldeni, mint amennyi az adott útszakasz kapacitása.
A második korlátozó feltételünk az úgynevezettKirchoff-féle csomóponti törvény. Ez azt fejezi ki, hogy egyetlen forrásunk van Miskolc: és egyetlen nyelőnk: Debrecen.
Tehát, ha van egy köztes városunk, mondjuk Polgár, akkor a Polgárra beérkező almát szállító teherautók számának meg kell egyezniük az onnan kilépő almát szállító teherautók számával, mivel köztes városban teherautó nem keletkezik és nem is tűnik el.
Hálózatok
Az első akapacitáskorlátozás, amely azt korlátozza, hogy egy adott útszakaszon se akarjunk több teherautót átküldeni, mint amennyi az adott útszakasz kapacitása.
A második korlátozó feltételünk az úgynevezettKirchoff-féle csomóponti törvény. Ez azt fejezi ki, hogy egyetlen forrásunk van Miskolc: és egyetlen nyelőnk: Debrecen.
Tehát, ha van egy köztes városunk, mondjuk Polgár, akkor a Polgárra beérkező almát szállító teherautók számának meg kell egyezniük az onnan kilépő almát szállító teherautók számával, mivel köztes városban teherautó nem keletkezik és nem is tűnik el.
Hálózatok
A folyamfeladatot leíró matematikai modell
Az[N,A,k] hármasthálózatnak nevezzük, ha [N,A]egy digráf,
k :A →Z+ egy függvény. A k függvényt kapacitásnak nevezzük. Ha(i,j) egy él (ami azi csúcsból a j csúcsba mutat), akkor k(i,j)∈Z+ pozitív egészt az (i,j)∈ Aél kapacitásának nevezzük. Ak(i,j) jelölés helyett inkább a kij
jelölést használjuk.
Adottak továbbá azs,t ∈ N csúcsok, azaz a forrás és a cél. Egy x :A →Z+ függvényt az [N,A,k]hálózathoz tartozó folyamnak nevezzük, ha teljesülnek rá a következők:
Hálózatok
A folyamfeladatot leíró matematikai modell
Az[N,A,k] hármasthálózatnak nevezzük, ha
[N,A]egy digráf,
k :A →Z+ egy függvény. A k függvényt kapacitásnak nevezzük. Ha(i,j) egy él (ami azi csúcsból a j csúcsba mutat), akkor k(i,j)∈Z+ pozitív egészt az (i,j)∈ Aél kapacitásának nevezzük. Ak(i,j) jelölés helyett inkább a kij
jelölést használjuk.
Adottak továbbá azs,t ∈ N csúcsok, azaz a forrás és a cél. Egy x :A →Z+ függvényt az [N,A,k]hálózathoz tartozó folyamnak nevezzük, ha teljesülnek rá a következők:
Hálózatok
A folyamfeladatot leíró matematikai modell
Az[N,A,k] hármasthálózatnak nevezzük, ha [N,A]egy digráf,
k :A →Z+ egy függvény. A k függvényt kapacitásnak nevezzük. Ha(i,j) egy él (ami azi csúcsból a j csúcsba mutat), akkor k(i,j)∈Z+ pozitív egészt az (i,j)∈ Aél kapacitásának nevezzük. Ak(i,j) jelölés helyett inkább a kij
jelölést használjuk.
Adottak továbbá azs,t ∈ N csúcsok, azaz a forrás és a cél. Egy x :A →Z+ függvényt az [N,A,k]hálózathoz tartozó folyamnak nevezzük, ha teljesülnek rá a következők:
Hálózatok
A folyamfeladatot leíró matematikai modell
Az[N,A,k] hármasthálózatnak nevezzük, ha [N,A]egy digráf,
k :A →Z+ egy függvény. A k függvényt kapacitásnak nevezzük. Ha(i,j) egy él (ami azi csúcsból a j csúcsba mutat), akkor k(i,j)∈Z+ pozitív egészt az (i,j)∈ Aél kapacitásának nevezzük. Ak(i,j) jelölés helyett inkább a kij
jelölést használjuk.
Adottak továbbá azs,t ∈ N csúcsok, azaz a forrás és a cél. Egy x :A →Z+ függvényt az [N,A,k]hálózathoz tartozó folyamnak nevezzük, ha teljesülnek rá a következők:
Hálózatok
A folyamfeladatot leíró matematikai modell
Az[N,A,k] hármasthálózatnak nevezzük, ha [N,A]egy digráf,
k :A →Z+ egy függvény. A k függvényt kapacitásnak nevezzük. Ha(i,j) egy él (ami azi csúcsból a j csúcsba mutat), akkor k(i,j)∈Z+ pozitív egészt az (i,j)∈ Aél kapacitásának nevezzük. Ak(i,j) jelölés helyett inkább a kij
jelölést használjuk.
Adottak továbbá azs,t∈ N csúcsok, azaz a forrás és a cél.
Egy x :A →Z+ függvényt az [N,A,k]hálózathoz tartozó folyamnak nevezzük, ha teljesülnek rá a következők:
Hálózatok
A folyamfeladatot leíró matematikai modell
Az[N,A,k] hármasthálózatnak nevezzük, ha [N,A]egy digráf,
k :A →Z+ egy függvény. A k függvényt kapacitásnak nevezzük. Ha(i,j) egy él (ami azi csúcsból a j csúcsba mutat), akkor k(i,j)∈Z+ pozitív egészt az (i,j)∈ Aél kapacitásának nevezzük. Ak(i,j) jelölés helyett inkább a kij
jelölést használjuk.
Adottak továbbá azs,t∈ N csúcsok, azaz a forrás és a cél.
Egy x :A →Z+ függvényt az [N,A,k]hálózathoz tartozó folyamnak nevezzük, ha teljesülnek rá a következők:
Hálózatok
1 Kapacitáskorlátozás:
06xij 6kij ((i,j)∈ A).
2 Kirchoff-féle csomóponti törvény:
X
(p,j)∈A
xpj = X
(j,p)∈A
xjp (p∈ N \ {s,t}),
tehát a p csúcsból kilépő éleken a folyam összege megegyezik ap csúcsba belépő éleken a folyam összegével. Természetesen ap csúcs sem forrás, sem cél nem lehet.
Hálózatok
1 Kapacitáskorlátozás:
06xij 6kij ((i,j)∈ A).
2 Kirchoff-féle csomóponti törvény:
X
(p,j)∈A
xpj = X
(j,p)∈A
xjp (p∈ N \ {s,t}),
tehát a p csúcsból kilépő éleken a folyam összege megegyezik ap csúcsba belépő éleken a folyam összegével. Természetesen ap csúcs sem forrás, sem cél nem lehet.
Hálózatok
1 Kapacitáskorlátozás:
06xij 6kij ((i,j)∈ A).
2 Kirchoff-féle csomóponti törvény:
X
(p,j)∈A
xpj = X
(j,p)∈A
xjp (p∈ N \ {s,t}),
tehát a p csúcsból kilépő éleken a folyam összege megegyezik ap csúcsba belépő éleken a folyam összegével. Természetesen ap csúcs sem forrás, sem cél nem lehet.
Hálózatok
1 Kapacitáskorlátozás:
06xij 6kij ((i,j)∈ A).
2 Kirchoff-féle csomóponti törvény:
X
(p,j)∈A
xpj = X
(j,p)∈A
xjp (p∈ N \ {s,t}),
tehát a p csúcsból kilépő éleken a folyam összege megegyezik ap csúcsba belépő éleken a folyam összegével. Természetesen ap csúcs sem forrás, sem cél nem lehet.
Hálózatok
1 Kapacitáskorlátozás:
06xij 6kij ((i,j)∈ A).
2 Kirchoff-féle csomóponti törvény:
X
(p,j)∈A
xpj = X
(j,p)∈A
xjp (p∈ N \ {s,t}),
tehát a p csúcsból kilépő éleken a folyam összege megegyezik ap csúcsba belépő éleken a folyam összegével. Természetesen ap csúcs sem forrás, sem cél nem lehet.
Hálózatok
A maximális folyam, minimális vágás feladatpár
Hálózatok
Maximális folyam és minimális vágás feladatpár
1. Maximáli folyam feladat:
Adott egy[N,A,k]egy hálózat, továbbá ki vannak jelölve az s,t ∈ N csúcsok, mint forrás és cél.
Határozzunk egy x maximális folyamot, azaz egy olyan x folyamot, amelyre
X
(s,j)∈A
xsj →max
illetve X
(j,t)∈A
xjt →max
,
azaz a forrásból kilépő éleken a folyam összege maximális. Ez az összeg egyenlő a célba befutó éleken a folyam összegével. Elképzelhető, hogy több maximális folyam is van, azonban a folyamok értékének maximuma egyértelműen létezik.
Hálózatok
Maximális folyam és minimális vágás feladatpár
1. Maximáli folyam feladat:
Adott egy[N,A,k]egy hálózat, továbbá ki vannak jelölve az s,t ∈ N csúcsok, mint forrás és cél.
Határozzunk egy x maximális folyamot, azaz egy olyan x folyamot, amelyre
X
(s,j)∈A
xsj →max
illetve X
(j,t)∈A
xjt →max
,
azaz a forrásból kilépő éleken a folyam összege maximális. Ez az összeg egyenlő a célba befutó éleken a folyam összegével. Elképzelhető, hogy több maximális folyam is van, azonban a folyamok értékének maximuma egyértelműen létezik.
Hálózatok
Maximális folyam és minimális vágás feladatpár
1. Maximáli folyam feladat:
Adott egy[N,A,k]egy hálózat, továbbá ki vannak jelölve az s,t ∈ N csúcsok, mint forrás és cél.
Határozzunk egy x maximális folyamot, azaz egy olyan x folyamot, amelyre
X
(s,j)∈A
xsj →max
illetve X
(j,t)∈A
xjt →max
,
azaz a forrásból kilépő éleken a folyam összege maximális. Ez az összeg egyenlő a célba befutó éleken a folyam összegével. Elképzelhető, hogy több maximális folyam is van, azonban a folyamok értékének maximuma egyértelműen létezik.
Hálózatok
Maximális folyam és minimális vágás feladatpár
1. Maximáli folyam feladat:
Adott egy[N,A,k]egy hálózat, továbbá ki vannak jelölve az s,t ∈ N csúcsok, mint forrás és cél.
Határozzunk egy x maximális folyamot, azaz egy olyan x folyamot, amelyre
X
(s,j)∈A
xsj →max
illetve X
(j,t)∈A
xjt →max
,
azaz a forrásból kilépő éleken a folyam összege maximális. Ez az összeg egyenlő a célba befutó éleken a folyam összegével. Elképzelhető, hogy több maximális folyam is van, azonban a folyamok értékének maximuma egyértelműen létezik.
Hálózatok
Maximális folyam és minimális vágás feladatpár
1. Maximáli folyam feladat:
Adott egy[N,A,k]egy hálózat, továbbá ki vannak jelölve az s,t ∈ N csúcsok, mint forrás és cél.
Határozzunk egy x maximális folyamot, azaz egy olyan x folyamot, amelyre
X
(s,j)∈A
xsj →max
illetve X
(j,t)∈A
xjt →max
,
azaz a forrásból kilépő éleken a folyam összege maximális.
Ez az összeg egyenlő a célba befutó éleken a folyam összegével. Elképzelhető, hogy több maximális folyam is van, azonban a folyamok értékének maximuma egyértelműen létezik.
Hálózatok
Maximális folyam és minimális vágás feladatpár
1. Maximáli folyam feladat:
Adott egy[N,A,k]egy hálózat, továbbá ki vannak jelölve az s,t ∈ N csúcsok, mint forrás és cél.
Határozzunk egy x maximális folyamot, azaz egy olyan x folyamot, amelyre
X
(s,j)∈A
xsj →max
illetve X
(j,t)∈A
xjt →max
,
azaz a forrásból kilépő éleken a folyam összege maximális.
Ez az összeg egyenlő a célba befutó éleken a folyam összegével.
Elképzelhető, hogy több maximális folyam is van, azonban a folyamok értékének maximuma egyértelműen létezik.
Hálózatok
Maximális folyam és minimális vágás feladatpár
1. Maximáli folyam feladat:
Adott egy[N,A,k]egy hálózat, továbbá ki vannak jelölve az s,t ∈ N csúcsok, mint forrás és cél.
Határozzunk egy x maximális folyamot, azaz egy olyan x folyamot, amelyre
X
(s,j)∈A
xsj →max
illetve X
(j,t)∈A
xjt →max
,
azaz a forrásból kilépő éleken a folyam összege maximális.
Ez az összeg egyenlő a célba befutó éleken a folyam összegével.
Elképzelhető, hogy több maximális folyam is van, azonban a folyamok értékének maximuma egyértelműen létezik.
Hálózatok
Minimális vágásfeladat:
Határozzuk meg az s-et at-től elválasztó minimális(S,T) vágást, azaz azt a vágást, amelyre:
k(S,T) = X
(i,j)∈(S×T)∩A
kij→min.
Ak(S,T) azt jelenti, hogy a vágás éleinek kapacitásait összeadjuk, tehát azt az (S,T) vágást keressük, amelyre ez az összeg minimális.
Hálózatok
Minimális vágásfeladat:
Határozzuk meg az s-et at-től elválasztó minimális(S,T) vágást, azaz azt a vágást, amelyre:
k(S,T) = X
(i,j)∈(S×T)∩A
kij→min.
Ak(S,T) azt jelenti, hogy a vágás éleinek kapacitásait összeadjuk, tehát azt az (S,T) vágást keressük, amelyre ez az összeg minimális.
Hálózatok
Minimális vágásfeladat:
Határozzuk meg az s-et at-től elválasztó minimális(S,T) vágást, azaz azt a vágást, amelyre:
k(S,T) = X
(i,j)∈(S×T)∩A
kij→min.
Ak(S,T) azt jelenti, hogy a vágás éleinek kapacitásait összeadjuk, tehát azt az (S,T) vágást keressük, amelyre ez az összeg minimális.
Hálózatok
Minimális vágásfeladat:
Határozzuk meg az s-et at-től elválasztó minimális(S,T) vágást, azaz azt a vágást, amelyre:
k(S,T) = X
(i,j)∈(S×T)∩A
kij→min.
Ak(S,T) azt jelenti, hogy a vágás éleinek kapacitásait összeadjuk, tehát azt az (S,T) vágást keressük, amelyre ez az összeg minimális.
Hálózatok
A kapactáskorlátozás ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús
függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a kapacitáskorlátozást. Könnyű megadni a választ:
LegyenAa kapacitásokat tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élek kapacitásait tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül. LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a kapacitáskorlátozás teljesülése azzal a ténnyel ekvivalens, hogy azA−B mátrix nemnegatív értékű, tehát mátrixművelettel könnyen ellenőrizhető.
Hálózatok
A kapactáskorlátozás ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús
függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a kapacitáskorlátozást.
Könnyű megadni a választ:
LegyenAa kapacitásokat tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élek kapacitásait tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül. LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a kapacitáskorlátozás teljesülése azzal a ténnyel ekvivalens, hogy azA−B mátrix nemnegatív értékű, tehát mátrixművelettel könnyen ellenőrizhető.
Hálózatok
A kapactáskorlátozás ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús
függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a kapacitáskorlátozást.
Könnyű megadni a választ:
LegyenAa kapacitásokat tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élek kapacitásait tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül. LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a kapacitáskorlátozás teljesülése azzal a ténnyel ekvivalens, hogy azA−B mátrix nemnegatív értékű, tehát mátrixművelettel könnyen ellenőrizhető.
Hálózatok
A kapactáskorlátozás ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús
függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a kapacitáskorlátozást.
Könnyű megadni a választ:
LegyenAa kapacitásokat tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élek kapacitásait tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a kapacitáskorlátozás teljesülése azzal a ténnyel ekvivalens, hogy azA−B mátrix nemnegatív értékű, tehát mátrixművelettel könnyen ellenőrizhető.
Hálózatok
A kapactáskorlátozás ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús
függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a kapacitáskorlátozást.
Könnyű megadni a választ:
LegyenAa kapacitásokat tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élek kapacitásait tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a kapacitáskorlátozás teljesülése azzal a ténnyel ekvivalens, hogy azA−B mátrix nemnegatív értékű, tehát mátrixművelettel könnyen ellenőrizhető.
Hálózatok
A Kirchoff féle csomóponti törvény ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a Kirchoff féle csomóponti törvényt. Könnyű megadni a választ:
LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a Kirchoff féle csomóponti törvény teljesülése azzal a ténnyel ekvivalens, hogy hap se nem forrás, se nem cél, akkor a B mátrix p sorában álló számok összege egyenlő ap oszlopba tartozó számok összegével.
Hálózatok
A Kirchoff féle csomóponti törvény ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a Kirchoff féle csomóponti törvényt.
Könnyű megadni a választ:
LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a Kirchoff féle csomóponti törvény teljesülése azzal a ténnyel ekvivalens, hogy hap se nem forrás, se nem cél, akkor a B mátrix p sorában álló számok összege egyenlő ap oszlopba tartozó számok összegével.
Hálózatok
A Kirchoff féle csomóponti törvény ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a Kirchoff féle csomóponti törvényt.
Könnyű megadni a választ:
LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a Kirchoff féle csomóponti törvény teljesülése azzal a ténnyel ekvivalens, hogy hap se nem forrás, se nem cél, akkor a B mátrix p sorában álló számok összege egyenlő ap oszlopba tartozó számok összegével.
Hálózatok
A Kirchoff féle csomóponti törvény ellenőrzése
Arra a kérdésre keressük a választ, hogy egy folyamgyanús függvény, tehát egy olyan függvény, amely az adott folyam éleihez nemnegatív egészeket rendel, teljesíti-e a Kirchoff féle csomóponti törvényt.
Könnyű megadni a választ:
LegyenB a folyamot tartalmazó struktúramátrix, azaz egy olyan mátrix, amelyre az élekhez tartozó folyamértékeket tartalmazza, illetve azokba a cellákba, amelyek nem élekhez tartoznak, 0 kerül.
Ekkor a Kirchoff féle csomóponti törvény teljesülése azzal a ténnyel ekvivalens, hogy hap se nem forrás, se nem cél, akkor a B mátrix p sorában álló számok összege egyenlő ap oszlopba tartozó számok összegével.
Hálózatok
Egy adott folyam maximalitásának ellenőrzése
A folyam maximalitását csak úgy tudjuk ellenőrizni, hogy a maximális folyam - minimális vágás algoritmust elindítjuk az adott folyamból és ha a folyam értékét nem tudjuk növelni, akkor a folyam értéke maximális.
Hálózatok
Egy adott folyam maximalitásának ellenőrzése
A folyam maximalitását csak úgy tudjuk ellenőrizni, hogy a maximális folyam - minimális vágás algoritmust elindítjuk az adott folyamból és ha a folyam értékét nem tudjuk növelni, akkor a folyam értéke maximális.
Hálózatok
A fenti Maximális folyam, minimális vágás feladatpár egy feladat és annak a duálisa.
Mindkét feladat megoldható és a korábbi ismereteinkre való tekintettel talán nem meglepő, hogy a két feladat optimális
megoldása megegyezik. Ezt a tényt mondja ki az alábbi L. R. Ford Jr. és D. R. Fulkerson-tól származó Tétel.
Hálózatok
A fenti Maximális folyam, minimális vágás feladatpár egy feladat és annak a duálisa.
Mindkét feladat megoldható és a korábbi ismereteinkre való tekintettel talán nem meglepő, hogy a két feladat optimális
megoldása megegyezik. Ezt a tényt mondja ki az alábbi L. R. Ford Jr. és D. R. Fulkerson-tól származó Tétel.
Hálózatok
A Ford-Fulkerson tétel (1962)
Léteziks-ből t-be irányuló maximális folyam és s-ett-től elválasztó minimális vágás, továbbá a maximális folyam értéke egyenlő a minimális vágás átbocsátó-képességével, azaz
max{x(s,N)|x folyam}=
= min{k(S,T)|(S,T)s-ett-től elválasztó vágás}. Azx(s,N) csak egy egyszerű jelölés:
x(s,N) := X
(s,j)∈A
xsj,
tehát azs-ből kilépő éleken a folyam összegét jelöli.
Hálózatok
A Ford-Fulkerson tétel (1962)
Léteziks-ből t-be irányuló maximális folyam és s-ett-től elválasztó minimális vágás, továbbá a maximális folyam értéke egyenlő a minimális vágás átbocsátó-képességével, azaz
max{x(s,N)|x folyam}=
= min{k(S,T)|(S,T)s-ett-től elválasztó vágás}. Azx(s,N) csak egy egyszerű jelölés:
x(s,N) := X
(s,j)∈A
xsj,
tehát azs-ből kilépő éleken a folyam összegét jelöli.
Hálózatok
A Ford-Fulkerson tétel (1962)
Léteziks-ből t-be irányuló maximális folyam és s-ett-től elválasztó minimális vágás, továbbá a maximális folyam értéke egyenlő a minimális vágás átbocsátó-képességével, azaz
max{x(s,N)|x folyam}=
= min{k(S,T)|(S,T)s-ett-től elválasztó vágás}.
Azx(s,N) csak egy egyszerű jelölés: x(s,N) := X
(s,j)∈A
xsj,
tehát azs-ből kilépő éleken a folyam összegét jelöli.
Hálózatok
A Ford-Fulkerson tétel (1962)
Léteziks-ből t-be irányuló maximális folyam és s-ett-től elválasztó minimális vágás, továbbá a maximális folyam értéke egyenlő a minimális vágás átbocsátó-képességével, azaz
max{x(s,N)|x folyam}=
= min{k(S,T)|(S,T)s-ett-től elválasztó vágás}. Azx(s,N) csak egy egyszerű jelölés:
x(s,N) := X
(s,j)∈A
xsj,
tehát azs-ből kilépő éleken a folyam összegét jelöli.
Hálózatok
A Ford-Fulkerson tétel (1962)
Léteziks-ből t-be irányuló maximális folyam és s-ett-től elválasztó minimális vágás, továbbá a maximális folyam értéke egyenlő a minimális vágás átbocsátó-képességével, azaz
max{x(s,N)|x folyam}=
= min{k(S,T)|(S,T)s-ett-től elválasztó vágás}. Azx(s,N) csak egy egyszerű jelölés:
x(s,N) := X
(s,j)∈A
xsj,
tehát azs-ből kilépő éleken a folyam összegét jelöli.
Hálózatok
A Ford-Fulkerson tétel (1962)
Léteziks-ből t-be irányuló maximális folyam és s-ett-től elválasztó minimális vágás, továbbá a maximális folyam értéke egyenlő a minimális vágás átbocsátó-képességével, azaz
max{x(s,N)|x folyam}=
= min{k(S,T)|(S,T)s-ett-től elválasztó vágás}. Azx(s,N) csak egy egyszerű jelölés:
x(s,N) := X
(s,j)∈A
xsj,
tehát azs-ből kilépő éleken a folyam összegét jelöli.
Hálózatok
Jelölések
Az (i,j)∈ Aél szabad kapacitásafij =kij−xij. (i,j)∈ Aélttelítetlennek nevezzük, hafij >0.
Az (i,j)∈ Aél viszélének a(j,i)∈ N × N élt nevezzük. Minden élhez tartozik egy viszél, ami azonban nem feltétlenül tartozik hozzá az eredeti gráfhoz.
Az algoritmus működése során nem a folyamokat, hanem a szabad kapacitásokat figyeljük.
Hálózatok
Jelölések
Az (i,j)∈ Aél szabad kapacitásafij =kij −xij.
(i,j)∈ Aélttelítetlennek nevezzük, hafij >0.
Az (i,j)∈ Aél viszélének a(j,i)∈ N × N élt nevezzük. Minden élhez tartozik egy viszél, ami azonban nem feltétlenül tartozik hozzá az eredeti gráfhoz.
Az algoritmus működése során nem a folyamokat, hanem a szabad kapacitásokat figyeljük.
Hálózatok
Jelölések
Az (i,j)∈ Aél szabad kapacitásafij =kij −xij. (i,j)∈ Aélttelítetlennek nevezzük, hafij >0.
Az (i,j)∈ Aél viszélének a(j,i)∈ N × N élt nevezzük. Minden élhez tartozik egy viszél, ami azonban nem feltétlenül tartozik hozzá az eredeti gráfhoz.
Az algoritmus működése során nem a folyamokat, hanem a szabad kapacitásokat figyeljük.
Hálózatok
Jelölések
Az (i,j)∈ Aél szabad kapacitásafij =kij −xij. (i,j)∈ Aélttelítetlennek nevezzük, hafij >0.
Az (i,j)∈ Aél viszélének a(j,i)∈ N × N élt nevezzük.
Minden élhez tartozik egy viszél, ami azonban nem feltétlenül tartozik hozzá az eredeti gráfhoz.
Az algoritmus működése során nem a folyamokat, hanem a szabad kapacitásokat figyeljük.
Hálózatok
Jelölések
Az (i,j)∈ Aél szabad kapacitásafij =kij −xij. (i,j)∈ Aélttelítetlennek nevezzük, hafij >0.
Az (i,j)∈ Aél viszélének a(j,i)∈ N × N élt nevezzük.
Minden élhez tartozik egy viszél, ami azonban nem feltétlenül tartozik hozzá az eredeti gráfhoz.
Az algoritmus működése során nem a folyamokat, hanem a szabad kapacitásokat figyeljük.
Hálózatok
Jelölések
Az (i,j)∈ Aél szabad kapacitásafij =kij −xij. (i,j)∈ Aélttelítetlennek nevezzük, hafij >0.
Az (i,j)∈ Aél viszélének a(j,i)∈ N × N élt nevezzük.
Minden élhez tartozik egy viszél, ami azonban nem feltétlenül tartozik hozzá az eredeti gráfhoz.
Az algoritmus működése során nem a folyamokat, hanem a szabad kapacitásokat figyeljük.
Hálózatok
A
Algoritmus a folyam feladat megoldására
Hálózatok
Indulás
1 Indulás zérusfolyamból:
(xij =0 minden(i,j)∈ A)esetén. Ekkor fij =kij minden ((i,j)∈ A) esetén.
2 Indulás adott folyamból:
az éleken csökkentjük, a viszéleken növeljük a kapacitást a folyam értékével. (A viszélek kapacitását 0-nak tekintjük.) Így kapjuk meg az aktuális szabad kapacitásokat.
Adott egy folyam, azt szeretnénk ellenőrizni, hogy ez a folyam maximális-e?
Bővül a hálózat új csúcsok (városok), ennek megfelelően új élekkel bővül a hálózat. Az is lehetséges, hogy adott útszakaszoknak nő a kapacitása. Ekkor a korábbi maximális folyam induló folyamnak tekinthető.
Hálózatok
Indulás
1 Indulás zérusfolyamból:
(xij =0 minden(i,j)∈ A)esetén. Ekkor fij =kij minden ((i,j)∈ A) esetén.
2 Indulás adott folyamból:
az éleken csökkentjük, a viszéleken növeljük a kapacitást a folyam értékével. (A viszélek kapacitását 0-nak tekintjük.) Így kapjuk meg az aktuális szabad kapacitásokat.
Adott egy folyam, azt szeretnénk ellenőrizni, hogy ez a folyam maximális-e?
Bővül a hálózat új csúcsok (városok), ennek megfelelően új élekkel bővül a hálózat. Az is lehetséges, hogy adott útszakaszoknak nő a kapacitása. Ekkor a korábbi maximális folyam induló folyamnak tekinthető.
Hálózatok
Indulás
1 Indulás zérusfolyamból:
(xij =0 minden(i,j)∈ A)esetén. Ekkor fij =kij minden ((i,j)∈ A) esetén.
2 Indulás adott folyamból:
az éleken csökkentjük, a viszéleken növeljük a kapacitást a folyam értékével. (A viszélek kapacitását 0-nak tekintjük.) Így kapjuk meg az aktuális szabad kapacitásokat.
Adott egy folyam, azt szeretnénk ellenőrizni, hogy ez a folyam maximális-e?
Bővül a hálózat új csúcsok (városok), ennek megfelelően új élekkel bővül a hálózat. Az is lehetséges, hogy adott útszakaszoknak nő a kapacitása. Ekkor a korábbi maximális folyam induló folyamnak tekinthető.
Hálózatok
Indulás
1 Indulás zérusfolyamból:
(xij =0 minden(i,j)∈ A)esetén. Ekkor fij =kij minden ((i,j)∈ A) esetén.
2 Indulás adott folyamból:
az éleken csökkentjük, a viszéleken növeljük a kapacitást a folyam értékével. (A viszélek kapacitását 0-nak tekintjük.) Így kapjuk meg az aktuális szabad kapacitásokat.
Adott egy folyam, azt szeretnénk ellenőrizni, hogy ez a folyam maximális-e?
Bővül a hálózat új csúcsok (városok), ennek megfelelően új élekkel bővül a hálózat. Az is lehetséges, hogy adott útszakaszoknak nő a kapacitása. Ekkor a korábbi maximális folyam induló folyamnak tekinthető.
Hálózatok
Indulás
1 Indulás zérusfolyamból:
(xij =0 minden(i,j)∈ A)esetén. Ekkor fij =kij minden ((i,j)∈ A) esetén.
2 Indulás adott folyamból:
az éleken csökkentjük, a viszéleken növeljük a kapacitást a folyam értékével. (A viszélek kapacitását 0-nak tekintjük.) Így kapjuk meg az aktuális szabad kapacitásokat.
Adott egy folyam, azt szeretnénk ellenőrizni, hogy ez a folyam maximális-e?
Bővül a hálózat új csúcsok (városok), ennek megfelelően új élekkel bővül a hálózat. Az is lehetséges, hogy adott útszakaszoknak nő a kapacitása. Ekkor a korábbi maximális folyam induló folyamnak tekinthető.
Hálózatok
Indulás
1 Indulás zérusfolyamból:
(xij =0 minden(i,j)∈ A)esetén. Ekkor fij =kij minden ((i,j)∈ A) esetén.
2 Indulás adott folyamból:
az éleken csökkentjük, a viszéleken növeljük a kapacitást a folyam értékével. (A viszélek kapacitását 0-nak tekintjük.) Így kapjuk meg az aktuális szabad kapacitásokat.
Adott egy folyam, azt szeretnénk ellenőrizni, hogy ez a folyam maximális-e?
Bővül a hálózat új csúcsok (városok), ennek megfelelően új élekkel bővül a hálózat. Az is lehetséges, hogy adott útszakaszoknak nő a kapacitása. Ekkor a korábbi maximális folyam induló folyamnak tekinthető.
Hálózatok
Indulás
1 Indulás zérusfolyamból:
(xij =0 minden(i,j)∈ A)esetén. Ekkor fij =kij minden ((i,j)∈ A) esetén.
2 Indulás adott folyamból:
az éleken csökkentjük, a viszéleken növeljük a kapacitást a folyam értékével. (A viszélek kapacitását 0-nak tekintjük.) Így kapjuk meg az aktuális szabad kapacitásokat.
Adott egy folyam, azt szeretnénk ellenőrizni, hogy ez a folyam maximális-e?
Bővül a hálózat új csúcsok (városok), ennek megfelelően új élekkel bővül a hálózat. Az is lehetséges, hogy adott útszakaszoknak nő a kapacitása. Ekkor a korábbi maximális folyam induló folyamnak tekinthető.
Hálózatok
Továbbhaladás
Útkereséss-bőlt-be szabad kapacitású éleken.
Az út éleit-el, a viszéleket-el jelöljük, δ := min{}. ←−−δ
←− +δ )
Az éleken csökkentjük, a viszéleken növeljük a szabad kapacitásokat aδ értékével.
Könnyű látni, hogy a szabad kapacitások csökkentése a folyam növelésével egyenértékű.
Hálózatok
Továbbhaladás
Útkereséss-bőlt-be szabad kapacitású éleken.
Az út éleit-el, a viszéleket-el jelöljük, δ := min{}. ←−−δ
←− +δ )
Az éleken csökkentjük, a viszéleken növeljük a szabad kapacitásokat aδ értékével.
Könnyű látni, hogy a szabad kapacitások csökkentése a folyam növelésével egyenértékű.
Hálózatok
Továbbhaladás
Útkereséss-bőlt-be szabad kapacitású éleken.
Az út éleit-el, a viszéleket-el jelöljük, δ := min{}.
←−−δ ←− +δ
)
Az éleken csökkentjük, a viszéleken növeljük a szabad kapacitásokat aδ értékével.
Könnyű látni, hogy a szabad kapacitások csökkentése a folyam növelésével egyenértékű.
Hálózatok
Továbbhaladás
Útkereséss-bőlt-be szabad kapacitású éleken.
Az út éleit-el, a viszéleket-el jelöljük, δ := min{}.
←−−δ ←− +δ
)
Az éleken csökkentjük, a viszéleken növeljük a szabad kapacitásokat aδ értékével.
Könnyű látni, hogy a szabad kapacitások csökkentése a folyam növelésével egyenértékű.
Hálózatok
Továbbhaladás
Útkereséss-bőlt-be szabad kapacitású éleken.
Az út éleit-el, a viszéleket-el jelöljük, δ := min{}.
←−−δ ←− +δ
)
Az éleken csökkentjük, a viszéleken növeljük a szabad kapacitásokat aδ értékével.
Könnyű látni, hogy a szabad kapacitások csökkentése a folyam növelésével egyenértékű.
Hálózatok
Továbbhaladás
Útkereséss-bőlt-be szabad kapacitású éleken.
Az út éleit-el, a viszéleket-el jelöljük, δ := min{}.
←−−δ ←− +δ
)
Az éleken csökkentjük, a viszéleken növeljük a szabad kapacitásokat aδ értékével.
Könnyű látni, hogy a szabad kapacitások csökkentése a folyam növelésével egyenértékű.
Hálózatok
Leállás
Nem vezet úts-től t-be. Tehát a folyam tovább már nem növelhető, elértük a maximumot.
Hálózatok
Leállás
Nem vezet úts-től t-be. Tehát a folyam tovább már nem növelhető, elértük a maximumot.
Hálózatok
Kiértékelés
1 A maximális folyamfeladat megoldása:
a maximális folyamot a legelső és a legutolsó táblázat különbsége adja. (kij −(kij −xij) =xij.) A folyam értékét a kapott táblázatban úgy határozzuk meg, hogy összeadjuk az s sorába, vagy a t oszlopába tartozó számokat.
2 A minimális vágásfeladat megoldása:
az utolsó, (azaz sikertelen) útkeresési kísérletben megcímkézett pontok adják az S halmazt. AT halmazt azok a pontok alkotják, amelyek nem tartoznak hozzá az S halmazhoz. A minimális vágás éleit lefedéssel határozzuk meg. Az eredeti táblázatban (amely a kapacitásokat tartalmazza) lefedjük az S-hez tartozó oszlopokat illetve aT-hez tartozó sorokat. A fedetlen cellák a vágás élei, a fedetlen cellákban található számok összege a vágás értéke.
Hálózatok
Kiértékelés
1 A maximális folyamfeladat megoldása:
a maximális folyamot a legelső és a legutolsó táblázat különbsége adja. (kij −(kij −xij) =xij.) A folyam értékét a kapott táblázatban úgy határozzuk meg, hogy összeadjuk az s sorába, vagy a t oszlopába tartozó számokat.
2 A minimális vágásfeladat megoldása:
az utolsó, (azaz sikertelen) útkeresési kísérletben megcímkézett pontok adják az S halmazt. AT halmazt azok a pontok alkotják, amelyek nem tartoznak hozzá az S halmazhoz. A minimális vágás éleit lefedéssel határozzuk meg. Az eredeti táblázatban (amely a kapacitásokat tartalmazza) lefedjük az S-hez tartozó oszlopokat illetve aT-hez tartozó sorokat. A fedetlen cellák a vágás élei, a fedetlen cellákban található számok összege a vágás értéke.
Hálózatok
Kiértékelés
1 A maximális folyamfeladat megoldása:
a maximális folyamot a legelső és a legutolsó táblázat különbsége adja. (kij −(kij −xij) =xij.) A folyam értékét a kapott táblázatban úgy határozzuk meg, hogy összeadjuk az s sorába, vagy a t oszlopába tartozó számokat.
2 A minimális vágásfeladat megoldása:
az utolsó, (azaz sikertelen) útkeresési kísérletben megcímkézett pontok adják az S halmazt. AT halmazt azok a pontok alkotják, amelyek nem tartoznak hozzá az S halmazhoz. A minimális vágás éleit lefedéssel határozzuk meg. Az eredeti táblázatban (amely a kapacitásokat tartalmazza) lefedjük az S-hez tartozó oszlopokat illetve aT-hez tartozó sorokat. A fedetlen cellák a vágás élei, a fedetlen cellákban található számok összege a vágás értéke.
Hálózatok
Kiértékelés
1 A maximális folyamfeladat megoldása:
a maximális folyamot a legelső és a legutolsó táblázat különbsége adja. (kij −(kij −xij) =xij.) A folyam értékét a kapott táblázatban úgy határozzuk meg, hogy összeadjuk az s sorába, vagy a t oszlopába tartozó számokat.
2 A minimális vágásfeladat megoldása:
az utolsó, (azaz sikertelen) útkeresési kísérletben megcímkézett pontok adják az S halmazt. AT halmazt azok a pontok alkotják, amelyek nem tartoznak hozzá az S halmazhoz. A minimális vágás éleit lefedéssel határozzuk meg. Az eredeti táblázatban (amely a kapacitásokat tartalmazza) lefedjük az S-hez tartozó oszlopokat illetve aT-hez tartozó sorokat. A fedetlen cellák a vágás élei, a fedetlen cellákban található számok összege a vágás értéke.
Hálózatok
Kiértékelés
1 A maximális folyamfeladat megoldása:
a maximális folyamot a legelső és a legutolsó táblázat különbsége adja. (kij −(kij −xij) =xij.) A folyam értékét a kapott táblázatban úgy határozzuk meg, hogy összeadjuk az s sorába, vagy a t oszlopába tartozó számokat.
2 A minimális vágásfeladat megoldása:
az utolsó, (azaz sikertelen) útkeresési kísérletben megcímkézett pontok adják az S halmazt. AT halmazt azok a pontok alkotják, amelyek nem tartoznak hozzá az S halmazhoz.
A minimális vágás éleit lefedéssel határozzuk meg. Az eredeti táblázatban (amely a kapacitásokat tartalmazza) lefedjük az S-hez tartozó oszlopokat illetve aT-hez tartozó sorokat. A fedetlen cellák a vágás élei, a fedetlen cellákban található számok összege a vágás értéke.
Hálózatok
Kiértékelés
1 A maximális folyamfeladat megoldása:
a maximális folyamot a legelső és a legutolsó táblázat különbsége adja. (kij −(kij −xij) =xij.) A folyam értékét a kapott táblázatban úgy határozzuk meg, hogy összeadjuk az s sorába, vagy a t oszlopába tartozó számokat.
2 A minimális vágásfeladat megoldása:
az utolsó, (azaz sikertelen) útkeresési kísérletben megcímkézett pontok adják az S halmazt. AT halmazt azok a pontok alkotják, amelyek nem tartoznak hozzá az S halmazhoz.
A minimális vágás éleit lefedéssel határozzuk meg. Az eredeti táblázatban (amely a kapacitásokat tartalmazza) lefedjük az S-hez tartozó oszlopokat illetve aT-hez tartozó sorokat. A fedetlen cellák a vágás élei, a fedetlen cellákban található számok összege a vágás értéke.
Hálózatok
1. Feladat
Tekintsük az alábbi gráfot:
Keressük megs-ből t-be a maximális folyamot, illetve határozzuk meg azs-ett-től elválasztó minimális vágást.
Hálózatok
1. Feladat
Tekintsük az alábbi gráfot:
Keressük megs-ből t-be a maximális folyamot, illetve határozzuk meg azs-ett-től elválasztó minimális vágást.
Hálózatok
1. Feladat
Tekintsük az alábbi gráfot:
Keressük megs-ből t-be a maximális folyamot, illetve határozzuk meg azs-ett-től elválasztó minimális vágást.
Hálózatok
1. Feladat
Tekintsük az alábbi gráfot:
Keressük megs-ből t-be a maximális folyamot, illetve határozzuk meg azs-ett-től elválasztó minimális vágást.
Hálózatok
Megoldás
Először a maximális folyamfeladatot oldjuk meg. Útkeresések sorozatát végezzük a tanult módon.
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
δ= min{3,4}=3
t=4-böl vissza tudunk menni 2-be, 2-ből 1-be, 1 pedig a cél. Így s =4←−2←−1=s. Tehát az élek: (1,2),(2,4), ezeket a cellákat kockázzuk. A viszélek(2,1),(4,2) ezeket karikázzuk.
Hálózatok
Megoldás
Először a maximális folyamfeladatot oldjuk meg. Útkeresések sorozatát végezzük a tanult módon.
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
δ= min{3,4}=3
t=4-böl vissza tudunk menni 2-be, 2-ből 1-be, 1 pedig a cél. Így s =4←−2←−1=s. Tehát az élek: (1,2),(2,4), ezeket a cellákat kockázzuk. A viszélek(2,1),(4,2) ezeket karikázzuk.
Hálózatok
Megoldás
Először a maximális folyamfeladatot oldjuk meg. Útkeresések sorozatát végezzük a tanult módon.
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
δ= min{3,4}=3
t=4-böl vissza tudunk menni 2-be, 2-ből 1-be, 1 pedig a cél. Így s =4←−2←−1=s. Tehát az élek: (1,2),(2,4), ezeket a cellákat kockázzuk. A viszélek(2,1),(4,2) ezeket karikázzuk.
Hálózatok
Megoldás
Először a maximális folyamfeladatot oldjuk meg. Útkeresések sorozatát végezzük a tanult módon.
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
δ= min{3,4}=3
t=4-böl vissza tudunk menni 2-be, 2-ből 1-be, 1 pedig a cél. Így s =4←−2←−1=s. Tehát az élek: (1,2),(2,4), ezeket a cellákat kockázzuk. A viszélek(2,1),(4,2) ezeket karikázzuk.
Hálózatok
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
Az út élein (bekockázott cellák) a szabad kapacitások minimuma δ = min{3,4}=3.
A bekockázott számokat 3-mal csökkentjük, a bekarikázottakat 3-mal növeljük.
Így kapjuk az új táblázatot, amin folytatjuk az útkeresést.
Hálózatok
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
Az út élein (bekockázott cellák) a szabad kapacitások minimuma
δ = min{3,4}=3.
A bekockázott számokat 3-mal csökkentjük, a bekarikázottakat 3-mal növeljük.
Így kapjuk az új táblázatot, amin folytatjuk az útkeresést.
Hálózatok
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
Az út élein (bekockázott cellák) a szabad kapacitások minimuma δ = min{3,4}=3.
A bekockázott számokat 3-mal csökkentjük, a bekarikázottakat 3-mal növeljük.
Így kapjuk az új táblázatot, amin folytatjuk az útkeresést.
Hálózatok
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
Az út élein (bekockázott cellák) a szabad kapacitások minimuma δ = min{3,4}=3.
A bekockázott számokat 3-mal csökkentjük, a bekarikázottakat 3-mal növeljük.
Így kapjuk az új táblázatot, amin folytatjuk az útkeresést.
Hálózatok
+s +1 −1 −2
1 2 3 4↑
1 2 3 4
\ 3 6
\ 1 4
\ 4
\
Az út élein (bekockázott cellák) a szabad kapacitások minimuma δ = min{3,4}=3.
A bekockázott számokat 3-mal csökkentjük, a bekarikázottakat 3-mal növeljük.
Így kapjuk az új táblázatot, amin folytatjuk az útkeresést.
Hálózatok
+s +1 −3
1 2 3 4↑
1 2 3 4
\ 0 6
3 \ 1 1
\ 4
3 \
t=4←−3←−1=s, δ = min{4,6}=4.
Hálózatok
+s +1 −3
1 2 3 4↑
1 2 3 4
\ 0 6
3 \ 1 1
\ 4
3 \
t=4←−3←−1=s, δ = min{4,6}=4.
Hálózatok
+s +1
1 2 3 4↑
1 2 3 4
\ 0 2
3 \ 1 1
4 \ 0
3 4 \
Mivel ezúttal nem vezet úts-ből t-be, így leáll az algoritmus. Az S halmazt a címkézett sorok adják. AzT halmazt a többi pont alkotja. S ={1,3},T ={2,4}.
Hálózatok
+s +1
1 2 3 4↑
1 2 3 4
\ 0 2
3 \ 1 1
4 \ 0
3 4 \
Mivel ezúttal nem vezet úts-ből t-be, így leáll az algoritmus. AzS halmazt a címkézett sorok adják. AzT halmazt a többi pont alkotja. S ={1,3},T ={2,4}.
Hálózatok
A maximális folyamfeladat megoldása:
A legelső táblázatból kivonjuk a legutolsó táblázatot. Az így kapott táblázat tartalmazza a a maximális folyamot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
A maximális folyam értéke: a kapott táblázatban as =1 sorában álló számok összege, ami egyenlő at=4 oszlopában álló számok összegével.
s =1, az 1. sorban álló számok összege: 3+4=7. t=4, a 4. oszlopban álló számok összege: 3+4=7.
Tehát látható, hogy Miskolcról 7 almaszállító teherautó indítható és ezek meg is fognak érkezni estig Debrecenbe.
Hálózatok
A maximális folyamfeladat megoldása:
A legelső táblázatból kivonjuk a legutolsó táblázatot. Az így kapott táblázat tartalmazza a a maximális folyamot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
A maximális folyam értéke: a kapott táblázatban as =1 sorában álló számok összege, ami egyenlő at=4 oszlopában álló számok összegével.
s =1, az 1. sorban álló számok összege: 3+4=7. t=4, a 4. oszlopban álló számok összege: 3+4=7.
Tehát látható, hogy Miskolcról 7 almaszállító teherautó indítható és ezek meg is fognak érkezni estig Debrecenbe.
Hálózatok
A maximális folyamfeladat megoldása:
A legelső táblázatból kivonjuk a legutolsó táblázatot. Az így kapott táblázat tartalmazza a a maximális folyamot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
A maximális folyam értéke: a kapott táblázatban as =1 sorában álló számok összege, ami egyenlő at=4 oszlopában álló számok összegével.
s =1, az 1. sorban álló számok összege: 3+4=7. t=4, a 4. oszlopban álló számok összege: 3+4=7.
Tehát látható, hogy Miskolcról 7 almaszállító teherautó indítható és ezek meg is fognak érkezni estig Debrecenbe.
Hálózatok
A maximális folyamfeladat megoldása:
A legelső táblázatból kivonjuk a legutolsó táblázatot. Az így kapott táblázat tartalmazza a a maximális folyamot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
A maximális folyam értéke: a kapott táblázatban as =1 sorában álló számok összege, ami egyenlő at=4 oszlopában álló számok összegével.
s =1, az 1. sorban álló számok összege: 3+4=7. t=4, a 4. oszlopban álló számok összege: 3+4=7.
Tehát látható, hogy Miskolcról 7 almaszállító teherautó indítható és ezek meg is fognak érkezni estig Debrecenbe.
Hálózatok
A maximális folyamfeladat megoldása:
A legelső táblázatból kivonjuk a legutolsó táblázatot. Az így kapott táblázat tartalmazza a a maximális folyamot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
A maximális folyam értéke: a kapott táblázatban as =1 sorában álló számok összege, ami egyenlő at=4 oszlopában álló számok összegével.
s =1, az 1. sorban álló számok összege: 3+4=7.
t=4, a 4. oszlopban álló számok összege: 3+4=7.
Tehát látható, hogy Miskolcról 7 almaszállító teherautó indítható és ezek meg is fognak érkezni estig Debrecenbe.
Hálózatok
A maximális folyamfeladat megoldása:
A legelső táblázatból kivonjuk a legutolsó táblázatot. Az így kapott táblázat tartalmazza a a maximális folyamot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
A maximális folyam értéke: a kapott táblázatban as =1 sorában álló számok összege, ami egyenlő at=4 oszlopában álló számok összegével.
s =1, az 1. sorban álló számok összege: 3+4=7.
t=4, a 4. oszlopban álló számok összege: 3+4=7.
Tehát látható, hogy Miskolcról 7 almaszállító teherautó indítható és ezek meg is fognak érkezni estig Debrecenbe.
Hálózatok
A maximális folyamfeladat megoldása:
A legelső táblázatból kivonjuk a legutolsó táblázatot. Az így kapott táblázat tartalmazza a a maximális folyamot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
A maximális folyam értéke: a kapott táblázatban as =1 sorában álló számok összege, ami egyenlő at=4 oszlopában álló számok összegével.
s =1, az 1. sorban álló számok összege: 3+4=7.
t=4, a 4. oszlopban álló számok összege: 3+4=7.
Tehát látható, hogy Miskolcról 7 almaszállító teherautó indítható és ezek meg is fognak érkezni estig Debrecenbe.
Hálózatok
Idézzük fel a maximális folyamot tartalmazó táblázatot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
Ennek a táblázatnak érdekes tulajdonsága, hogy minden olyan sorban illetve oszlopban, amelyek sem forráshoz, sem célhoz nem tartoznak so illetve oszlopösszeg nulla. Ez egy újabb ellenőrzési lehetőséget jelent a számunkra.
Természetesen a folyamértékeket a nemnegatív számok jelölik.
Hálózatok
Idézzük fel a maximális folyamot tartalmazó táblázatot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
Ennek a táblázatnak érdekes tulajdonsága, hogy minden olyan sorban illetve oszlopban, amelyek sem forráshoz, sem célhoz nem tartoznak so illetve oszlopösszeg nulla. Ez egy újabb ellenőrzési lehetőséget jelent a számunkra.
Természetesen a folyamértékeket a nemnegatív számok jelölik.
Hálózatok
Idézzük fel a maximális folyamot tartalmazó táblázatot.
1 2 3 4
1 2 3 4
\ 3 4
−3 \ 0 3
−4 \ 4
−3 −4 \
Ennek a táblázatnak érdekes tulajdonsága, hogy minden olyan sorban illetve oszlopban, amelyek sem forráshoz, sem célhoz nem tartoznak so illetve oszlopösszeg nulla. Ez egy újabb ellenőrzési lehetőséget jelent a számunkra.
Természetesen a folyamértékeket a nemnegatív számok jelölik.
Hálózatok
A minimális vágás feladat megoldása:
Az eredeti, tehát a kapacitásokat tartalmazó táblázatban lefedjük azS-hez tartozó oszlopokat és a T-hez tartozó sorokat. A vágás éleit a fedetlen cellák, a vágás értékét a fedetlen cellákban található számok összege adja.
Hálózatok
A minimális vágás feladat megoldása:
Az eredeti, tehát a kapacitásokat tartalmazó táblázatban lefedjük azS-hez tartozó oszlopokat és a T-hez tartozó sorokat. A vágás éleit a fedetlen cellák, a vágás értékét a fedetlen cellákban található számok összege adja.
Hálózatok
A minimális vágás feladat megoldása:
Az eredeti, tehát a kapacitásokat tartalmazó táblázatban lefedjük azS-hez tartozó oszlopokat és a T-hez tartozó sorokat. A vágás éleit a fedetlen cellák, a vágás értékét a fedetlen cellákban található számok összege adja.
Hálózatok
A vágás élei: {(1,2),(3,4)}
A minimális vágás értéke: k(S,T) =k1,2+k3,4 =3+4=7. Azt is könnyű látni, hogy a maximális folyam értéke megegyezik a minimális vágás értékével.
Hálózatok
A vágás élei: {(1,2),(3,4)}
A minimális vágás értéke: k(S,T) =k1,2+k3,4 =3+4=7. Azt is könnyű látni, hogy a maximális folyam értéke megegyezik a minimális vágás értékével.
Hálózatok
A vágás élei: {(1,2),(3,4)}
A minimális vágás értéke: k(S,T) =k1,2+k3,4 =3+4=7.
Azt is könnyű látni, hogy a maximális folyam értéke megegyezik a minimális vágás értékével.
Hálózatok
A vágás élei: {(1,2),(3,4)}
A minimális vágás értéke: k(S,T) =k1,2+k3,4 =3+4=7.
Azt is könnyű látni, hogy a maximális folyam értéke megegyezik a minimális vágás értékével.
Hálózatok
2. Feladat
Oldjuk meg az előző feladatot induló folyamból. Az induló
folyamot, illetve a kapacitásokat a következő táblázat tartalmazza:
HONNAN 1 1 2 2 3
HOVÁ 2 3 3 4 4
KAPACITÁS 3 6 1 4 4
FOLYAM 3 3 1 2 4
Hálózatok
2. Feladat
Oldjuk meg az előző feladatot induló folyamból. Az induló
folyamot, illetve a kapacitásokat a következő táblázat tartalmazza:
HONNAN 1 1 2 2 3
HOVÁ 2 3 3 4 4
KAPACITÁS 3 6 1 4 4
FOLYAM 3 3 1 2 4