Minimax with Alpha Beta Pruning

Поділитися
Вставка
  • Опубліковано 10 бер 2017

КОМЕНТАРІ • 191

  • @amellperalta
    @amellperalta 6 років тому +150

    Excellent explanation! The video is clear, concise, and precise. We want more videos from you. Please teach us more about AI.

  • @bryanbocao4906
    @bryanbocao4906 5 років тому +220

    Great explanation! Some important notes as well:
    1) only in a Max node can update the corresponding alpha, so does Min for beta.
    2) v can only be returned up to its parent
    3) alpha and beta can only be passed down from its parent
    4) cut the current node from the tree whenever alpha >= beta
    In the graph on the right whiteboard, shouldn't all the alpha, beta are initialized as -infinity and infinity, respectively?
    At 13:07, for the completeness of the logic flow, I think we should set the beta to be 2 in the node(v=2, alpha=8, beta= ), then because alpha(8) > beta(2), we prune the right subtree.

    • @rampage14x13
      @rampage14x13 5 років тому +9

      all solid things to point out, thanks

    • @kingtqos1514
      @kingtqos1514 5 років тому

      It works like a charm, Thanks!

    • @superuser8636
      @superuser8636 3 роки тому +6

      Yeah, this algorithm is total shit

    • @imnacho4127
      @imnacho4127 2 роки тому +4

      beta would never assigned the value of two; the function would return before that variable assignment.

    • @kevin-lamquesnel9067
      @kevin-lamquesnel9067 Рік тому +1

      Thanks this helped me so much, you have no idea

  • @RahulSam
    @RahulSam 7 років тому +130

    You are a great lecturer, not many people can do this.

  • @XxBleedRainbowxX
    @XxBleedRainbowxX 5 років тому +1

    Just wanted to thank you for your great videos! Watching them pre-exam to refresh and they're all very clear and informative

  • @sagnik3105
    @sagnik3105 6 років тому +12

    This definitely has to be the most thorough explanation I found on the topic. Thank you! :D

  • @jabodey
    @jabodey 6 років тому +14

    THANK YOU SIR! I finally know alpha beta pruning!!! Your explanation was crystal clear. If you taught my AI course, I would never ditch class!!

  • @GtaRockt
    @GtaRockt 3 роки тому +16

    Great teacher, got a B on my AI exam with your videos about tree search algorithms 👌 explained it way better in a couple of minutes than my teacher in an hour

  • @nilsmartel2295
    @nilsmartel2295 4 роки тому +2

    Every single time I see that you have uploaded a video about a topic, I lose all fear, that I'm not going to be able to understand it. This is not an exaggeration, you've helped me avoid so much confusion and desperation. Thank you so much John!

  • @adamkawsara6881
    @adamkawsara6881 6 років тому +2

    Wonderful video. This helped a lot! Working through the example in real time and explaining your thought process as you went really helped make this click.

  • @syedahabali2450
    @syedahabali2450 6 років тому +4

    Respect to you sir. You explained it so well! I'm very grateful!

  • @pellekools6475
    @pellekools6475 6 років тому +2

    Great explanation! I already knew what steps to take, but it wasn't really clear why I should take those steps. It is clear to me now.

  • @PauloViniciusMoreiraDutra
    @PauloViniciusMoreiraDutra 3 роки тому +2

    the best explanation about minimax. You are a great professor. I watched a lot of videos about minimax algorithm, but only your video I understood clearly

  • @yashvats9703
    @yashvats9703 Рік тому +2

    He is god. He explained everything in just 13 minutes. I wish if I came across this video earlier it could have saved my time. Great teacher!!

  • @andrewweems9427
    @andrewweems9427 6 років тому +3

    Your videos are so concise and helpful. They're the only thing keeping my grade decent in my Intelligent Systems class.

  • @benaya6
    @benaya6 4 роки тому +1

    it's just amazing. all your videos are the definition of crystal clear explanation. perfect. I wish you'll do more videos

  • @jonathancui3063
    @jonathancui3063 4 роки тому +12

    As a self-learner, this video is by far the best explanation I've ever seen. Clean, concise, and to the point.

  • @GauravYadavdv31
    @GauravYadavdv31 5 років тому

    One of the best explanation, Thank you John Levine.

  • @cookiejar3094
    @cookiejar3094 2 місяці тому

    Your videos help me so much with my course, thanks!

  • @AdityaRaj_Purohit
    @AdityaRaj_Purohit 5 років тому +5

    One of the best video on youtube to understand Alpha Beta pruning.
    Want more video like this to get more understanding of AI.

  • @oshawastaken
    @oshawastaken Рік тому +2

    5 year later and still best video on alpha-beta pruning. Thank you sir.

    • @johnlevine2909
      @johnlevine2909  Рік тому +3

      Thanks for making me feel old! Very glad it's useful 😀

  • @mesosiderite4670
    @mesosiderite4670 Рік тому +3

    I want to thank you sir,
    you have done what my teacher was unable to do, a good explanation,
    it took me three days to understand this, and finally I understood thanks to this video

  • @ahlamalbimani2070
    @ahlamalbimani2070 6 років тому

    Thank you. I've seen many videos and could not understand until I saw this video. Many thanks for your clear explanation!!

  • @prasangsinghal262
    @prasangsinghal262 5 років тому +4

    He saved my exam. Thnxx sir for such a great explanation.

  • @Fionasfung
    @Fionasfung 2 роки тому

    This is the best video I have seen which explains the algorithm along with the graph.

  • @Daryn372
    @Daryn372 5 років тому

    Brilliant explanation. Just what I needed. Thank you.

  • @hemmahbeast
    @hemmahbeast 5 років тому

    Nice lesson, Biblo. The great eye watching you is pleased.

  • @fejohnson
    @fejohnson 6 років тому +2

    this is amazingly helpful for me! thank you sir for this explanation!

  • @ManishSharma-cf3or
    @ManishSharma-cf3or 5 років тому

    Awesome!! Seen most of your videos(Loved A* video too) and I must say that this topic was a bit tricky till I saw this ! You make it sound so simple

  • @nh1622
    @nh1622 6 років тому

    Really good!! Thanks for taking the time to explain it properly.

  • @_justinxu
    @_justinxu 3 роки тому

    Don't expect to instantly understand this topic, but your video did it. Thanks. :D

  • @dadas7852
    @dadas7852 6 років тому +10

    This is the best video about this topic

  • @TheZ0mi
    @TheZ0mi 5 років тому

    Thank you Sir, after checking many videos on the same topic, your lecture makes me understand the topic.

  • @mkamp
    @mkamp 7 років тому +38

    Thanks. That was my nth video on that topic and this time it clicked. Thanks for taking the time to go through it so deliberately. :)

  • @user-xp3me9ws9c
    @user-xp3me9ws9c 5 років тому

    thank you for the video, it really helped me a lot doing my exam study!!

  • @dien2971
    @dien2971 5 років тому

    Thank you, sir. You are a great teacher!

  • @shivamroy1775
    @shivamroy1775 7 років тому

    Thank You . You're an amazing teacher .

    • @johnlevine2909
      @johnlevine2909  7 років тому +2

      Thanks Shivam! Glad you found it useful.

  • @meharabdullah8608
    @meharabdullah8608 6 років тому +2

    Fantastic explanation. No one on UA-cam has ever explained this algorithm so nicely using it's pseudo code . Very nice Sir, Respect

  • @vinicius2699
    @vinicius2699 6 років тому +1

    Damn, you are good. Thanks for helping

  • @sashinthat3173
    @sashinthat3173 Рік тому

    Goated Explanation Sir!

  • @jennachen1411
    @jennachen1411 5 років тому

    Thank you very very much! It takes a long time for me to understand the alpha-beta pruning .Luckly ,I find this vedio.

  • @johnphilipespia1167
    @johnphilipespia1167 2 роки тому

    Thank you so much! You're the best!!

  • @user-pr6cq3rs4x
    @user-pr6cq3rs4x Рік тому

    Thank you for this amazing video and explaination, not many have the ability to do this 🌸🖤

  • @rv.9658
    @rv.9658 2 роки тому

    Watching this once saves me so much time that might've gone into reading through a textbook section on this particular algorithm

  • @nicolemb05
    @nicolemb05 10 місяців тому

    This is so helpful!! Thank you so much!

  • @dbnnoman5596
    @dbnnoman5596 3 роки тому

    Thank You so much sir!
    God Bless you!

  • @ArushitMudgal
    @ArushitMudgal 6 років тому +3

    Watched it in approximately 9 minutes (X1.5 speed) and this has been the most precise and to-the-point explanation I have watched so far and believe me I have watched many. Thank you sir

  • @weidong1378
    @weidong1378 5 років тому

    Best video I've seen on the subject

  • @xdxdxd1
    @xdxdxd1 5 років тому

    Amazing videos! Thank you!

  • @madeline-qk3vg
    @madeline-qk3vg Рік тому

    this is life-saving sir thanks a lot ^-^

  • @nassimmehalli7043
    @nassimmehalli7043 5 років тому +1

    an excellent teacher , thank's a lot. we'r waiting for more courses about AI :) Good luck

  • @TrangPham-kc7ft
    @TrangPham-kc7ft 3 роки тому

    Thank you so much for your video. It's really clear.

  • @pratyushshrivastava4362
    @pratyushshrivastava4362 3 місяці тому

    Great explanation!

  • @BeSharpInCSharp
    @BeSharpInCSharp 4 роки тому

    I have to admit you are the only one who could explain and impart knowledge to even the dumbest person like me. You are the great great teacher.

  • @amirbaba9677
    @amirbaba9677 2 роки тому

    this video was so helpful.
    thank you.

  • @jonesmukuta1910
    @jonesmukuta1910 2 роки тому

    Good work right there!!!

  • @joaquinvanloon7341
    @joaquinvanloon7341 6 років тому

    Great video, great explanatiom!

  • @AGCrush
    @AGCrush 3 роки тому

    Great Explanation! Thanks alot.

  • @simha3154
    @simha3154 6 років тому

    This is amazing. Thanks!

  • @Tash98
    @Tash98 5 років тому

    The only explanation that made sense to me!

  • @mohamedibrahimhassan291
    @mohamedibrahimhassan291 2 роки тому

    loved the way you explaine

  • @ImranAkbarUK
    @ImranAkbarUK 6 років тому +1

    very good Explanation Sir! :)

  • @guoshenli4193
    @guoshenli4193 2 роки тому

    great explanation!!! Thank you!!!

  • @hangchen
    @hangchen 4 роки тому

    OMG! Very very clear! I came from CS188 step by step.

  • @hoomanjafari4633
    @hoomanjafari4633 5 років тому

    Thanks a lot, you made my day !

  • @simoneditzzz
    @simoneditzzz Рік тому

    thanks man, you gave me a great favor

  • @jebaanto7649
    @jebaanto7649 3 роки тому

    Awesome explanation sir thanks from india

  • @linh6360
    @linh6360 4 роки тому

    thank you so much for the lecture.

  • @bushrhaddad3141
    @bushrhaddad3141 5 років тому

    Very clear explanation, Thank you

  • @ammarzorig2771
    @ammarzorig2771 4 роки тому

    Thank you Dr

  • @dgglovesbb
    @dgglovesbb 9 місяців тому

    Thank you so much!

  • @tega2754
    @tega2754 7 років тому +2

    Thank you!!! :)

  • @Jantol93
    @Jantol93 2 роки тому

    The best explanation of alpha beta pruning. "If the value is greater than beta that means min is going to prefer the branch that lead to beta." That line made it click for me.

  • @AntonAtef
    @AntonAtef Рік тому +1

    Great explanation 👌

  • @WickedChild95
    @WickedChild95 6 років тому

    Awesome video!

  • @blackfromabove9383
    @blackfromabove9383 3 роки тому

    Many thanks for explanation!

  • @alexanderyau6347
    @alexanderyau6347 5 років тому +3

    Wow, this lecture helps me understand the alpha-beta algorithm, the pseudo code is very helpful to understand. Quite intuitive. Where is the link for the assignment?

  • @shehrozkhan9563
    @shehrozkhan9563 2 роки тому

    Sirrr love your vids

  • @shantanulokhande3730
    @shantanulokhande3730 8 місяців тому

    Thank you so much sir. !!!!

  • @aynurememmedova9436
    @aynurememmedova9436 Рік тому

    Thanks teacher...I watch your videos in Azerbaijan✨

  • @beri4138
    @beri4138 4 роки тому

    Very good video. I will now attempt to code my own tic-tac-toe solver :)

  • @ahsanshahid11
    @ahsanshahid11 6 років тому +2

    bunch of thanks (y)

  • @sergiovasquez5643
    @sergiovasquez5643 3 роки тому +1

    Great presentation of work. would it be possible to link the supplementary material associated with this lecture?

  • @saisompally
    @saisompally 2 роки тому

    GOAT 🙌

  • @ShadowQuik
    @ShadowQuik 6 років тому

    Awesome, very clear

  • @kasunigamage3529
    @kasunigamage3529 5 років тому

    great explanation!! thanks a lot

  • @harrisonjin8359
    @harrisonjin8359 4 роки тому

    Best explanation by far

  • @TheTahlia1988
    @TheTahlia1988 7 років тому +2

    Again, superb teaching. Thank you!

  • @aimadabdelouhab8627
    @aimadabdelouhab8627 5 років тому

    THANK YOU SIR, you saved my exam

  • @abdellahi.heiballa
    @abdellahi.heiballa 5 років тому

    great explaining prof

  • @dimmo15
    @dimmo15 6 років тому +1

    Thank you sir! I was wondering if there is a formula that can calculate the maximum number of nodes that can be pruned in a tree with a depth of d and a branching factor of b.

  • @freesoul2677
    @freesoul2677 7 років тому

    That was really helpful, Thanks !!!!

    • @johnlevine2909
      @johnlevine2909  7 років тому +1

      Thanks Basma! Glad you found it useful.

  • @ApaDOCTOR
    @ApaDOCTOR 6 років тому

    Thank you!

  • @llcooljake1
    @llcooljake1 7 років тому

    Thank you! Finally clicked after watching this video.

  • @s70591520
    @s70591520 2 роки тому

    this guy makes me wanna go back to school

  • @j_m_b_1914
    @j_m_b_1914 Рік тому +1

    I must be missing something because the following scenario seems like a possible scenario where alpha beta pruning can discount a superior position down the road.
    In chess, isn't it possible to have a move sequence where moves 6 ply out may show an inferior score for white but if the line was analyzed further, we'd see that white might be able to force a mate by taking a material loss. Wouldn't alpha beta pruning possibly discount such a line by abandoning further computational depth for that line such that it would never be able to see that a temporary drop in maximization of white's score actually sets up for a win for white?
    I guess my question can be reduced to this:
    Is it possible for alpha beta pruning to discount a line that is temporarily inferior (low score) but a few moves further out we discover a forced mate? Could alpha beta pruning throw out the analysis for such lines?
    Also, the entire principle of the minimax algo (in my opinion) is the scoring we give specific positions based on what information has been learned about chess over the centuries. We rank certain material with specific scores and also certain positions with specific scores. If the methodology of scoring the current state of the chess game is imperfect, then the minimax algo may not always be 100% optimal in the search tree it explores based on those scores.
    Let me give a quick counter example to (hopefully) better illustrate my argument. In the game of chess, there is really only one ultimate score -- is there a sequence of moves from the current game position where white (or black if playing black) can force a checkmate of the opposing king. Every other analysis within the game is of no consequence if it doesn't lead to a line where the opposing king is checkmated (or if checkmating is not possible, the only other analysis of consequence is trying to draw the current game). A new chess engine called Oracle is created using hardware from thousands of years into the future. Oracle is able to analyze 100 ply within the game in a matter of microseconds. Oracle discovers a line where white sacrifices four pieces (let's say a pawn, a knight, a bishop and a rook) in order to force a mate on the opposing king approximately 20 moves out.
    Now in this example, wouldn't current engines stop processing this line after the first or second piece was lost because the minimax score / alpha beta pruning? The current engine might discount the sequence of moves and call the first sacrifice a blunder because it never processed this particular line deeper.
    I could be way off here because my knowledge of minimax with A/B pruning is incomplete -- that's why I'm throwing this out there for others with more experience. Is this a disadvantage of minimax with AB pruning?

  • @matteomastandrea5680
    @matteomastandrea5680 Рік тому

    this mans single handedly getting me through AI

  • @bangminh5712
    @bangminh5712 7 років тому

    Please make a video on Negamax as well, would be perfect if includes Transposition in the algorithm either. And thanks for the lesson, thank you.

  • @muhammadfawad1505
    @muhammadfawad1505 6 років тому

    Awesome Sir, @respect

  • @danilocorreia5104
    @danilocorreia5104 Рік тому

    Thanks!

  • @yashin2068
    @yashin2068 5 років тому

    it is a really nice explanation. thank u sir.