Tic-Tac-Toe Game in Python - Unbeatable Minimax AI
Vložit
- čas přidán 9. 07. 2024
- Today we learn about Python wheel files, which are the packaging format for Python applications and modules.
◾◾◾◾◾◾◾◾◾◾◾◾◾◾◾◾◾
📚 Programming Books & Merch 📚
🐍 The Python Bible Book: www.neuralnine.com/books/
💻 The Algorithm Bible Book: www.neuralnine.com/books/
👕 Programming Merch: www.neuralnine.com/shop
💼 Services 💼
💻 Freelancing & Tutoring: www.neuralnine.com/services
🌐 Social Media & Contact 🌐
📱 Website: www.neuralnine.com/
📷 Instagram: / neuralnine
🐦 Twitter: / neuralnine
🤵 LinkedIn: / neuralnine
📁 GitHub: github.com/NeuralNine
🎙 Discord: / discord
Timestamps:
(0:00) Intro
(0:18) Preview Results
(1:26) Game Development
(18:50) Minimax AI Algorithm
(32:20) Game Main Loop
(42:03) Outro - Věda a technologie
Please make the in-depth minimax episode
DuuuDE, I have been working on the same project i.e.(creating a AI using minimax algorithm for tic tac toe in python). It's been a few days since i started working on it and still haven't finished it.
Of course i won't watch this video right now because I wanna implement it myself but I surely will compare mine with yours after I am done building it :)
Awesome tutorial, learnt a lot from this video, especially how easy it was to make AI from unbeatable to defeatable (by switching the min and max methods in the minimax function. Thanks so much for this brilliant tutorial @neuralnine 😀
I guess a good feature update to this would be a depth choice from the player, to make difficulty level a choice.
Interesting one. Didn't knew we can use any algorithm to solve such problem instead of a ml model
Man You are always dropping Gems!! 😵🤓 Glad I #Subscribe
What’s the “depth” variable used for in the minmax function. Looks like it wasn’t used at all. What will removing that parameter do?
I got one too 😅
Time to get to work
Nice code and explanation, but when I tried with the player 2 starting the game, it does not work properly.
Great example of using a minimax function. Could you replace the minimax function with a unsupervised pytorch NN algorithm that learns over time?
Gray should be (128, 128,128).
(180,180,180) is LIGHT_GRAY!
(Sorry, only thing I found I could pick on😉)
🖖🤓👍
i followed you along but when i runned the game, it does not let me make my moves in certain squares and does in some case i am unable to make moves in any of the squares. Can anyone give me a better approach on how should I debug the problem?
Could you please make the source code for this available ?
Thank you for your content
i get
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
error on
def check_win(player, check_board = board):
for col in range(BOARD_COLS):
if check_board[0][col] == player and check_board[1][col] == player and check_board[2][col] == player:
return True
for row in range(BOARD_ROWS):
if check_board[row][0] == player and check_board[row][1] == player and check_board[row][2] == player:
return True
if check_board[0][0] == player and check_board[1][1] == player and check_board[2][2] == player:
return True
if check_board[0][0] == player and check_board[1][1] == player and check_board[2][2] == player:
return True
return False
what did i do wrong
if check_board[0][2] == player and check_board[1][1] == player and check_board[2][0] == player:
return True
replace the last one
+------+-----+------+
| 0,0 | 0,1 | 0,2 |
+------+-----+------+
| 1,0 | 1,1 | 1,2 |
+------+-----+------+
| 2,0 | 2,1 | 2,2 |
+------+-----+------+
not sure is this solved it cause im still new to this my bad