Maximise the distances between the positions of the AIs (spread them out);
Make AIs positioned alphabetically (no shuffling of AIs); and
Make sure that sometimes a human starts and sometimes an AI does.
Here's a proposed algorithm for that:
let nAis and nTotal be the number of AI players and total players respectively
Compute: range(nAis) * nTotal / nAis
Take floor
(so with 3 AIs in a 7-player game you will have 0, 2 and 4 at this point)
Add random number from range(nTotal)
Take modulo nTotal
Not only will that achieve the objectives, but it will also make the chance of an AI starting the game proportional to its share of the player count.
Achieve the following:
Here's a proposed algorithm for that: