I'm writing a game that's a variant of __Gomoku__. Basically a tic tac toe on a huge board.

Wondering if anyone knows a good AI strategy for the game. My current implementation is very stupid and takes a long time (O(n^3), approx 1-2 second to make a move):

-(void) moveAI { //check if the enemy is trying to make a line horizontally, vertically, or diagonally //O(n^3 * 3) [self checkEnemies]; //check if we can make a line horizontally, vertically, or diagonally //O(n^3 * 3) [self checkIfWeCanMakeALine]; //otherwise just put the piece randomly [self put randomly]; }