Civ was not designed to be a "free win" game.
Where in the world did I say anything like that?
The programmers (like many others) chose to invest as little as possible into creating a functional tactical AI, and instead give the AI a plethora of flat bonuses.
Speaking as a programmer, trying to create a "functional tactical AI" for a game with the world scale of Civ 5, the hex system, and terrain (which includes everything from crossing rivers to mountains making choke points to terrain bonuses and beyond) would be an absolute nightmare. Imagine just a case where you have like half a dozen camel archers on completely flat terrain except for a chokepoint so you need to rotate those camel archers through that one spot (and it's not even simply move, fire, move back to original spot since you have some camel archers that need to move, fire, and move two spots away while others move two spots, fire, and move one spot away (four movement)).
That's already extremely complicated. Now figure out how to recognize those chokepoints in general on maps that are randomly generated, how to position the archers correctly to set-up for the next turn, add in other terrain, etc. I don't see there being any reasonable way to be able to account for all of the potential scenarios. The combat AI is always going to come down to "Get a few decent general algorithms and then give bonuses to make it tougher."
This almost feels like this:
https://xkcd.com/1425/
Which is not to say I think Civ 5's AI in general couldn't be massively improved with some relatively simple fixes. Things would include...
1. no massive head start, just overall bonuses as necessary
2. better city placement locations (and not founding cities on snow islands in the middle of the ocean on turn 200)
3. better social policies (actually going Tradition or Liberty depending on the AI's city count goal, actually taking Rationalism, etc)
4. better army composition (and maybe not build 2378326832 empty Aircraft Carriers)
Etc. But none of those are related to the actual combat itself when an army arrives at the "battlefield," they're just the set-up.
I've seen people talk about how the Starcraft 2 AI is much better...but it's really not. It has pre-defined maps with explicitly designated expansion sites. And all it does it expand when it wants, build an army, and then run that army into your front door. It's never going to set up Siege Tanks and lure your army into an artillery trap. It's never going to drop in your base. It's never going to do any of the crazy tricks players do.
I mean, here's a question: why are you upset about the fact the AI can't move and fire...but I've never seen *anyone* complain about how the fact the AI doesn't send mounted units to pillage all your land during war (seriously -- just one Horseman/Knight/etc to each city that it's not sending its main army at is going to be able to freely pillage a ton of stuff (and potentially steal your workers) and be very hard to kill due to healing 25 or 50 HP per turn from pillaging)? Shouldn't a good AI do that as well?
There's nothing particularly hard to understand about it, and trying to justify sloppy software design with game design theories is not a good way to look at a game.
What's hard to understand is where you draw the line between "not enough effort into the AI" and "sufficient effort into the AI." Is there a lot of sloppy AI design in Civ 5? Certainly. I even gave a list of four huge things that could be massively improved very easily (and there's certainly more than that).
But that doesn't mean that everything not perfect in Civ 5 is solely due to being lazy -- sometimes game designers think fixing a certain issue makes the game worse overall...doubly so in a game that's not intended to be competitively balanced for E-Sports.