Stop complaining against AI ?

tilalilalou

Chieftain
Joined
Sep 6, 2013
Messages
11
There are so many posts complaining about how AI is dumb... But also quite a few posts complaining about how AI turns are slow : Fixaris probably found a balance between both. The fact is that a smarter AI cost computing time.

Here is what is often complained about :
- AI military tactics sucks : this would probably cost huge computing time to enhance. Try to play with humans instead ? ;)
- AI take sub-optimal choices (like not privileging science) : this would be boring if every AI played the same way !
- AI diplomacy is predictable : Firaxis tried hard to have the AI surprise the player sometimes, with unexpected traitorous DoW for example, but on the long run a player always get use about how the AI is programmed, you cannot do anything against that, except by adding randomness, which is bad too.

Still, something seems wrong to my on deity : the game feel like a run to catch with AI technologies. In the early game you cannot compete, the great library for example is impossible to get. I would like the AI to have a linear advantage rather than a big starting advantage, so that we can play a complete game having about the same technology level in every eras...

What do you think ? Would you like some smarter-tactics AI mod with turns taking 15 minutes to solve ? Some AI can learn from players and situations over the time too : maybe it could be nice to see the AI getting better as we play...
 
The fact is that a smarter AI cost computing time.

Fact is also that there are other games around that have smarter AI in lesser turn times...
This is as amuch a matter of clever, efficient and elegant programming as ist is about speed - and it's also about game design. The question of how fast or how smart an AI can deal with certain game elements should not be the last question asked - especially for a single player focused, AI-heavy strategy game.
 
There are so many posts complaining about how AI is dumb... But also quite a few posts complaining about how AI turns are slow : Fixaris probably found a balance between both. The fact is that a smarter AI cost computing time.

AI is ludicrously slow for the quality of play it puts forth, and such has been true in civ games for nearly a decade (better AI mods notwithstanding, which are BTW faster and better at the game).

A lot of AI between-turn time is dedicated to brute-forcing all of its potential moves and constant unnecessary checks...and then it turns around and makes laughably terrible worker micro movements or poorly optimizes its yields anyway.

Keep in mind that well-programmed games allow for 1000's of AI controlled units moving dynamically in real time. You want to try to convincingly portray that moving *fewer* units turn-by-turn should somehow be a bigger burden? To do that you'd need to provide a lot better evidence than in the OP!

It's worth noting that even for the human player, there is a noticeable lag between moving two units such that it's possible to be made to wait a few seconds before making one's next order. If you apply that delay across multiple AI, one wonders how much of the turn is really being used by its calculations and how much is used by whatever absurd nonsense is being applied that prevents us from simply selecting the next unit without being interrupted or stalled.

There's no way to refute the rather objective evidence that civ is poorly-programmed from an optimization/interface standpoint, or that it uses time unnecessarily. For a typical play the delay is only a small % of their play time and it isn't a big deal.

However, for players like me or those who are even faster, the game's during-turn delays and between-turn delays are a serious factor. In both IV and V, I would frequently spend 1/3 of my "play time" waiting to be able to play at all. Civ's deep strategy is its draw and few if any do it better, but its delays *are* a serious and objective flaw. Requests that people stop pointing out this flaw are pretty ridiculous.

BTW AI bonuses are far from "at the start only". Their advantage grows over time in terms of bonuses, they just squander it. High level AI have utterly absurd bonuses that they're squandering; they're literally playing a different game the difference is so large.
 
Thirty years ago, chess engines were already brute forcing move trees while the player was idle. A lot of this between-turn stuff could be picked up by the processor during the player's turn. It wouldn't be as straightforward a problem to solve since you'd basically have to divide things into two categories (stuff that is potentially in range of a player's piece and stuff that isn't), but the AI could easily make, say, Worker decisions within its own respective territories during the player's turn.

I'm somewhat inclined to give Firaxis a pass on 1UPT since it's a new problem for them, but we should be getting better results in BNW given three extra years to improve the AI.

I'm much less inclined to give Firaxis a pass on the AI moving through the tech tree inefficiently. We know what the optimal paths are at this point, and the AI really should be using them. That doesn't mean that all AIs need to play the same way; Rome and Iroquois can Iron rush, Assyria should head up to Construction and rush, the :c5science: civs should build up a defense and push Education, and so forth.

It's worth noting that OP's complaint about the AI having obscene early game advantages is more or less dictated by the suboptimal AI coding. Make it smarter, and it becomes possible to dial back the AI's initial advantages a bit.

I wholeheartedly agree with TMIT about the slow interfaces in CIV and CiV. It's not an entirely new problem; SMAC was kind of slow until hardware caught up, but hardware progress has made it pretty clear that suboptimal coding is the problem in the more recent releases.
 
I'm much less inclined to give Firaxis a pass on the AI moving through the tech tree inefficiently. We know what the optimal paths are at this point, and the AI really should be using them.

I agree. Removal of tech trades was a *great* change and a much-needed one in the series IMO, they should really take advantage by having the AI optimize its choices better now that the incentive to go in all kinds of wonky directions is reduced.

It's worth noting that OP's complaint about the AI having obscene early game advantages is more or less dictated by the suboptimal AI coding. Make it smarter, and it becomes possible to dial back the AI's initial advantages a bit.

We actually got to see a little of this in Civ IV BTS and the BBAI mod. High level AI became unwinnable because it would evaluate its advantage and simply rush-kill players too early :D. On the bright side, it's the only time the AI made any active effort in IV to win any victory condition other than culture. In stock BTS, only 1/4 of the AI in the game would pursue culture victories, and the remaining AI had no programmed victory plan whatsoever! They would eventually build a space ship, but they didn't actually pick techs to speed up that process or prioritize ship parts in high :hammers: cities, so that was haphazard at best and somewhat pathetically still easily the 2nd most probable way the AI would win.

Although it seems that the super bonus AI in V shares this problem too, unfortunately. The whole "pursue a victory condition" thing seems a bit difficult for stock civ AI in general. A better AI mod in civ V would be an interesting undertaking for sure if it gets to the point where it can make the AI go for VCs in a more dedicated fashion.
 
Peaceful win conditions in Civ are fairly complex production functions, so it's not a surprise that the AI tends to muddle through it. Programming an AI to discern the best fit solution and execute the optimal gameplan is an exercise in futility. If you give the AI the tools to sort through the problem, you'll invalidate the hard-coded solution in the next balance patch. This is probably the single largest advantage the human player has; the AI can only optimize functions that it can specify, and the sheer number of variables more or less guarantee that any hard-coded algorithm will specify the optimization problem improperly unless the AI designer can piggyback upon human solutions.

I'd address that problem by balancing around what we know. Ever since Firaxis pulled specialist slots from Libraries, Education has been far and away the single most important tech in the game for all peaceful win conditions. If you want to win by anything other than blood and fire, you do so by pushing Education, Renaissance and Rationalism. It remains a mystery to me that any AI seeking to win by, say, Diplomacy would do anything other than open basic infrastructure and military techs, then try to get Universities.

To put it another way: the primacy of Education isn't great game design from the player's perspective, but it does simplify AI coding. The implication is that there's probably some design tradeoff for single-player games between quality choice options and the ability of the AI to play the game. In the introduction to the Civ 4 manual, Soren Johnson argues that the job of a Civ designer is to maximize the number of interesting choices the player has to make. However, getting the AI to provide a robust challenge requires it to be able to navigate the set of choices reasonably well; if it can't do that, the only interesting choices to be made involve determining the path to minimize completion time or maximize score.

I don't necessarily think that we need to hard-code the AIs to deal with peaceful victory conditions (other than maybe :c5culture:) above and beyond pushing the tech tree. It would be nice if the AI could see a potential midgame military advantage, beeline the techs and convert it, but above and beyond that the tech tree recipe is pretty well known at this point. If the Deity AI ran the usual human beeline of Education -> Scientific Theory -> Plastics and rushed :c5science: buildings, it would be extremely difficult to win a peaceful race to Space or avoid UN defeat without attacking or leveraging diplomacy to suppress threats. That would be an improvement over the current scenario where we more or less ignore the AI except insofar as it can accelerate :c5science: via Research Agreements.
 
It`s all about the quality of programming. No one is asking for sentient or HAL AI. We know that good programming can simulate logical and reasonable computer opponents with even randomness thrown in to add that unprediactable Human flavour. It can be done.

I do believe there is a time cost though, the smarter the AI is, even with a really GOOD AI programmer.

Personally, I`d live with longer load times if the AI could be programmed well enough to deal with the average Human adequately on most levels.
 
Peaceful win conditions in Civ are fairly complex production functions, so it's not a surprise that the AI tends to muddle through it.

To optimize them is pretty complicated, but to follow a general set of behaviors that lead to them is much less so. Given the bonuses the AI has (and they are rather crazy in all civ games at high levels) even a rudimentary/canned approach at a given VC should be reasonably dangerous.

the sheer number of variables more or less guarantee that any hard-coded algorithm will specify the optimization problem improperly unless the AI designer can piggyback upon human solutions.

Firaxis seems extremely reluctant to piggyback human solutions, but should they be? For military victorys or diplo manipulation I can't see how you'd set that up (AI manipulating itself = self-selecting a winner), but the constraints to reach space, culture, or "gold" (IE buy out all city states) are relatively straightforward. It should be possible to give it a variable approach within a human framework. Even domination could show at least a rudimentary approach (with all its bonuses, "conquer all" is something guys like Alex should seriously consider).

I suspect the biggest barrier to this was actually the state the game was released in, however. It was so far from what it has become. They can probably make the AI stronger by implementing at least a little piggybacking now. IMO to some extent designers always do that based on what they believe will be effective in-game anyway. As I read your post more carefully, it seems you're actually advocating this in some capacity yourself though.

To put it another way: the primacy of Education isn't great game design from the player's perspective, but it does simplify AI coding.

I wonder. This might be the first civ where conquering massed cities isn't the by-far most dominant strategy. Although calling the happiness mechanic happiness instead of something else threw a good chunk of the fanbase for a loop, it's really the first mechanic that truly penalized wide empires to the extent of de-incentivizing them/making other approaches competitive. The single biggest factor there is the impact going super wide has on happiness --> tech rate. That's a gross oversimplification, but it's what it boils down to. If you could settle/capture 20 cites by 1 AD and hold the happiness enough to keep up in tech + grow those cities, it would be necessarily better just as it was in all of the previous games. Civ V is the first civ game that actually penalized tech rate as the empire grows.

You can debate whether that was a good choice or not, but IMO it's simply a matter of preference, that said its impact on the balance between war and peaceful approaches has been rather profound. "Early war sucks too much now". Perhaps, but how could they possibly make it so that the scale doesn't tip completely in the other direction again? I saw an interesting argument presented along these lines explaining a belief that the honor policy tree can never effectively be balanced, and in the framework of civ V that might actually be true unless its benefits veer away from purely military.

All that is a slight tangent though. You know and I suspect the design team knows the primacy of education. As you say; why is the AI ignoring this?!

However, getting the AI to provide a robust challenge requires it to be able to navigate the set of choices reasonably well; if it can't do that, the only interesting choices to be made involve determining the path to minimize completion time or maximize score.

Hmm, no joke. Still, I don't like the idea of presenting many choices and then making only a few ever be viable. It obsoletes the alternative choices anyway, and then the goal once again becomes minimized completion time/max "score". The existence of variable choice based on situation with incomplete information (while balancing cost for more complete information) is a if not the key element to a game like this being good or not IMO; it's the heart of the "strategy" in TBS. Without it, it really is a numbers game only and not one of identifying situation and making tough decisions. I don't think the #'s should be removed as a critical factor, but I also don't think they should be the sole draw if the graphics and historical theme is stripped away.

I liked Soren's focus on interesting choices and think it showed, however I continue to assert (even against his presentation to the contrary) that his choice with AI was misguided.

I do believe there is a time cost though, the smarter the AI is, even with a really GOOD AI programmer.

We've seen evidence that far more units can be handled arguably as well in less time. The suggestion to use the player turn for computations is a reasonable one also. However, even just basic things like calculating possible worker actions when the human selects the worker (used to happen, don't know if it still does) are really not defensible. At some point you're adding 10 minutes to wait times across a game for such a marginal improvement that most people observing the AI civ on the front end couldn't identify it. Civ simply hasn't put any emphasis on this at all; the theory has been put forth that not enough of the player base cares for them to bother with improving the run speed (I've not polled this directly, but anecdotally it seems I'm in an unfortunate minority, and who knows maybe they *HAVE* done their market research, though I doubt it. That area is a difficult one).

That's probably true, but it's still frustrating to me.
 
Working as a developer, i can say that from a technical stand point - civilizations is terrible. Absolutely horrible. They are by no means even close to having a good excuse this poor AI. It has nothing to do with optimizing time vs AI complexity. The AI is programmed just plain badly, both in its ability and its speed.
Actually, not just AI. The whole game is a technical mess.

Its sad that otherwise an amazing game is such a mess under the hood
 
I haven't noticed many complaints about the AI lately. On release I was disappointed with Civ5, but I accept that's the way it is now. I still enjoy Civ5, Im finding it enjoyably challenging after a having a haitus, I don't notice the problems I did on release, but at the same time I don't have such high expectations so maybe that's why I appreciate it more. No complaints here, but if they keep making it better then good for them.
 
Well I'm not going to have a rant about the AI, mainly because I'm not a skilled enough player to feel justified in doing so. But still you can't deny that it does some oddball things - here's one that amused me in current game:

Me: Monty, how about going to war with Alex?
Monty: not that again, No. etc.
(actually we'd never discussed it at any point in the game)
I click next turn and am informed that Monty has declared war on Alex...

Anyway the AI is currently more than smart enough to give me plenty to think about - but if I ever win a game at Deity level I'll be sure to post a thread moaning about how easy it all is! :)
 
Working as a developer, i can say that from a technical stand point - civilizations is terrible. Absolutely horrible. They are by no means even close to having a good excuse this poor AI. It has nothing to do with optimizing time vs AI complexity. The AI is programmed just plain badly, both in its ability and its speed.
Actually, not just AI. The whole game is a technical mess.
Its sad that otherwise an amazing game is such a mess under the hood

Exactly thing I expected to hear from developer. Thanks being honest.
Totally agree with your opinion.
And who want to say mess about reasonable turn times, must try Civ2 before.

It's even better question if Civ5 is unoptimised especially to provoke people buying expensive hardware. Though even i7 won't help on marathon because or poor paralleling.
 
From a developer, I would have liked to read what should (or should not) have been done to make it less terrible, it could help modders.
 
I'd be down for a 2 minute AI turn to make them a bit smarter. Especially around diplomacy and world council stuff. The AI hands you diplo victory on a silver platter when there could pretty easily be algorithms to make them just a bit more adept. For instance, if someone is approaching diplomatic victory or even just has more than half the delegates, the AI should put aside immediate self interest to bring them back under control. Any civ having a majority share in delegates should be a concern to all and maybe even have diplomatic penalties. Also, if the AI can't win an election for host, they should negotiate with an ally to pool delegates and get their ally elected in exchange for either a trade or for a favorable proposal.

The AI will never be good at warfare but it should at least be able to build counter armies. If you have a mostly mounted army, neighboring AIs should build spear/pikemen armies to counter, as the obvious example.
 
Working as a developer, i can say that from a technical stand point - civilizations is terrible. Absolutely horrible. They are by no means even close to having a good excuse this poor AI. It has nothing to do with optimizing time vs AI complexity. The AI is programmed just plain badly, both in its ability and its speed.
Actually, not just AI. The whole game is a technical mess.

Its sad that otherwise an amazing game is such a mess under the hood

I`m not a developer, but I could see that just from the way it plays. But it`s just accepted these days with nary a criticism.
 
I'm developer, but anyways, nothing like setting on firetuner and watching a pute AI game. There's much room for improvement. I'm pretty sure they have spent crazy amounts of time to evolver AI responsiveness and strategies, but still I feel AI can make it much better with some refinement. That's my opinion without anaysing AI decisions in depth, just watching them play through.
 
A lot of AI between-turn time is dedicated to brute-forcing all of its potential moves and constant unnecessary checks...and then it turns around and makes laughably terrible worker micro movements or poorly optimizes its yields anyway..

One small point that illustrates how little priority Firaxis gives getting the AI right is the algorithm that chooses which tiles to work. eg I switch from production focus to food focus and production goes up :confused: It's a small binary integer linear programming problem. Sure ILP problems can be NP-complete, but these problems are well studied and the instances that occur in tile allocation are small. It should be able to find the optimum in negligible time.

It's obvious they've put some work into the combat. It has improved considerably since the initial release, but I still see it do really stupid things that make no sense. For example, garrisoned units leaving a city under siege when doing so is fatal. Units embarking when it is suicide. Great Generals exposing themselves to capture. Hopelessly underpowered offensives. Bystander units. Sending settlers into combat zones. Fleets of aircraft carriers with no aircraft.
 
You guys aren't going to like it, but I don't think the AI gets better unless you do away with 1 unit per tile and go back to doom stacks. The AI will never be as smart as you. Forcing it to surround a city like it does now just lets you tear their army apart. With doom stacks they didn't have to worry about setting up before attacking the city. It's not as fun though, I know.
 
Honestly, I don't think AI is all that terrible, it's just bit predictable most of the time. I've seen them sometimes do things that real player would do (banning your luxuries in WC, refusing to give you open boarders if you're going for CulVic, declaring war if you have diplomat for CLbonus)

I love how they sometimes want to break your diplomacy with other civs. They ask you to denounce someone, if you do, you get diplo hit with your friend. If you don't, they denounce you and get diplo boost with the other civs.

The only thing that AI is terrible is using his military, especially naval\air units. He often suicide bombs it's bombers (never seen him wait one turn to heal them) and never sends any defense with naval units (like subs).
 
Top Bottom