Game AI: Where to start?
Take your favorite board game or puzzle game (chess, queens, chinese checkers... tetris, puyo puyo...).
Implement it in your favorite language for 2 human players. Be sure you separated properly the data structure and the display code. Be sure you separated the player controls into an independant class.
Then try to rewrite your player control class by an efficient AI class. Your AI must play the game by only looking to the game datas. Your experience in playing the game is important (heuristics).
Ideally, you must be able to switch easily between a player control class and an AI control class (run games like human VS human, human VS AI and AI VS AI).
Doing that, you will learn a lot of things.
There's a pinned thread at the top of this forum with plenty of good resources. I'd suggest starting there.