 |
|  |
 |
|
polymths
|
|
Phoenix, AZ, USA
Jan 1970 time: 21:12
|
|
In a game such as Chess, it is obviously not okay that the computer "cheats" and plays by different rules. However in a game such as Civ, it is simply beyond the level of today's AI technology to expect that the computer AI can actually micromanage all the details that the human player would need to master.
The only way for the AI to match the human player is to "cheat" and I actually don't mind as long as the AI "cheats" by emulating what a human player could achieve under the same circumstances even if the AI requires shortcuts to do it (ie. "cheating")
For example, all expert players will build lots of workers and develop all tiles. But if the AI has to manage individual workers itself using "auto-worker" to develop its tiles, it will not achieve what the human player could achieve since most likely the "auto-worker" routine stinks. To get around this, simply have the AI city tiles "mature" through time at a realistic rate so that all AI tiles become developed over time. Of course it might be necessary to have some AI workers be visible so they can be killed and the tile "maturing" rate slowed down a bit but these visible AI workers would not actually be doing the tile improvement themselves!
Is tile "maturing" "cheating"? Perhaps. But if this method allow the AI to achieve what the human would achieve, then it is surely welcomed. It is a shortcut that is necessary.
The area where AI "shortcuts" (or "cheating") is sorely needed is in war. In Civ1/2, AIs simply send invididual units one at a time to get slaughtered peacemeal and are never a threat unless they are so overwhelmingly larger and more advanced. If the AI actually didn't have to do that and all attacks were "simulated" or "emulated" based on how a human opponent would do it, then the AIs would be much more formidable.
For example, instead of the AI actually manuevering individual units, a preset attack pattern with a realistic number of units would go into action at a realistic designated time. Once this designated time came, the human player would find itself under a coordinated mass attack.
These are but some examples of how the AI's work would be simplified by having lots of events "simulated".
|
|
|  |
 |
|
STING
|
|
Amsterdam, The Netherlands
Mar 1999 time: 06:12
|
|
In Civ1 you could clearly see that the computer was cheating, with triremes roaming the oceans without being close to the shore.. or they could build things faster.
Nah I won't like it.. Firaxis just has to come up with an intelligent AI, to make it challenging enough w/o cheating. If that's possible.
My two cents.
|
|
|  |
 |
|
polymths
|
|
Phoenix, AZ, USA
Jan 1970 time: 21:12
|
|
Just to clarify:
What I meant in the original post was that I see nothing wrong with the AI "cheating" in the sense that the management of the AI Civ uses shortcuts (such as tile maturation). Of course I would definitely mind if the AI has the ability to do things that no human player could do.
Let's fact it, it is extremely unrealistic to expect that the computer AI can actually maneuver each and every unit and micromanage all the details needed. I'm simply saying that the AI's decision making and management decisions are simplified and many aspects modelled or emulated to give the same effect as a human would achieve but without overloading the AI.
I'm saying the AI could "cheat" by simplifying its management so it needs to make far fewer decisions and managed fewer details than the human player would but at the same time ensure that the computer AI's outward appearance is realistic so that it is not accomplishing things that are impossible.
|
|
|  |
 |
|
Ralf
|
 |
Sweden
Mar 2000 time: 06:12
|
|
quote:

Originally posted by polymths on 05-03-2001 01:33 PM
Let's fact it, it is extremely unrealistic to expect that the computer AI can actually maneuver each and every unit and micromanage all the details needed. I'm simply saying that the AI's decision making and management decisions are simplified and many aspects modelled or emulated to give the same effect as a human would achieve but without overloading the AI.
 |
You make some good and valid points, Polymths, although some civers have a real hard time understanding the built-in unavoidable limitations of artificial intelligence! Thankfully, there are some AI-workarounds however...
Below is a cleanwrite from this link; http://apolyton.net/forums/Forum6/HTML/001531.html and it explains the basic limitations with artificial intelligence.
In this link, the idea of AI-shortcuts for better AI-city placement methods is promoted: http://apolyton.net/forums/Forum6/HTML/002067.html
"First of all, i DO agree what many AI-improvements can be done, in order to raise CIV-3 above CIV-2. I just think we average Civ-fanatic should be a little more aware of the built-in limitations in so called "artificial intelligence".
Artificial Intelligence has ONE major advantage over humans, and that is a huge advantage in pure numbercrunching capability. AI-Programmers can use this to setup a bunch of expressions, conditions and variables - then letting a flood wave of oncoming tasks fall through a logical boolean maze, and repeatedly getting relevant and speedy task-solutions.
By comparison humans alone compare rather pathetically (but only in terms of speed, that is).
There is a snag, however (that tips the scale heavily back in favor of the human player):
Considering today’s computer- and programming-technology, above approach only works really outstanding if the world is relatively confined (like the 8x8 square-world of chess), the variables are simple (only black and white tiles/pieces, and only 6 of the latter) and the rules are few and distinct (I don’t know how many rules chess has, but they certainly aren’t many, and there is nothing fuzzy about them either).
If any of above three factors (world size, possible variables and rules complexity) - not to say all three of them, is added to, the AI: s ability to "analyze several moves ahead" and "follow a game plan", with "intuitive" and "long reaching" tactical maneuvers, is SEVERELY limited.
To rub salt into the wound most Civ game-sessions take place - not in 100% known setup-enviroments (like in campaign games) - but, instead on random computer-generated maps, not previously analysed by the AI-programmer.
Thankfully, no one asks for an IBM Deep Blue-AI in the upcoming CIV-3 game anyway. Still, many of the upgrade-suggestions found on Civ-forums often ask for the impossible - an almost human AI, that "schemes" several moves ahead, and then moves around hordes of coordinated army-units, with tactical brilliance.
Why is it impossible (and perhaps also unnecessary)? To understand this we have to come to grips with the principal difference between human (living) intelligence and artificial (dead) intelligence:
What the human Civ-player can do (and the AI simply cannot do) is to literally OVERVIEW (experience) the game situation, and, within a blink of an eye, sort out huge parts of not-so-promising strategic/tactic solutions, and instead concentrate directly (and only) on those very few plans and ideas that actually DO seem promising.
We can describe this as a "bird eye sort out" ability, something unique the living (in our case; human) intelligence.
By comparison, the game AI (or any silicon-based intelligence for that matter) is 100% dead and non-experiencing (of course). It lives in a 2-dimensional "flat" world, figuratively speaking - by that i mean it cannot possible "overview" anything.
In practice this means that if a Civ programmer tries to create something "almost human" in terms of AI-software, he is forced to write an AI that meticulously analyzes and evaluates all the myriads of possible combinations of choose-, build-, upgrade and move-possibilities that each and every individual game-turn has to offer, no matter how irrelevant or less promising 95% of these possibilities are.
The reason for the latter, is (again) the lack of an living "bird eye-sort out" ability. Because of this, the programmers has to gather ALL possibilities BEFORE they can let the software evaluate and rank any appropriate countermeasures.
Also - he has to program it to analyze each-and-every of these combinations; at least 3-4 game-turns AHEAD! (or "deep", using chess-language). Again, remember that the AI cannot "overview" anything from above. To compensate it has to take the "flat world" approach in order to gather constantly changing game-situation data. Like in computer-chess.
This is (as we all know) not that difficult to achieve then it comes to a relatively simple and clean-cut strategy (perhaps more tactical) game like chess. But, in a MUCH more complex and option-divided game like CIV-3; the massive amounts of calculations involved to mimic any hardcore human Civ-veteran playingstyle is absolutely staggering and mind-boggling. Today’s programming-technology is simply too primitive, and our home computers are, at present state, just too slow to achieve anything near this.
Thankfully however, the AI difficulties for the upcomming Civ-3 isnt necessarily so struggling that it first seems. There are basically two reasons for this:
One is that above comparison with chess is - to a certain degree, misleading. Chess is in some ways a very different beast than Civilization. Then playing chess it can be enough to do one (1) bad tactical move in order to loose the entire game. Provided that the opponent is good enough he can exploite that single rash mistake ruthlessly and grind you into submission. In this respect chess (at least on the higher levels) is perhaps a 95% tactical game and only about 5% strategical.
Playing a turnbased computer strategy-game like Civ is a different story. If the human (or the AI-) player makes a few unadviced unit-moves - so what? Nothing that drastic will happen, that cant be repaired in later stages of the game.
One could argue that Civ is a 95% strategical game, but only about 5% tactical (give or take). Above is actually good news in terms of AI-developing. This means that the Civ AI developers can concentrate most of their efforts on tinkering with the overall strategical logistics, rather then wasting (to much) time on trying to mimic the human pathfinding and unit-moving tactics.
I have ALWAYS won the games over the AI primarily as a result of better logistics (= better resource management + more effective unit-improvement and city-improvement strategies). Strengthening the AI:s ability to handle the overall strategical LOGISTICS are the key to a better Civ AI. To summarize it in one famous semi-quote:
A successful AI civilization "marches on its belly" (Napoleon Bonaparte)".
[This message has been edited by Ralf (edited May 03, 2001).]
|
|
|  |
 |
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:12
|
|
quote:

Originally posted by Ralf on 05-03-2001 02:20 PM
In practice this means that if a Civ programmer tries to create something "almost human" in terms of AI-software, he is forced to write an AI that meticulously analyzes and evaluates all the myriads of possible combinations of choose-, build-, upgrade and move-possibilities that each and every individual game-turn has to offer, no matter how irrelevant or less promising 95% of these possibilities are.
The reason for the latter, is (again) the lack of an living "bird eye-sort out" ability. Because of this, the programmers has to gather ALL possibilities BEFORE they can let the software evaluate and rank any appropriate countermeasures.
Also - he has to program it to analyze each-and-every of these combinations; at least 3-4 game-turns AHEAD! (or "deep", using chess-language). Again, remember that the AI cannot "overview" anything from above. (snip)[This message has been edited by Ralf (edited May 03, 2001).]
 |
Ralf, although I agree with much of your post, I think the part above is clearly wrong in several places. Most badly in the assumption that an AI can never take anything but an exhaustive search of possible actions at the lowest-level view. This just isn't right. You can read about how to get around these limitations here: http://members.nbci.com/_XMCM/clash.../Model-AI.shtml
Of course what you get isn't Human, but at least it can take a big-picture view and act upon it. This makes the search space rather daunting with current technology, rather than basically impossible.
Unfortunately, some people have had trouble with reading the page above using Netscape, so I'll append the header of the discussion here, so if you're prevented from reading the whole thing you can at least get the flavor of it.
-Mark
Goals for the Clash AI are to give the player
as challenging a game as they would ever want. To achieve this we will
have:
[*]AI that thinks in 'Levels' about strategy,
from very high level down to small details. This is an
Hierarchical approach
[*]Levels will go from very abstract pictures
of the world at high levels, down to pretty accurate copies of the
world, for small things
[*]Corrections will be made in the higher
level AI to incorporate information from the more detailed AI levels
below it
[*]As much as possible, design the world
models in the game so they are easier for the AI to handle
[*]Use good rules-of-thumb (heuristics) as a
firm base for AI actions
[*]As much as possible evolve unique
strategies Beyond the heuristics using Genetic Algorithms
[*]Test AI strategies as much as possible
using Monte Carlo techniques (copy the world as that AI sees it; how
does the strategy play out in the copies?)
[*]Threaded AI that can take advantage of any
time not used by the world model and the interface
[*]Allow the player to give the AIs any
arbitrary advantages that they deem necessary
[/list]
|
|
|  |
 |
|
polymths
|
|
Phoenix, AZ, USA
Jan 1970 time: 21:12
|
|
I definitely agree with abstraction and "multiple levels of AI". This is key, I think. "Human emulation" is also key.
There should be certain preset routines that are used to simplify the game for the computer AIs. If tiles mature for the AIs automatically through time, then it doesn't need to be manipulating settlers around and improving tiles one by one. But as long as the maturing rate is realistic, the AI is "emulating" what the best humans would do.
If there are good, prewritten coordinated attack routines that the AIs call on, then it doesn't need to actually move around individual units to try to coordinate an attack. The AI would simply "order" an attack and the "attack routines" would look at the AIs tech, productivity, distance from the target and simply create and manage an attack. For instance, the "attack routine" might actually be only moving around a single pseudo-unit called "fleet" which represents the most powerful armada that the AI could have produced realistically in a certain given time. Then the attack routine simply needs to move around and manage a single unit called "fleet". Once the unit "fleet" arrives (or perhaps is intercepted) then the unit is unpackaged so that the player see all the individual units and the AI can manage the individual units again. In this way the computer could coordinate large attacks by creating pseudo-units internally to simplify its worldview and simplify the number of units it is actually coordinating.
Does this make any sense???
|
|
|  |
 |
|
polymths
|
|
Phoenix, AZ, USA
Jan 1970 time: 21:12
|
|
The other thing I hope people can comment on is the idea of a statistically modelled AI.
What I mean by this is, let's study successful human players and what that human can achieve. Then the AIs Civs simply develop along a statistical model based on strong human player(s). The AI wouldn't be building wonders, these would be "awarded" to the AI through a "wonder maturing" routine that gives the AI certain wonders at certain points in time (if it hasn't already been built). The AIs wouldn't be researching techs but techs would be "awarded" based on realistic statistical models.
The real point is this: Simply what the AIs need to actually think about by having a lot of things done "automatically" for the AI without the need for the AI to make decisions.
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:12
|
|
polymths:
I just don't think that you can make it appear realistic. Especially in the military area. As I understand your 'attack patterns' description above, the game would actually Need good AI to execute them! There is no such thing as a limited set of preprogrammed attack patterns that will suffice for most circumstances. And if the military AI is not sufficient, then having the AI armies mature at the same rate as a good players' would do no good! The AI will still lose horribly.
Furthermore, unless your statistical model is very good, you will lose the cause-and-effect relationship that's so critical to have the game feel right. Picture this. I've beaten the Zulus back to one city and am preparing my final attack when that one city builds two wonders, and 12 veteran knights suddenly appear to ham-handedly try and wipe out my army... I fear that kind of stuff is what you'll get. And damningly, if you don't go to those ridiculous lengths then the AI will get pasted anyway.
That said, given the complete inability of at least the previous civ programmers to achieve any semblance of intelligence in the computer opponents something's definitely needed.
Anyway, I don't think this is gonna happen, and I'm not much into purely theoretical discussions...
-Mark
|
|
|  |
 |
|
polymths
|
|
Phoenix, AZ, USA
Jan 1970 time: 21:12
|
|
quote:

Originally posted by Mark_Everson on 05-03-2001 08:49 PM
polymths:
I just don't think that you can make it appear realistic. Especially in the military area. As I understand your 'attack patterns' description above, the game would actually Need good AI to execute them! There is no such thing as a limited set of preprogrammed attack patterns that will suffice for most circumstances. And if the military AI is not sufficient, then having the AI armies mature at the same rate as a good players' would do no good! The AI will still lose horribly......
-Mark
 |
A "statistical" attack would actual not need good AI just realistic statistical analysis. Say you are at war with Zulus. They have a certain number of cities, a certain population, a certain theoretical productive capability, a certain govt, and are a certain distance from you. (Of course the Zulus are well developed because they have been developing "statistically")
Therefore, it is possible to determine that given Y years, it would theoretical be possible for the Zulus to mass N units for a mass attack. At year Y+T, the N units will arrive near your shores. But until year Y+T, no units are actually being manuevered or managed. At year Y+T, a "package" of units be assembled at that point based on the theoretical productive capability at year Y (the time when the fleet was theorectical supposed to be launched.)
|
|
|  |
 |
|  |
 |
|  |
 |
|
Cyberbugs
|
|
Sweden
Mar 2001 time: 05:12
|
|
I have posted this in a previous, quite small thread, so I may as well repeat it.
What I would like to see, is that the advisors "cheat".
By that I mean that they sometimes provide you with useful inside information. For example the military advisor may say: "Many nuclear missiles are being produced by different civilizations. I suggest you build some anti-nuclear defence."
This way the advisors don't just provide you with things that you are already aware of, like "your naval fleet is too small".
However, the inside information shouldn't be *too* revealing, of course, but it would very much enhance the usefulness of the advisors.
|
|
|  |
 |
|  |
 |
|
Ralf
|
 |
Sweden
Mar 2000 time: 06:12
|
|
Mark Everson quote:
Most badly in the assumption that an AI can never take anything but an exhaustive search of possible actions at the lowest-level view. This just isn't right.
You perhaps misunderstood my intention with that post.
My intention was/is NOT to imply that a better Civ-AI only can be created if one takes the most exhaustive search of possible actions, at the lowest possible level, each and every turn (and since that is practically impossible in a random-map mega-optional game like Civ; any hopes of a better AI is utterly futile. So lets all forget about it).
Above was NOT what I meant. I only stated that IF one stubbornly daydreams about a "humanoid passed-the-Turing-test" kind of AI that learns/re-values/re-adjusts its choices and strategies dynamically and automatically each and every turn - including how to move around AI-units with 100% human-player efficiency - THEN one can only be sure to achieve such lofty (and unrealistic) goal by executing that very exhaustive search of possible choices, at ALL levels at every turn - and several turns deep. Just like a high-ranking AI is forced to do in chess, by the way.
HOWEVER - as I mentioned further down in my previous post: One is that above comparison with chess is - to a certain degree, misleading. Chess is in some ways a very different beast than Civilization...
Well, it certainly is! Civ is MUCH more "wrong-move forgiving" then chess. Also, one dont necessarily have to analyse several moves ahead in civ, in the same abstract forehead-vrinkling ways as one is often forced to in chess. In this sence, playing Civ is MUCH more simple and straigthforward.
Also, as you mentioned yourself - there are many AI shortcuts and methods that one can apply. I have read through your "AI-list", and it all make sense. Cant argue against anything you suggest. I will only emphasize some of my own ideas:
[*] Most importantly is of course that Firaxis from the very start, tries to design and implement ideas in as "AI-friendly" ways as possible. Many added new ideas works for example like "double-edged swords", in the sense that they act equally as much on the human player, as on the AI-civs. But, because the human player always is prone to be the more active and expansionistic one - the burden often lies much more on the HP and then one the AI-civs. This is something the game-designer can (and should) exploit.
[*] The use of player-editable AI-build and AI-prioritize template-lists. I have often wanted to be able to "spoon-feed" the AI-civs through the text tweak-files, thus saving them from their own stupid selves as much as reasonably possible. For example by: Specify editable templates of what they should upgrade/build; units, CI:s and Wonders. Exactly which units & CI:s - how many/and in which order. Specify an indevidual forced-upon number of AI-cities each AI-civ MUST prioritize. Specify in which order AI-tech advances and what government-forms each AI-Civs should follow/prioritize. Specify how & how much AI-city areas should be cultivated. Specify how AI-cities should exploit excess wealth. Specify prefered Gold/science allocation, and so on, and so on...
Above AI-build and AI-prioritize templates means that instead of forcing the AI to “evaluate” and “choose” in which order this or that tech-advance, city-improvement and even single unit should be build – the whole AI evaluating process is BYPASSED as much as possible.
Instead the AI follows blindly a pre-made setups (templates) until something triggers it to temporarily take over direct command. You can compare it with a blind man being given exact blind-read instructions how to move around inside an unknown building. He can follow this pre-made template meticulously and rather effectively (with minimal of independent analyzing). If he never the less bump into something – he temporally put his blind-read map in his pocket, and starts to feel ahead and analyze the situation. Soon feeling confident, he can take the map up again…
Above, has to a certain degree already implemented in most strategy-building-games of course. But I want it to be done much more thoroughly and player-accessibly/tweakably then ever before in Civ-3.
[*]Ah! My lovechild! My favourite Civ-AI shortcut idea: The need for pre-game calculated AI-city placements, with all potential AI-city locations already invisibly layed out (like yet unlit red diodes that punctures a electric standalone touristmaps on big railwaystations), in conjunction with the map-generation. On manually created world-maps, these potential/invisible AI-city locations can be manually pin-pointed all over the map.
On which potential/invisible AI-city location (or unlit red diode) each AI-civ chooses to build its first capitol city, may very well be totally random as long as the starting-locations are reasonably far away from each other. Also, in which direction each AI-civ chooses to expand may also be random, or then they start to get contact with each other; according to varying non-foreseeable in-game factors.
It is however, then Civ-3 scenario-creators starts to make use of potential AI-city placements on their own maps, that this idea really showes off its advantages. Suddenly the Civ-playing scenario-creator gets a whole new time-dimension under his fingertips. Not only can he now exactly pin-point ideal potential AI-city locations (and distances between them): But he can also determing how each AI-Civ should expand into map-sections thats not yet uncovered in the beginning of the scenario - if they want to have that control, of course.
Read more in this thread: http://apolyton.net/forums/Forum6/HTML/002067.html (never mind the title, read on).
|
|
|  |
 |
|  |
All times are GMT. The time now is 05:12. Apolyton Time is 00:12. |
top of page
|
| archivepost |
|
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is ON
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|