Max Flow Ford Fulkerson | Network Flow | Graph Theory

  Рет қаралды 469,885

WilliamFiset

WilliamFiset

Күн бұрын

Пікірлер: 111
@sixtenmuller8823
@sixtenmuller8823 10 ай бұрын
Watching this in 2023 for my exam in Algorithm and Datastructures, love the explanation
@Iam_number_one
@Iam_number_one 5 ай бұрын
where do you study bro ?
@UndercoverDog
@UndercoverDog 3 ай бұрын
​In so sure hes also German haha ​@@Iam_number_one
@sovathanaheng6673
@sovathanaheng6673 5 жыл бұрын
You spent less time than my Prof to explain this and you nailed it. Awesome!
@yoavmor9002
@yoavmor9002 Жыл бұрын
My prof is so old and senile I swear to God he was out there helping Alan Turing crack the enigma back in the day
@kaiyueguo1624
@kaiyueguo1624 2 ай бұрын
@@yoavmor9002 lol
@gaurishgangwar
@gaurishgangwar 25 күн бұрын
Sometimes it is also because at this point you already have some idea of algorithm and understand some of its key concepts, so when William teaches you this you have an easier time grasping it.
@siuhangchen8986
@siuhangchen8986 2 жыл бұрын
I would thank my professor explaining the algorithm so terriblely otherwise I won't find this awesome channel!
@harshitshukla36
@harshitshukla36 4 жыл бұрын
My thoughts when I first saw this algorithm 4:17 - 4:23
@sagebaram5951
@sagebaram5951 3 жыл бұрын
Literally said it out-loud in zoom class last week ... accidentally.
@weaponkid1121
@weaponkid1121 3 жыл бұрын
@Archer Grayson lmao u really made two accounts for this
@famefurqan5937
@famefurqan5937 4 жыл бұрын
I wonder why this video is not highlighted in the search results. This is a wonderful video with effective teaching. You have done a good job William. Please Keep it going for lot more people to benefit!
@ZantierTasa
@ZantierTasa 2 жыл бұрын
Good video, but there's a few things that could be improved. Residual edge is incorrectly defined at 6:00. At 4:20 he says you're probably wondering what a residual graph is, and then he proceeds to use the word residual before defining it! In Ford-Fulkerson, we assume each edge has an edge in the opposite direction. Where the capacity is only given in 1 direction, set the other direction's capacity to 0. Assign a flow of 0 to each edge, and then as the algorithm proceeds, the flow on each edge can be changed. But when you change the flow of an edge to x, you MUST assign -x to the flow in the opposite direction. This is NOT called a "residual". The residual exists in both directions. The residual (which means "quantity remaining") of an edge is what at 7:29 he calls "remaining capacity". It is simply the capacity of the edge minus the current flow. i.e. If the residual is > 0, there is still room for more flow. The residual graph is just the whole set of residual edges. The word saturate in general can mean "fill until no more can be held". In this case, a saturated edge has residual == 0.
@kaierliang
@kaierliang Ай бұрын
thank you!
@Uthalerebaba-nr4qi
@Uthalerebaba-nr4qi 22 күн бұрын
Watching this in 2024 for my exam in Algorithms, love the explanation
@hidayatkhan412
@hidayatkhan412 5 жыл бұрын
This is the best algorithm channel on youtube, thank you for this video.
@salmanfariss
@salmanfariss 3 жыл бұрын
Amazing explanation and I love the animation as well! I think it is worth pointing out that the key observation that the sum of the bottlenecks (found in each augmenting path) equals the max flow is only true because we assumed the initial arc flow is 0 for each arc. If we do not assume this, then you need to add the initial value of the flow (of the graph) to the sum of bottlenecks as well.
@makii1715
@makii1715 5 жыл бұрын
Best explanation!! I watched some videos but this one was really in detail, giving examples and again repeating what a risidual network acually is, how capacities work and the principle of augmenting paths. Thanks a bunch my assignment was even fun when I understood it thanks to you~
@ericandrade3510
@ericandrade3510 5 жыл бұрын
Love your network flow playlist, getting ready to watch it all again for the 2nd time. Great videos :D
@v0nnyboy
@v0nnyboy 6 жыл бұрын
Amazing as always !! The impact these videos will have over time will be phenomenal ... Let my comment bear testimony to that prediction ...
@WilliamFiset-videos
@WilliamFiset-videos 6 жыл бұрын
Thank you!
@navdeepsandhu7021
@navdeepsandhu7021 6 жыл бұрын
Agreed
@elisabethwaldron3192
@elisabethwaldron3192 10 ай бұрын
Only video that explains the concepts clearly without confusing the mess out of you🤣
@yuhao8430
@yuhao8430 5 жыл бұрын
This is so awesome!! Thank you! How come people dislike it?? 18 university prof?
@DzmitryKashlach
@DzmitryKashlach Жыл бұрын
Thanks William, your videos have already helped to get Tarjan's algorithm and this video is super clear, as well! ;-)
@beibeixiong5660
@beibeixiong5660 5 жыл бұрын
Your explanation is so clear! Also, I love the illustrations. Keep up the good work!
@yaelyacobovich397
@yaelyacobovich397 5 ай бұрын
Best series on youtube yet
@--..__
@--..__ 3 жыл бұрын
this is so clear. my professors explanation was over an hour & made no sense. and you didn't oversimplify either! cheers
@sumowll8903
@sumowll8903 Жыл бұрын
Really well done! Best video for Max flow i have seen so far!
@adarshkishore6666
@adarshkishore6666 2 жыл бұрын
Great work on this! One of the clearest explanations I have seen
@adarshkishore6666
@adarshkishore6666 2 жыл бұрын
Can you make one video on Push-Relabel algorithm also?
@tritruong9352
@tritruong9352 Жыл бұрын
Very nice explanation Very clear I love this so much
@rorywilliams7375
@rorywilliams7375 Жыл бұрын
i have an exam in an hour , i just love u
@gergeerew6811
@gergeerew6811 4 жыл бұрын
Maybe when people learn theses concepts by themselves rather than being forced by the college it will be easier for them to understand. Anyway this video is awesome. Brief and clear. Thank you so much.
@mukul3159
@mukul3159 Жыл бұрын
But what is a residual graph? You went straight to augmenting path.
@robin6091
@robin6091 4 жыл бұрын
wached 3 videos before that didn't help me, I'm glad you did
@jordanf3273
@jordanf3273 6 жыл бұрын
Appreciate the videos! I'm in an operations research course and it's hard finding clips on some of these algorithms!
@kells9k
@kells9k Жыл бұрын
If Timotheus' pole has a network flow capacity of 8 units spunk along its edge, delta net, how much bottleneck maximum flow can Timotheus' hole take before it fissures?
@tttthomas
@tttthomas 5 жыл бұрын
very good and clear video! I can now understand what is going on in the reverse operation!
@yungbando01
@yungbando01 Жыл бұрын
Thanks William, that was the best video i have seen for Residual Graphs and Augmenting paths, and trust me i saw many. You managed to make me undestand what my professor's couldn't in 100 silides.
@mere_illusion
@mere_illusion 4 жыл бұрын
someone give this man a GOLD......wait this isn't reddit
@xbz24
@xbz24 Жыл бұрын
love your stuff, now I need to rewatch it to sink it xd
@educationcurve8981
@educationcurve8981 2 жыл бұрын
teacher thanks. Muchas gracias con lo poco que entiendo ingles me ayudaste gracias profe.
@hymnish_you
@hymnish_you 2 жыл бұрын
Great Explanation
@longflame4414
@longflame4414 Жыл бұрын
This is beautiful, thank you so much!
@_julian
@_julian Жыл бұрын
Great explanation!
@sharmaanuj334
@sharmaanuj334 Жыл бұрын
Residual edges is more like an undo In augmenting paths, we can only select the path whose remaining capacity is greater than zero
@stelioskossieris4530
@stelioskossieris4530 3 жыл бұрын
Thank you for your helpful explanation!!!
@jenweatherwax7113
@jenweatherwax7113 3 жыл бұрын
I got totally lost around 4:47 when he starts talking about edges being saturated...? And what is a residual graph? And I don't remember depth first search... What if there are two bottlenecks in the graph?
@ZantierTasa
@ZantierTasa 2 жыл бұрын
Good video, but there's a few things that could be improved. Residual edge is incorrectly defined at 6:00. At 4:20 he says you're probably wondering what a residual graph is, and then he proceeds to use the word residual before defining it! In Ford-Fulkerson, we assume each edge has an edge in the opposite direction. Where the capacity is only given in 1 direction, set the other direction's capacity to 0. Assign a flow of 0 to each edge, and then as the algorithm proceeds, the flow on each edge can be changed. But when you change the flow of an edge to x, you MUST assign -x to the flow in the opposite direction. This is NOT called a "residual". The residual exists in both directions. The residual (which means "quantity remaining") of an edge is what at 7:29 he calls "remaining capacity". It is simply the capacity of the edge minus the current flow. i.e. If the residual is > 0, there is still room for more flow. The residual graph is just the whole set of residual edges. The word saturate in general can mean "fill until no more can be held". In this case, a saturated edge has residual == 0.
@zekaini7617
@zekaini7617 2 жыл бұрын
best youtube university
@alimahmoud1441
@alimahmoud1441 5 жыл бұрын
Awesome video man, life-saving. Very well explained
@jaincoral25
@jaincoral25 5 жыл бұрын
how did the 4th/last augmented path had bottleneck value - 6?
@ytec100
@ytec100 4 жыл бұрын
Best explanation. Thanks!
@man-kityau21
@man-kityau21 4 жыл бұрын
Is there a particular reason why the "maximum flow" calculated using the "sum of bottleneck values"? Instead of using the "sum of outflow from the source node"? I found the "sum of outflow from the source node" easier to interpret, that's all.
@Garentei
@Garentei 4 жыл бұрын
The bottleneck approach is more useful to understand min-cut. Looking at the capacities that are actually filled gives you more information on how to reconstruct the optimal answer than looking at the outflow from the source. Sometimes, designing network flows is also easier to come about if you think about it in terms of min-cut.
@paretodeficiente9586
@paretodeficiente9586 4 жыл бұрын
I have a doubt: why we have to compute the augmenting path (s -> 0 -> 3 -> t), if the arrow goes from 3 to 0 (3 -> 0), and not from 0 to 3 (0 -> 3)? Thanks.
@ahlahous8128
@ahlahous8128 3 жыл бұрын
He said at ( 9:09 )that we can use the residual edge, we have created. So basically we used the residual edge 0->3
@paretodeficiente9586
@paretodeficiente9586 3 жыл бұрын
@@ahlahous8128 Thanks!
@thomasip9938
@thomasip9938 4 жыл бұрын
Awesome introduction, thanks!
@ShalokSharma-f2z
@ShalokSharma-f2z 7 күн бұрын
does dfs really choose edges in random order
@diskokaktus
@diskokaktus 2 жыл бұрын
great video! keep it up :D
@aishwaryashrestha798
@aishwaryashrestha798 2 жыл бұрын
which tool do u use for animation ?
@peterulev5202
@peterulev5202 4 жыл бұрын
Very useful. Makes good sense! :D
@anandiyer_iitm
@anandiyer_iitm Жыл бұрын
Not for someone who's trying to understand this for the first time. If one already knows, animations are nice.
@osmankhalid2005
@osmankhalid2005 3 жыл бұрын
From what time the F-F algo actually starts on example?
@tjalferes
@tjalferes 2 жыл бұрын
Thank you.
@SG-kn2jl
@SG-kn2jl 3 жыл бұрын
Thanks mate appreciate it
@viralforeverr
@viralforeverr 10 ай бұрын
thank you
@ShakrinJahanMozumder
@ShakrinJahanMozumder 7 ай бұрын
Thanks!
@kells9k
@kells9k Жыл бұрын
great explanation. thanks for the video and quality explanation with the visualizations!
@UdayTejaOriginal
@UdayTejaOriginal 4 жыл бұрын
Could you explain how you came at 2/100 at 11:15 ?
@noelnakka1056
@noelnakka1056 Жыл бұрын
Can you please make videon busacker and gowen method for network flow
@milindprajapat7177
@milindprajapat7177 2 жыл бұрын
What about push relabel. Its not in the playlist!!
@arunkanjoor6542
@arunkanjoor6542 4 жыл бұрын
You are the guy from data structures crash course by freecodecamp right??
@bipinchowdary5251
@bipinchowdary5251 2 жыл бұрын
At 2:42, the max flow is 7. But I am not able to get any min-cut of value 7, the least I cab generate is 8. Can anyone find a mincut?
@lucianoinso
@lucianoinso 5 жыл бұрын
You sound a bit like Ross Geller from time to time lol! Great material tho, much appreciated hah!
@narendraparmar1631
@narendraparmar1631 5 жыл бұрын
thanks sir 😊
@boehan605
@boehan605 Жыл бұрын
was this video supposed to be revision or first time learning? bc if it was for learning it was terrible cant lie
@WilliamFiset-videos
@WilliamFiset-videos Жыл бұрын
What is missing? Anything I can clarify?
@boehan605
@boehan605 Жыл бұрын
@@WilliamFiset-videos you skimmed past probably the most confusing part of all of this: residual flow
@ssshukla26
@ssshukla26 5 жыл бұрын
Can you please teach the same thing to our professor who is teaching us the network flow. He is trying to explain the same thing to us from last 3 lectures and out of 250 not even 25 of us is able to understand the same.
@ganeshchelluboyina
@ganeshchelluboyina 4 жыл бұрын
kaunsa clg me padhte ho bhai
@gabrielpereiramendes3463
@gabrielpereiramendes3463 4 жыл бұрын
#Excelent!
@zitronensaft9110
@zitronensaft9110 3 жыл бұрын
if it weren't for youtube, i wouldn't be graduating college
@vijaykumarsah6255
@vijaykumarsah6255 2 жыл бұрын
He took an augmenting path and augmented all over the place
@siminthesky
@siminthesky 4 жыл бұрын
we miss one or 2. checkout hieros gamos..
@EmapMe
@EmapMe 4 жыл бұрын
Why not just do the opposite of a shortest path algorithm? wouldn't that give the maximum flow?
@kroposman2302
@kroposman2302 4 жыл бұрын
Great video, shitty algorithm
@EL-KHABIR
@EL-KHABIR Жыл бұрын
Algorithme Ford-Fulkerson (Flot maximal) Méthode marquage kzbin.info/www/bejne/j5-uiX13rbp0q5Y
@ahmetnecipgorgulu4133
@ahmetnecipgorgulu4133 4 жыл бұрын
I WANNA KISS THIS MAN HOLY FUCK THIS SAVED ME A LOT OF TIME
@Poutoksereiseimaigw
@Poutoksereiseimaigw 4 жыл бұрын
εσπασες μας
@sybks
@sybks Ай бұрын
11:34
@wirito
@wirito 4 жыл бұрын
Hold on....isn’t this the guy from 3b1b?
@sourabhkandari80
@sourabhkandari80 3 жыл бұрын
8:08 😑😑
@blade661
@blade661 10 ай бұрын
Useless explanation
@Gabriel-yk4it
@Gabriel-yk4it 2 жыл бұрын
i dont understand shit
@cem9927
@cem9927 5 ай бұрын
poor explanation ! make an example and solve it instead of bla bla
@jameskaiser7474
@jameskaiser7474 Жыл бұрын
i now understand it less after watching, f***....
@weaponkid1121
@weaponkid1121 3 жыл бұрын
makes no sense
@saurabhvishwakarma4827
@saurabhvishwakarma4827 3 жыл бұрын
voice is copy of bill gates
@ljupcetrninkov4602
@ljupcetrninkov4602 3 жыл бұрын
i dont get it dude you explain too fast cant keep up disliked
@ananyamenon8839
@ananyamenon8839 2 жыл бұрын
terrible explanation, not clear at all
@lucasmertens1625
@lucasmertens1625 4 ай бұрын
There is a lot good work in this video. At least give a hint on what is not clear to you. I think if you have your display and sound on, it is easy to follow and well explained
@GANDHIXtv
@GANDHIXtv Жыл бұрын
Good try but wrong information in some parts.
@saulsalvadorhernandez9381
@saulsalvadorhernandez9381 Жыл бұрын
thank you
@밑에시간누르면광고없
@밑에시간누르면광고없 3 жыл бұрын
13:25
Max Flow Ford Fulkerson | Source Code
17:29
WilliamFiset
Рет қаралды 42 М.
Network Flows: Max-Flow Min-Cut Theorem (& Ford-Fulkerson Algorithm)
21:56
Smart Sigma Kid #funny #sigma
00:14
CRAZY GREAPA
Рет қаралды 8 МЛН
哈哈大家为了进去也是想尽办法!#火影忍者 #佐助 #家庭
00:33
火影忍者一家
Рет қаралды 126 МЛН
Edmonds Karp Algorithm | Network Flow | Graph Theory
9:35
WilliamFiset
Рет қаралды 158 М.
Ford-Fulkerson in 5 minutes
5:15
Michael Sambol
Рет қаралды 933 М.
How Dijkstra's Algorithm Works
8:31
Spanning Tree
Рет қаралды 1,3 МЛН
Solving Wordle using information theory
30:38
3Blue1Brown
Рет қаралды 10 МЛН
The hidden beauty of the A* algorithm
19:22
Polylog
Рет қаралды 871 М.
Introduction to Graph Theory: A Computer Science Perspective
16:26
Ford Fulkerson algorithm for Maximum Flow Problem  Example
13:13
TutorialsPoint
Рет қаралды 509 М.
I Made a Graph of Wikipedia... This Is What I Found
19:44
adumb
Рет қаралды 2,8 МЛН
Finding maximum flow through a network
4:59
Bryn Humberstone
Рет қаралды 31 М.