Actually, I know exactly what I'm asking you to do. If you are not willing to sketch out even in the highest level (which I am not saying pseudocode is highest level, naturally), I'm not sure how we can actually talk about the AI.
Ad hominem gets you nowhere. I know quite a deal about AI.
And when you run into a game, like CiVI, where you can't brute force it? I mean, really. What can you do? Even the snippet of algorithm you provided above wasn't in that vein.
You can't play a perfect game of chess against an arbitrary opponent. Game theory tells you that.
Why are you restricting yourself to MVC architecture? I can think of at least two other architectures that could work just as well, and in neither of them would the AI be considered 'core'.
Please explain to me how this has any relevance whatsoever to CiVI. First, please explain what a 'perfect' game of CiVI looks like, and then please explain what an AI that can accomplish this 'perfect' game looks like. Do you want an AI that can take any game state and make the decisions that will be the 'best' (for some definition of 'best') at every turn? That changes the system state to the one most favorable to the AI? What does it look like?
Edit: I would probably use a functional programming language for AI. Scala is a good choice, particularly if the rest of the code base is in Java.
I will say that I think you have a very good grasp of how to write AI in a certain way. I am not sure how well your way of creating AI translates to a game like CiVI.
I brute-forced it, because it was the more efficient way... not because I couldn't do it differently. This would probably be a mix of both, depending on how the modding would be implemented. For example, if we would include a standardized interface for tech modding which would read out standardized variable like 'based on tech, required for tech(s), affects, etc.' Then a dynamically drawn tech tree would be required (and a good choice) and thus a dynamic handling of the available techs by the AI. On the other hand, for the static tech tree of the base game, a pre-chosen RAW order (pending affection by the AI based on situation) of the techs for each leader-type would probably be most efficient.
A good way to test the algorithm would be to reverse-engineer the static tree using it.. as in, does the dynamic algorithm for the modded tree when fed with the static tree return the RAW trees?
As for leader AI types... well, please keep in mind that I haven't done proper research in competitive strategy so I don't know the little tricks yet, but let me make an attempt anyway... also, keep in mind that it is not build on any specific Civ:
Warmonger (offensive) - Settles 1-3 Cities, builds units until capacity is reached & Raids barbarians, builds military buildings/extorts money from city states/extorts strategical resources>luxury resources>mone from Cultural & Diplomatic civs/Sells expensive 'peace-keeping' treatises to trader Civs, builds fortifications & upgrades units, declares & fights wars against other civs ( first those that refuse their 'offers' starting with City States, followed by those with big militaries, because they are a thread and the other civs are more useful to be extorted), expands mostly through conquered cities if their placement is good and they have enough luxury resources, otherwise razes cities. Gives no gifts to friends, because they should be giving gifts to him. Does not ally with civs with a strong military, does not protect friends or allies in war times, does not agree to foreign 'joint war' offers, but insists on Allies joining their war effort. Builds only wonders that pertain to their Civilization historically or provide a military advantage. Does not surrender & does not accept surrendering. When nobody is left to opposed them, demands 'submission' from the next biggest civ until Domination Victory (+ Religious Victory for certain Civs).
Sentinel (Deffensive) - Settles 3-5 Cities, builds units until capacity is reached, builds fortifications & tries to make political allies, gives 'protection treatises' to Diplomatic and cultural Civs for open borders and sells them to trader civs for money, pledges to protect military City States and tries to gain their favour, expands when pragmatically viable or during long peace times, Produces military units and gives excess units (particularly outdated ones) to Citiy States, Allies and friends, when ally, friend or self receives a DOW (but not, if an ally or friend sends one) fights against invading units first and then tries to make peace, if refused starts conquering and annexing cities (no razing, if they don't have enough luxury, they either sell it to a trader civ or failing that, give it to an ally or friend). Surrenders when losing a war to fight another day and always accepts surrenders. Tries to unify the world in peace and win the Diplomatic Victory (+ Cultural Victory for certain Civs).Builds only wonders that pertain to their Civilization historically or defensive military ones.
Trader - Settles 2-4 Cities, builds trade routes, builds monetary buildings followed by either cultural or theological buildings, expands when economically viable, Improves & Sells spare resources and tries to grow to make more and more Trade routes. Vies for Merchantile City states. Buys their army when declared war or buys mercenaries (Units from city States or other Civs, particularly Sentinels). Buys cities from other Civs. Goes for a Cultural Victory (+||Religious for certain civs) Builds only historic or economic wonders. (no cultural or religious), surrenders quickly to minimize losses (but doesn't offer much of worth in their peace treatises). Gifts some (but not much) money to friends every so often. Supports allies in war times financially (pays their military upkeep or similar).
Diplomat - Settles 1-3 cities, builds any type of building, expands slowly or not at all, has an diplomatic bonus and explores the map to find all city states and civs and gain diplomatic favours. Lets others fight their wars, build their roads and provide their military. Builds a lot of builders and improves their own fields and those of other civs to gain their favour. Tries to unify the world in diplomacy and win a Diplomatic Victory. (+any that might occur earlier), surrenders quickly and tries to do whatever necessary to keep the peace. Refuses to join wars or pick sides in conflicts. Builds no wonders. Vies for all City states.
Scientist - Settles 2-4 cities, builds scientific buildings and a few advanced defensive military units, scouts to explore and archeologists to research. Tries to stay secular and uninvolved in Diplomacy. Does reject ally or joint war agreements. Occasionally gifts friends techs. Goes for the Scientific Exodus victory. Builds historic or scientific wonders. expands when pragmatically reasonable. Similar speed to Traders. vies for scientific city states.
Cultural - Settles 4-5 cities. Builds Cultural buildings. Tries to impress other civs but do their own thing. builds historic or cultural wonders. goes for the cultural victory. vies for cultural city states. Expands as much and as quickly as possible. Enjoys friends and allies and gifts monuments, theathers or great works of arts to their friends. Surrenders medium quickly and offers descend stuff.
Spiritual - Builds 1-3 cities, builds any available wonders and theological buildings as well as fortifications, tries to enlighten the world peacefully (theologic pressure & Missionaries) and gain a Religious Victory (+Diplomatic Victory). Surrenders late and offers little. Likes having friends and allies and tries to aid friends with what they need most if they are capable of it and highly value gifts from others. Expand slowly, but decisively. Vies for religious city states.
Zealot - Builds 3-5 cities. Builds theological buildings, builds only historic and theological wonders and military buildings. Have a standing army. Are friendly to all that share their religion, neutral to all without a religion and unfriendly towards those of other religions. Build often Inquisitors and aren't beyond a holy war to spread their religion faster. Go for the religious victory. Do not give gifts but appreciate them. Expand as quickly as possible.
Actually, game theory says that one can't WIN a perfect game of chess, because it would time out according to the 40 turn rule. However, it also tells us, that the next closest winnable game is where White wins... because chess is an unfair game and white has the +1 modifier due to starting.
One reason I like Tic Tac Toe more, it's basically the same but doesn't take as long.
That said, I did make up a few different versions of 'fair' chess in chess club back in the day. Nobody really cared, but I had fun with it. ^^