Its because, for perf reason, we have the AI and monster players all go at the same time (we multithread their turns rather than running them sequentially, so instead of waiting for 8 players to take 2 seconds each, all the players go at the same time and take a total of 2 seconds).
Because of this something player A and a monster player can both move at the same time and enter the same tile, even though the tile was empty to both of them. It's not that the AI isn't getting attacked by monsters, or they are somehow at peace with them. The AI gets attacked by monsters all the time.
The simotaneous moves could help the AI a little. But you may occasionally see the opposite when the monster is moving to attack an AI player but that player is moving, in which case the battle still happens but it looks like the monster goes way out of its way to attack the AI player.
The real fix would be to remove the simotaneous turns, in which case the between turn time would be mutliplied by the amount of players in your game, and I'm not willing to pay that cost for this relatively minor issue.