This is my opinion. It is NOT meant to be criticism of the designers. But I want to get these ideas out so the developers can at least think about it, even if they reject it. So without further ado:
The problem with computers is on a fundamental level they're dumb. A computer is a complex tool, nothing more. Consequently AI writing can be summarized as "how do I get this dumb piece of shi- to PRETEND to be smart?"
My answer to this question is: you don't. There's no point. The human will always have more finesse than the AI. Instead, treat the AI like it's a dumb, but stubborn person. Instead of trying to teach an "un-smart" person fancy tricks, teach him how to do a couple of dumb tricks REALLY WELL. After all, there's no point in teaching un-smart people smart tricks. They'll get confused and they won't get it. The AI is the same.
Consequently:
1. During war preparation, the AI will mass fleets next to their shipyards. In other words, each shipyard will generate a fleet. That fleet will NOT rally anywhere. It will literally sit next to the shipyard until it gets to a certain size. Consequently you (the AI programmer) won't have to worry about rally points anymore because the fleet will literally be sitting next to the shipyard and WILL NOT MOVE for offensive operations until it gets large enough.
2. There are two conditions where the fleet will move prior to commencement of offensive operations:
a. It sees a weaker enemy fleet in its vicinity, at which point it will pounce on it. After pouncing on it, the fleet will return back to its annointed place next to the shipyard.
b. The fleet sees a STRONGER enemy fleet in its vicinity. At which point the fleet will RETREAT back to the world the shipyard is based on. And will not move back to its anointed position next to the shipyard until the stronger fleet moves away.
3. Every fleet will be packed with exactly ONE fast moving transport along with the largest number of overpowered units (carriers in this case) it can pack together given the AI's logistics level. Once again, this fleet will NOT move for offensive operations until it has hit maximum size. Every ship in the fleet will be built with the same number of engines (3 good engines is a good number).
4. Once the fleet has hit maximum size (and one transport), that fleet will pick a RANDOM planet to attack. Once selected, the fleet will make a beeline towards it. It will either get there and capture the planet, or it won't. It doesn't matter. If the AI has 10 shipyards, that means the AI can generate up to 10 fleets of maximum size, filled with overpowered units like carriers, and one transport, making beelines towards planets you control.
This is called "the fleet-wave strategy," similar to the strategy employed by the Russian and the Chinese in the 1940s and 1950s. While that fleet is being destroyed, the AI will be building another one of comparable size.
5. After capturing the planet, the fleet will be ordered to roam around in your territory looking for anything it can destroy, with a focus on destroying shipyards.
There is absolutely ZERO finesse to this strategy. As a result I believe it will be relatively easy to program (compared to other alternatives) and I also believe it will be effective because of the AI production bonuses at the higher difficulties. Think of Russia vs Germany in WWII. The Germans would out-smart the Russians at every single battle, BUT IT DIDN'T MATTER because the Russians had a MAJOR production advantage and knew how to use it (like a big giant bludgeon).
With this you don't have to worry about the AI defending its home planets (because each fleet will literally be sitting next to each planet). You don't have to worry about theaters of war because the AI will randomly select planets to attack, meaning that it now can attack in multiple locations (some of the locations might be really dumb, but that's fine. As long as you have overwhelming numbers, it doesn't matter).
Finally, you don't have to worry about bad rally points where the AI is feeding you individual ships because each fleet will literally sit still until it gets to maximum size. Nor do you have to worry about insufficiently large fleets because the AI will try to pack as many ships into each fleet as possible, under the condition that EVERY SHIP must have the same number and type of engines. And finally because each world will literally build each fleet separately, you don't have to worry about the trickiness of programming inter-world cooperation or rally points.
Your thoughts?