dh_epic's AI Solution

Does this distinction resolve the AI problems I've discussed? (Read First!)

  • [b]Good Analysis, Easy Dilemma[/b]: I solved the dilemma by picking one over the other. (Post below)

    Votes: 0 0.0%
  • [b]Bad Analysis[/b]: That problem has no relevence to AI discussions.

    Votes: 0 0.0%
  • [b]Hated it[/b]: Not sure why.

    Votes: 0 0.0%

  • Total voters
    32
Haha, not to play the expert card or anything... but looking at Soren's GDC presentation, it appears we have a common background.

I got two Honors Bachelor of Science degrees. One, a specialist in Cognitive Science and Artificial Intelligence, and two a specialist in Human-Computer Interaction. Not the same as a Masters in Comp Sci, because I never went through some of the graduate level courses for computational theory and discrete mathematics and computer science. But the 4th year specialist courses in AI and HCI are the same courses the grad students take for their masters in Comp Sci.

So if there's two things I argue quite passionately about, it's about interface usability, and artificial intelligence. Although I'd definitely concede that I don't know *more*.
 
dh_epic said:
Although I'd definitely concede that I don't know *more*.
Aha, so you admit it.
nono.gif
 
Ha! Well, I think I know more than enough to make my point though. I'm sure the developers know more just by virtue of their experience, if not an additional year or two of education. But the point is still the same:

Deep blue, while great, might take a long time to develop.

Does deep blue play to win -- which involves psychotic, megalomaniacal behavior?

Or does deep blue play to show human emotions when it comes to diplomacy, like loyalty and grudges and a sense of moral pride? If this is the case, then deep blue cannot win -- unless you ask yourself, do you want to change the rewards and penalties in the game to make this a viable strategy? There are huge design implications for this.

I haven't come up with a "deep blue" model. But I've got something that would work -- they could do it rather quickly in Civ 3, even, if the architechture is flexible enough.
 
I have more to say on AI issues than is healthy, but I'll summarize it into a single line:

AI civs need to act coherently, gathering information from the world, analyzing it, determining what needs to be done, then allocating available resources to meet those ends.

To me, that is the key in making the AI competitive and "better." The problem the Civ 3 AI had was that it 1) lacked coherence in its actions and 2) allocated ends to resources (hmmm, we have a Worker... send him there!), rather than resources to ends like it should have (We have a list of x tiles that need to be improved, therefore we grab a Worker and send him there).
 
Therein lies the problem, though:

Acting coherently isn't profitable. It's much more profitable to judge the value of your alliances not by loyalty, but by power. "This person is weaker than me: attack". "This person is stronger than me, or equally as strong: avoid a conflict." Being incoherent is profitable.

But I do see what you mean, there's a lot to be gained from at least thinking ahead even in the most selfish ways. (e.g.: worker management) This takes a lot more processing than you think though.
 
Trip said:
I have more to say on AI issues than is healthy, but I'll summarize it into a single line:

AI civs need to act coherently, gathering information from the world, analyzing it, determining what needs to be done, then allocating available resources to meet those ends.

It should also be able to learn from its previous mistakes too.;) Anyway, I think that may be beyond today technology.

To me, that is the key in making the AI competitive and "better." The problem the Civ 3 AI had was that it 1) lacked coherence in its actions and 2) allocated ends to resources (hmmm, we have a Worker... send him there!), rather than resources to ends like it should have (We have a list of x tiles that need to be improved, therefore we grab a Worker and send him there).

I think Civ3 does have a list of x tiles that need to be improved; therefore, it often grab a worker and send him there (if that tile is in the middle of the battle field, so be it).:lol: Perharps, this subroutine needs to be fine tune a little bit. For example, if tile x is at the front line while we are in the middle of a war or something, don't do it.
 
Program the AI right from the start and it won't need to learn because it won't make mistakes. ;)

My point applies for multiple areas, not just Workers. ;)

AI declares war on neighbor without taking into account where its units are currently.

AI builds units without taking into account what it actually needs.

AI sends units to attack without organizing them or having a target planned out besides "whatever is weakest" - a problem clearly exhibited by playing ping-pong with AI units as they dash towards from one undefended city to another.
 
It's not as easy as it may sound...

The best way to do it is to program the AI from scratch with the intention of having it work a certain way. Once you have a complete AI then it's hard to change it to make it do what you want without a lot of work and possibly breaking something.
 
I've never taken the time to understand the AI... but if what you say is true and the AI basically makes up its mind about what to do based on the current state (with a few variables that might constitute memory -- like reputation, and a few priority queues) then the AI has a long way to go to do any kind of planning.

I'm not saying this to state the obvious but more to indicate that there's probably some serious coding to be done. You'd need some kind of mechanism that would build a "tree" of the next few turns and possible outcomes. So Trip would be right, you'd probably need to start from scratch.
 
I think diplomacy is the overarching issue of single player. That, too, involves the AI, but not along the lines drawn here.

This is the central issue for Civilization IV. Diplomacy is the heart of the SP game.

Since the AI (we assume and hope) will be built to competently execute all features and each AI civ will be playing more or less in the same way (there is only 1 AI playing each AI civ) what we really need is a way to effectively simulate good diplomacy between the AIs and the AIs and humans.

That's of course not to say the AI need to gang up, or need to be aware they are AI. One of Civ III's biggest achievements was the AI didn't care who was AI or human, they are equal opportunity attackers. What's needed is a diplomacy AI that can sort out threats, allies, and keep track of all these variables to make them create a coherent foreign policy, or as Sirian puts it, a coherent alliance system.
 
But here's the problem:

What's needed is a diplomacy AI that can sort out threats, allies, and keep track of all these variables to make them create a coherent foreign policy, or as Sirian puts it, a coherent alliance system.

Allies make you weak.
A coherent foreign policy is a weak foreign policy.

If Civ 3 were a parable, that would be the moral of the story. Megalomania pays.
 
Allies make you weak.
A coherent foreign policy is a weak foreign policy.

If Civ 3 were a parable, that would be the moral of the story. Megalomania pays.

How so? pure conjecture and the way human plays disagrees with that statement.

Civ III AI doesn't have a coherent foreign policy that's why its so weak. Read Sirian's initial reply again. He hit the idea perfectly. I'm merely agreeing and expanding on it.
 
Civ 3 AI is weak for a lot of reasons, and coherent foreign policy isn't one of them. If anything, the semi-coherence in its foreign policy makes it weaker.

I'll tell you what foreign policy the AI should have if it wants to win Civ 3.

If opponent = strong, then relations = peaceful, secretly cautious
If opponent = weak AND wars = 0, then relations = sneak attack
If opponent = weak AND wars > 0, then relations = peaceful
 
Civ 3 AI is weak for a lot of reasons, and coherent foreign policy isn't one of them. If anything, the semi-coherence in its foreign policy makes it weaker.

There's no proof of any coherence in the AI's foreign policy in Civ3 because it has none.

This is old news. I covered this stuff in my thread on AI suggestions which I'm tempted to revive. It's all explained there how the AI functions in Civ3 and how we suggests it be changed for 4 to be more interesting. Sirian and others made lots of comments there too that contradicts with your assertions.

Sirian put it best. In Civ1 and Civ 2 where the AI cheated extensively, the AI ganged up on you once you get powerful.

In Civ III, the AI dwaddles and do nothing while the human player play one faction against another.

We need something in the middle of these two extremes.

Where the action is is in the diplomacy and that's where I think they should really be improving the AI. Giving the AI Type A and B flavours sounds interesting, but I tend to agree with Sirian that it's probably not the best solution given the problems he pointed out in his threads.
 
Right. The most powerful AI is the one that has no coherence in foreign policy. In Civ 2 and Civ 1, mortal enemies become close friends and unite against the player. Even the player's closest allies side against him, because he's getting too strong.

Civ 3, the AI actually tries to use reputation and attitude as a model of its diplomacy. That's a thought process that makes the AI weaker.
 
At a conceptual level, a problem is civ is that most of the strategy is about when to have a strong military. Developement is a strategy to survive later because you think there will be little chance of needing tha tmilitary now. RUshing is the opposite, taking out opponents before they can develop. There is little or no inherent joy in making a civilization of enlightened scholars rather than warriors besides getting to the next tech.
 
OK, one interesting possibility is one I saw in SuperPower, where the AI doesn't know which nation is being run by the player, which means that, on balance, it treats all the nations the same.

Another poins is that I have no problem, in principle, with two AI civs ganging up on a more powerful human or AI civ-its just that (a) said ganging up should not HAVE to be military in nature and (b) such 'ganging up' should be a part of each AI civs broader foreign policy agenda. i.e. two nations who have previously spent the ENTIRE game engaged in brutal wars with one another will not suddenly drop everything in order to gang up against another civ JUST because the are becoming powerful. Factors like mutual trust and common interests, culture and government type should all play a part in the decision making. Hell, I can more than accept just outight greed as a motive for working together 'you help us to bring down Civ X, and I will shower you with gold and 100 turns supply of oil and coal' ;)!

Yours,
Aussie_Lurker.
 
The Mycenean city-states of Hellenes were definitely friendly in any terms. However, Illium was way too powerful so they decided it was better for them to take out this non-Hellenic enemy before going after each other again.
Sparta, Delphi, and Athens all teamed up twice because Persia was too powerful. There was little to no love in that relationship.
 
Back
Top Bottom