I am no expert at AI; but if you need to process more AI than the server can handle, and you cannot afford more than one server for the job; perhaps you could share the AI processes into different levels. On one end, a set of actions can only be performed by the server, which are manditory however lightweight, on the other, the clients calculate other more intensive actions, however subject to the server's imposed regulations.
For example, the server tells a character to move to position X in 2 seconds; and the client gradually moves the character to the actual position and transmits the necessary net packets. The server only needs to process a one off timer based position change which is a lighter load than having to process the journey. If you want to be anal, have the server store the position the AI must be in at the given time and impose it.
In other words, make the process of running DarkAI easier on the server.
That's one idea.