Tic-Tac-Toe Game in Python - Unbeatable Minimax AI
Вставка
- Опубліковано 31 тра 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 - Наука та технологія
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 :)
Please make the in-depth minimax episode
Interesting one. Didn't knew we can use any algorithm to solve such problem instead of a ml model
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.
Man You are always dropping Gems!! 😵🤓 Glad I #Subscribe
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?
I got one too 😅
Time to get to work
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