Slashdot Mirror


Talking 'Bout Game AIs

Steven sent over an interview Feedmag has got with the lead AI programmer for Black & White. He talks about some of the creature/villager routinues in the game, which is interesting for the game, but also interesting in terms of how much the world of AIs for games has changed in the last few years.

133 comments

  1. Re:Graphics, AI, and the Gaming Industry by Anonymous Coward · · Score: 1

    pshaw. Perceptrons & decision trees are not revolutionary. When they're dropped into a simulated microworld they can & do adapt impressively. This is hardly cutting edge AI, though. Not to detract from B its hands down the best AI in a consumer game.
    Academia needs to make it more widely known to the software industry that stuff like this has been available. There's no way you could drop the code into a robot & have it do anything at all - the hard stuff is the vision, adaptation - stuff that is hardwired into the game. (in B&W the AI doesn't have to see/recognize a person, the internal game state hands it coordinates & tells it that its item #5109 or whatever, that its been x hours since it has eaten. the AI walks the decision tree & pulls the appropriate perceptron for the situation).

    It works well here, but be careful claiming this is anything bigger than excellent game AI using well-known techniques.

  2. Perceptrons and Decision Trees by SEGV · · Score: 1

    First, some use the term perceptron not just for Rosenblatt's original classifier, but for any of a class of multilayer feedforward neural networks (which use the perceptron as their basis).

    Second, decision trees are another form of classifier used in machine learning. As others have noted, Quinlan's ID3 and C4.5 algorithms are the most popular.

    --
    Marc A. Lepage (aka SEGV)

    --

    --
    Marc A. Lepage
    Software Developer
  3. Re:Decision Trees? by Seth+Golub · · Score: 1

    AAAI has (or points to) lots of good introductory material on decision trees, and machine learning in general.

  4. Re:Graphics, AI, and the Gaming Industry by Seth+Golub · · Score: 1
    Cutting edge graphics, and killer AI always show up in the gaming industry before anywhere else.

    Hogwash. You just don't see it because you're not in the right place. I don't know about graphics, but good and practical AI techniques have been flourishing in logistics and data analysis, in manufacturing and distribution, and dozens of military applications, plus fraud detection, consumer incentive modeling, financial forecasting, and dozens of other areas that consumers don't directly care about.

  5. what the heck is B&W? by azatoth · · Score: 1

    There's no link in slashdot announcement nor in the "feed" article.

    BTW, this tends to generalize... no link to outside in articles, no easy way to find other information source than the current site...

    dead-end servers.

    --
    -- "Life is easier since I have excluded JonKatz stories from my homepage"
    1. Re:what the heck is B&W? by Edgewize · · Score: 1
      What cave have you been living in? Black and White is the latest game from Peter Molyneux (designer of Populous and Dungeon Keeper, formerly of Bullfrog).

      http://www.bwgame.com/
      http://www.lionhead.com/
      http://www.planetblackandwhite.com/
      Gamespot review (9.3/10)

  6. Think by Phil+Wilkins · · Score: 1

    What would a 100% increase on 1.0 be?
    What would a 50% increase on 1.0 be?
    What would a 50% decrease on 1.0 be?

    Now, what would a 250% increase on 1.0 be?

    1. Re:Think by Sir+Mix+A+Lot · · Score: 1

      What would a 100% increase on 1.0 be? 2.0

      What would a 50% increase on 1.0 be? 1.5

      What would a 50% decrease on 1.0 be? 2/3

      Now, what would a 250% increase on 1.0 be? 3.5

      --

      % rm * .o
      rm: .o: No such file or directory
      % ls
      %
      damn
  7. Making of Black and White by mahlen · · Score: 1

    Perhaps this long juicy piece on Gamespot will satisfy your curiosity.

    mahlen

    Velilind's Laws of Experimentation:
    1. "If reproducibility may be a problem, conduct the test only once."
    2. "If a straight line fit is required, obtain only two data points."

  8. Re:Somebody stop this before its too late by Mongoose · · Score: 1

    I of the future... I come for you... sarah conner...

  9. Re:Decision Trees? by r · · Score: 1

    Anyone have any insights into this "decision tree learning" that Evans mentions? It seems to me to be one of those fuzzy terms that could refer to any of a dozen things.

    yeah, i know what you mean. in my area, decision trees usually refer to simple trees of hierarchical dependencies - in order to satisfy the goal represented by the parent node, you have to satisfy the goals of all child nodes, in order. it's a very nice way to represent scripted behaviors (such as how to go about finding food, engaging in combat, etc.).

    i don't know what he means by learning there, but i'd bet i'm not too far off in suspecting the 'learning' part is just tweaking the weights on subgoals, so that the approach you used the most before would be the first one to try next time...

    i personally found that whatever learning technique got used in that game, it has significant problems with reward assignment. for example, i see my creature standing around and growling, and its hunger is about to peak. i feed it something and reward it. the game responds - "from now on, your creature will eat more when it's tired." but no, that's not what i intended! i fed it because it was hungry!

    proper reward assignment is a huge problem in all learning algorithms - which is why it's especially surprising that they would prevent the player from knowing what exactly he's rewarding the creature for...

    Like "perceptrons" -- unless he's actually referring to the algorithm described in Marvin Minsky's book of the same name

    i think he was just refering to neural nets without hidden layers - those were the ones described in the book, and the name stuck, at least in colloquial usage.

    but i don't have any inside knowledge (such a bad pun! :) about the workings of b&w. i could be wrong. :)

    --

    My other car is a cons.

  10. Playability of games by scav · · Score: 1

    Having loved the original Populous games and enjoy games such as SimCity, RedAlert, Championship Manager etc., it is easy to see that the visual effects of a game attract the buyers and reviewers but the cleverness of the game actually will make you play it for longer than the first month or two.

    Having AI take a much more active role recently in games can only be a great thing. After a while predictability in the games make them easier and less enjoyable to play. I for certain will be buying Black & White when I next visit the game store.

  11. Re:.25% of the CPU! Wow!! by raygundan · · Score: 1

    yeah... I know... I was just making fun of the article, not the lack of good AI in games. There are some really awesome game AIs out there right now.

  12. Re:The biggest problem I find with AIs... by Rainy · · Score: 1

    If you want to play a game that doesn't cheat and at the same time will almost certainly beat you, try chess programs. It can't cheat because all the pieces and moves are visible, and the best of them has beaten Kasparov ;-).

    --
    -- ATTENTION: do not read this sig. It doesn't say much.
  13. Re:Decision Trees? by dkm · · Score: 1

    Decision trees in the context of AI are inductive learning algorithms. They perform supervised classification.

    You provide them with a set training examples where the class of the example is known and "features" that describe the examples. The algorithm them tries to determine how to distinguish the different type of examples or classes. This is called supervised learning.

    There are numerious types of decision trees. The best know ones, find the best way to split the examples into seperate groups using a entropy based metric (such as information gain usually only using a feature at a time). This splitting continues until all the data have been split into pure groups or it is not possible to differential between members of different classes. (This is gross over simplification that ignore problems of overfitting the training data, ect.)

    Once trained, the trees can be used to classify unlabeled data.

    The have some advantages over neural networks in that the intial structure and the number of training iterations do not need to be specified. However, the have a harder time representing class boundaries that are linear combinations of features (e.g. class 1 if x > y, class 2 otherwise).

    C4.5 and CART are the best know decision trees. While there is a comercial version of c4.5 called c5.0(www.rulequest.com), the c4.5 source code is availible from http://www.cse.unsw.edu.au/~quinlan/.

    Tom Mitchell's book "Machine Learning" provides an excellent introduction to decision trees as well as other machine learning algorithms such a error backpropagation neural networks.

    I can't seem to find what looks like a good tutorial online quickly although I am sure that there must be one.

  14. Re:whoops by dkm · · Score: 1

    Multi-layer perceptrons are not limited to linearly seperable problems.

  15. Re:Graphics, AI, and the Gaming Industry by hattig · · Score: 1
    Not in some programming sweatshop at EA.

    I think a certain Peter Monyneax would be very offended to read that comment about his company.

    You know, a company where people come into work at 1pm, work until 5pm, go home for food, pub for fun, then back into work at midnight to work another few hours at the best time for coding!

  16. Design time includes that by Illserve · · Score: 1

    By design time I meant the amount of time people spend working on the AI, as opposed to the CPU resources it eats up while the game is running. This includes testing/tweaking.

  17. what are you disagreeing with? by Illserve · · Score: 1

    Of course they cheat. The only modern strat game I'm aware of that doesn't cheat is Europa Universalis and the AI is disappointingly easy to beat.

    1. Re:what are you disagreeing with? by Stonehand · · Score: 1

      It cheats too, I believe -- if memory serves, its fleets suffers no attrition. Obviously, this gives it a MASSIVE advantage in, oh, exploring the New World -- a human-controlled Colombus might easily vaporize before his explorations up and down the North American coast reveal a single province, whereas an AI explorer can simply wander around until all the terra incognito coast is revealed.

      There is also a slight suspicion that it may cheat in diplomacy or money.

      --
      Only the dead have seen the end of war.
    2. Re:what are you disagreeing with? by Telek · · Score: 1

      I was replying to your "there's no simple fix" statement.

      Look at it this way: The game sells 10,000 copies, and probably 50,000 people are using it. Assume they each play for 100 hours in the first month, for 10 games. That's 500,000 games and 5 million man-hours of testing time that the AI has to play with. Multiply that by a possible 7 AI players per game, and you're looking at 3.5 million games. These are conservative numbers, and by no means scientific (ok ok ok I pulled them out of my ass, but they're reasonable). I don't care if you have 500 variables to play with for an AI, or 5000. With 3.5 million games in the first month, your AI can have explored a LOT of ground towards figuring out what's good and what's not. It's like a distributed net concept for AI development. Man, I should patent this idea. ;-P

      --

      If God gave us curiosity
  18. Re:"To my knowledge... by Illserve · · Score: 1

    The outputs for a perceptron must also be known. The difference between a perceptron and a back prop, AFAIK is that there are multiple layers in a backprop, and therefore you need a more complex training algorithm to propagate the error backwards.

    But they both rely on error correction to learn.

  19. Re:"To my knowledge... by Illserve · · Score: 1

    That could be(re Hebbian), but my gut feeling is that they have figured out a tight and complete set of outputs and have figured out a way to use the error signal of god feedback to adjust the weights.

    But you're probably right that a back prop net would require a more uniform spread of the input space to accurately capture what it needs to.

    I guess what I'd most like to see is a way to use multi level networks, backprop or no. The capabilities of a perceptron are fairly meager, it can't even do XOR, which one would think is a fairly basic tenet of a decent AI.

    That article just struck me in the way it waved around these very basic AI techniques as if they were something to be proud of.

    But you can't argue with results. B&W is definitely interesting to alot of people, so they got something right.

  20. Re:Interestingbut Brief by TheSunborn · · Score: 1

    It was written in (microsoft visual c++)

  21. Other platform support. by TheSunborn · · Score: 1

    The text say:
    (it'll be available on other platforms shortly)

    Anyone who know what platforms he talk about?

    1. Re:Other platform support. by Edgewize · · Score: 2
      Try Black and White Center for some more information about these ports:
  22. Re:The biggest problem I find with AIs... by Sunthalazar · · Score: 1

    Actually one interesting thing about AI that keeps learning is that it can drive itself insane. At least that was the experience we had where I worked last. We had a neural network to control a highly non-linear system with a huge amount of noise. It would do well, but if you kept in on learn mode, it could develop some really serious quirks. It's possible it was just a bug in the NN code, but it was certainly an interesting "feature".
    It would also be interesting if you developed an AI through randomization and had it end up coming up with a completely non-intuitive solution that kicked. Although if that happened it's probably something that should be fixed with the way the game plays.

  23. Re:"To my knowledge... by Stonehand · · Score: 1

    Different problem. DirectX/OpenGL provide well-known APIs with well-known oft-repeated tasks to implement.

    For AI...

    a) Human factors are currently important. Deciding how to structure a neural net, for instance, is a bit of a black art. Ditto for a GA/GP. A card probably isn't going to help this *very* critical stage.

    b) Another limiting factor is feedback -- for supervised learning. That generally only is available through actual games... preferably with people, since a strategy that does well against a badly-coded AI could get trounced by a person. Adding a card isn't going to significantly speed up the number of games a person is willing or able to play to provide more training data.

    c) Sheer problems of scale. There's a LOT of bits to choose. For instance, try computing the number of valid Bayes net structures for, say, even 100 variables. It's not tractable to apply, oh, a distributed.net-style approach.

    And there are probably more people who can write little bits of code than can intelligently plan complicated recurrent neural networks, say.

    --
    Only the dead have seen the end of war.
  24. Re:The biggest problem I find with AIs... by Stonehand · · Score: 1

    A neural net is just a function fitter. It won't help you decide what functions to fit or how to use them. That's a long way off from planning...

    And real-time games such as FPS games, in particular, might be REALLY nasty; what constitutes a training instance, and where does feedback come from? If one picks up armor and then gets immediately fragged, how does one make sure that "picking up armor" -- if that's allowed in the input space -- doesn't get associated with negative consequences? And so forth.

    --
    Only the dead have seen the end of war.
  25. Re:The biggest problem I find with AIs... by Stonehand · · Score: 1

    ISTR that some bloke actually managed to pull off a dissertation involving a fully autonomous, non-cheating Netrek team. Heh.

    --
    Only the dead have seen the end of war.
  26. Re:Decision Trees? by Stonehand · · Score: 1

    C4.5, if memory serves, includes a pretty good example of a decision tree algorithm. Briefly, it's a tree in which each node queries one discrete attribute, and based on the value determinstically either provides a discrete output (a classification), or selects one of the child nodes for another query and decision.

    A common criteria for deciding which attribute to use for any given node is information gain ala Shannon -- the most informative attribute being selected.

    There are other foo, such as how you decide when to _stop_ splitting (overfitting is a problem if you let outliers and noise produce lots of spurious leaves -- and with noise you may not get a 'perfect' fit, anyway), how to prune the tree and so forth. You could perhaps modify the tree based on feedback -- or even maintain multiple trees using different criteria and weight them accordingly. Heck, one could probably encode a decision tree for a genetic program and use the player's input as part of fitness. *shrug*

    I suspect that it's similar in spirit to regression trees, but I've not used the latter.

    As for perceptrons, I'd be surprised if he *really* means classic perceptrons -- since those are linear combinations with the linear separability requirement and all -- instead of, say, multilayer neural networks of some form or another.

    --
    Only the dead have seen the end of war.
  27. Re:The biggest problem I find with AIs... by Stonehand · · Score: 1

    The devil's in the details. A fairly big problem is situational awareness; with a random-map game like SMAC, the choice of starting strategy should be heavily influenced by your surroundings and your neighbors. Heck, strategies even need to work around the amount of fungus near you... The variability in SMAC is further exacerbated by, say, Unity pods -- I don't recall if the AI ever goes for them, but the result can make a very, very big difference (good or bad).

    Maybe if it had, say, a LISP or Perl interpreter so people could easily try out even different functions and algorithms, let alone tweak parameters.

    --
    Only the dead have seen the end of war.
  28. Re:CPU time vs human time by Stonehand · · Score: 1

    ...and flexible game design itself. In particular, some games are highly configurable -- Space Empires IV, for instance, lets you redo the entire technology tree and a rather large number of other settings; even without that customizability, it would still be a highly complicated game. As a consequence, the number of variables that would be needed for, say, even non-completely-scripted ship design would be rather extreme.

    Perhaps 'completely reconfigurable' versus 'highly competitive AI' is a fundamental choice, and it's implausible to have both with current limitations?

    --
    Only the dead have seen the end of war.
  29. Re:Won't help as much as you think by Stonehand · · Score: 1

    Right. The pattern matching and unit coordination might be tricky. The AI might be able to judge that _overall_ its military is stronger, but that doesn't easily lead to figuring out the where, who, when and how.

    Taking the example of _Xconq_, for instance. In the standard game, one can use amphibious assaults; one could start with coastal bombardment of port cities via BBs; one could use bombers to parachute infantry into a nearby island to set up bases, and then send in air support to cover an eventual amphibious (or paradropped) invasion (a favorite of mine -- I've won games against the AIs, heh, without using ships at all...); one could use carrier-based air instead... and it all has to be coordinated well, because a transport or two of armor can be vaporized pretty easily. And amphibious assaults without air support are just asking for trouble...

    --
    Only the dead have seen the end of war.
  30. Re:Decision Trees? by Number6.2 · · Score: 1
    Could be "case based reasoning". A company I used to work for a loooong time ago used this to debug the electronics of cars (which car? well...it's named after a sign of the zodiac). It was a lot of OPS5 statements that boiled down to:

    if the car won't start, then

    1. check the battery (80%)
    2. check the wiring (15%)
    3. check the solenoid(5%)

    Or something to that effect. If the problem turned out not to be the battery, the program backtracked to check the wiring or the solenoid.

    A lot of it could be more complicated than what I've shown. I wasn't an AI guy (aum mani padma), just a grunt.

    I wonder how the compute power of a circa 1985 LISP machine compares to your basic 1GHz Pentium IV?

    --
    "If god did not exist, it would be necessary to invent him" --Voltaire
  31. Re:Somebody stop this before its too late by plague3106 · · Score: 1

    I know ALOT of people. I'd say you need to get out more, if you have nothing better to do then troll.

  32. Re:Somebody stop this before its too late by plague3106 · · Score: 1

    Haven't you seen Terminator?

    I have yet to meet anyone that HASN'T seen that movie...well T2 at least.

    Anyway, while i know that this post is supposed to be a joke, it is something that needs to be considered. Once something thinks for itself, there's no reason to believe that it won't come to the conclusion that it would be better off without us. It might simply see the 'tendancy to destory ourselves' in us, and decide to destroy us before we can take it down with us.

    Fortunatly, that kind of AI is probably still far off into the future. But there are many issues that sci-fi stories seem to address, even though those issues might not present themselves for a few years.

    The AI turned on human is found not only in T2, but 2001, Star Trek (Data's 'brother' Lore), the Matrix, the list goes on. If you can get past the bad acting, every week the Outer Limits seems to address some techno-nightmare issue.

  33. Re:Graphics, AI, and the Gaming Industry by GusherJizmac · · Score: 1

    Real can't solve any real problems. The theoretical stuff is all good, but it's not practical. You can't solve a planning problem in milliseconds while keeping the framerate up and having realistic looking characters. When people laud (sp?) the AI in games, it's not so much that an advance in AI theory has occured, but that someone was able to code AI in such a way that it's useful in a real-world application.

    --
    http://www.naildrivin5.com/davec
  34. Stupid freakin cow by y6y6y6 · · Score: 1

    Don't pick the cow. The cow is totally freakin stupid. Not only do you have to spend all of your time slapping it, but it spends all of it's time doing especially stupid stuff.

    Cow pulls up bush and throws it at villager [slap slap slap]
    Cow pulls up bush and throws it at food [slap slap slap]
    Cow pulls up bush and throws it at tree [slap slap slap]
    Cow pulls up bush and eats it [slap slap slap]

    Stop pulling up the freakin bushes! [slap slap slap]

    Jon Sullivan

    --

    Jon Sullivan
    www.jonsullivan.com
  35. Re:Tick Tock by palp · · Score: 1

    have you played the game?
    when's the last time you taught your tamagachi to terrorize a village?

    --
    -palp
  36. Re:"To my knowledge... by wannabe · · Score: 1

    Here's a couple thoughts:

    - Couldn't some company somewhere come up with an AI card. Think along the lines of the 3d accelerators 4 years ago. There could then be a stand set of APIs to interact with AI hardware linke DirectX or openGL.

    - What about an open-source AI project for use in games.

    Just my $.02

    --
    "Draw them in with the prospect of gain, take them by confusion." Sun Tzu
  37. Power Felt by Paradise_Pete · · Score: 1
    The article says to become the One True God you have to make your power felt. I was pretty excited when I read this, but I've just spent the last couple of hours searching and I can't find any felt anywhere. This is really frustrating. Can any B&W guru give me a hint?

  38. Re:The biggest problem I find with AIs... by Paradise_Pete · · Score: 1
    We heard you the first time.

  39. Re:Creature Learning? by jon_c · · Score: 1

    I don't think your evil because you're creature is throwing the peeps. That would make you're creature evil not you.

    it's very easy to slip to the darkside however. things like not keep your villagers happy, feeding your creature meat (not sure). storm or really any destructive mirecle will make you evil.

    -Jon

    yes, i know i can't spell.

    --
    this is my sig.
  40. Re:Other platforms by loki2eng · · Score: 1

    Actually, I'd like to run it on one of my Netware 5.1 servers.

  41. Re:The biggest problem I find with AIs... by BlackStar · · Score: 1
    Don't put all your faith in neural networks. As the article pointed out, it used perceptron (essentially a basic NN) for some things, competing fuzzy logic (group minds, I make an assumption there) for some, and decision trees.

    Neural networks do work well for some things, but there is ample documentation that in some complex situations, the NN may key and learn on parameters that are not key, but coincedental instead.

    tweak, tweak, tweak, rewrite, tweak, tweak, rewrite.... repeat as needed.

  42. Re:Decision Trees? Quinlan C4.5 and ID3 by lmsig · · Score: 1

    Check out the C4.5 and ID3 decision tree algorithms by Quinlan. I'm sure a search on google will result in many hits. These are some great academic examples of decision trees and I believe this type of algorithm is the "decision tree" that is being discussed.

    If that is too confusing then try to find and introduction to Machine Learning or Learning Theory.

    As for Perceptrons, in terms of "learning theory", that usually means an algorithm that can divide a set of data into classes. If these data are decision making attributes that algorithm will divide them into 2 (or more?) parts, then the specific action indicates which "type" of behavior this is... or something like that.

    --
    .plan!! what plan?
  43. Re:Decision Trees? by sgt101 · · Score: 1
    TDIDT (Top down induction of decision trees) is an oldfashioned type of machine learning. The intuition that it is based on is this: each item of data (event) has a class and a set of attribute values. The class might be "good" and the attributes might be "killno", "kissno". The values for "killno" and "kissno" might be "5" and "500". The root of the decision tree is a description that maps to the whole data set. A question is constructed at the root from the data set by seeing what the most "informative" or "significant" split in the data set is. So, if you have a situation where all "good" things have kissno>killno then the question at the root is "if kissno>killno branch 1, else branch 2". You can construct algorithms that use any criteria to do this, depending on the language that you choose, but the more complex the question, the higher the search complexity of finding a decision tree that maps to the data set. The idea is that you generate questions for every branch until you have a tree that has leaves with only one class - ie. good or bad.... DT's are ok, but they are exposed to structural risk, that is to say, they can become so complex that they overfit to the problem... a very bushy tree probably represents more information than the domain theory that it was induced from, and that information is probably just noise, so the tree will not generalise well to data from outside the original data set. Another problem is that dts are bad at catching data at the margins of distributions, because they tend to use measures based on statistical or information theory.

    Modern machine learning uses algorithms like Support Vector Machines, because these have properties that limit the sturctural risk. Alternatively you can use fuzzy neural nets, and these deal with marginal cases much better.

    Of course I have a number of unpublished algorithms that do better than both of these techniques... but I can't tell you about them, because I would have to kill you ;-)

    --
    --------------------------------------------- "In the end, we're all just water and old stars."
  44. Re:No! Don't eat the poop. by jallen02 · · Score: 1

    My GF thinks Counter-Strike is cool....

    To each their own :)

    Hehe

    Jeremy

  45. Re:No! Don't eat the poop. by jallen02 · · Score: 1

    Hehe yeah.. ok...

    Evidence: Article 1

    While this doesnt prove anything since its all the internet I can tell you with absolute certainty she is 100% woman :)

    Jeremy

  46. Re:No! Don't eat the poop. by jallen02 · · Score: 1



    I am [TV] Bah

    See here for her actual opinon :)

    Ehh she is Pre-Med so the blood thing obviously doesnt bother her :P

    Jeremy

  47. �Noddy decision system? by yerricde · · Score: 1

    The strength of B&W is that it went for a completely noddy decision system

    Why not a big-ears decision system? Or a plod decision system? Or any of the other characters from Blyton's Toyland? And wouldn't Enid Blyton Ltd. be after their ass if they actually implemented a noddy decision system?

    --
    Will I retire or break 10K?
  48. Interestingbut Brief by job0 · · Score: 1

    The article's pretty interesting but doesn't really go into too much detail. Does anyone know what Black and White would have been written in and what tools were used?

    1. Re:Interestingbut Brief by Yunzil · · Score: 2
      Does anyone know what Black and White would have been written in and what tools were used?

      Some of it at least was written in C/C++. I know this because I found a bug where if you click on a workshop that is in your area of influence, but which you do not control, you get: "Percentage complete: %3.0f%%". Someone didn't do their sprintf correctly. :)

  49. Re:Graphics, AI, and the Gaming Industry by yamla · · Score: 1
    What? Surely you are kidding? The AI in Black and White is interesting because it is far better than most computer game AI. But there's nothing revolutionary about it in the field of AI in general. They are using well-established algorithms that have been known about for years or decades.

    I'm not cutting down Black and White. I love that game, at least partly because of the AI. But let us not kid ourselves. Gaming is not in the least leading the way in the field of artificial intelligence.

    --

    --

    Oceania has always been at war with Eastasia.
  50. Re:The biggest problem I find with AIs... by leodegan · · Score: 1

    Computer AIs will never be able to compete with an experienced human opponent in today's strategy games, unless the AI is allowed to cheat. This is because current computer strategy games have nearly an infinate set of possible outcomes for a given state because of terrain/map features and the absence of information about unexplored territory and what other players are doing. These games are not like chess, which has a fairly limited set of possible outcomes and there is no absence of information about the current game state.

    CPU processing power will not help this situation. Brute force approaches will add little improvement to the AI. The quality of the AI is derived from the quality of the algorithms used.

    Good idea on creating a plugin-AI for a game ... its true that a game becomes stale as soon as the AI becomes stale.

  51. Re:Graphics, AI, and the Gaming Industry by lorenlal · · Score: 1
    Gaming has become so obsessed with AI and graphics and all the frills, that I'm getting really depressed about it.

    I can't wait until the games get bloated with individual player skins, that it takes 2 DVD's to install. (Just so they look just like they do in real life with injuries and scars too!)

    Can anyone guess what football game I've been playing most lately? Techmo Super Bowl.. NES style.

    Because it's more fun to play than ll these new ones.... Pretty sad.

    Never underestimate the stupidity of the individual, and never over estimate the intelligence of the masses.

  52. The Genius of Black and White's "AI" ... by Bigboote66 · · Score: 1
    ... is that they've never published (and probably never will publish) what the AI is supposed to do. Therefore, any errors in the AI code cannot be identified as such - everything is ultimately a 'behavior', whether intentionally programed by Lionhead or not.

    They've achieved programmer nirvana, where they can at last exclaim "It's not a bug, it's a feature!" and leave it at that.

    Reading the messageboard discussions for B&W reminded me profoundly of something: discussions I've had in the past with colleagues trying to deduce the inner workings of some third party technology that shipped without source code. All you can do is send rays into the black box and see where they come out.

    Black & White is the first game to have turned the art of debugging into a commercially successful entertainment form, which is why I don't need to buy it - I get plenty of that from 9 to 5.

    -BbT

  53. Re:Creature Learning? by L+Fitzgerald+Sjoberg · · Score: 1

    I want to take a moment to talk to all the kids out there. Sure, villager-throwing may seem like a "cool" thing to do for "kicks," but as Calle Ballz shows us, once you start, it's hard to stop. Or rather, to get your creature to stop. Don't end up like Calle Ballz. Don't throw villagers.

    --
    If you don't want my koalas, baby, don't shake my eucalyptus tree.
  54. Re:Level of regression by GlassUser · · Score: 1

    Moo?

  55. Re:Not to be picky, but... by ckedge · · Score: 1

    > So... A whopping 0.25% is now devoted to game AI? Step back.

    Now remember, that's the equivalent of 100+ Commodore 64's chugging away madly.

  56. Somebody stop this before its too late by 91degrees · · Score: 1
    Haven't you seen Terminator? For those that haven't, it is about a killing machine from the future where humans have been nearly wiped out by intelligent machines.

    This is the sort of careless thoughtless behaviour that caused it. They built an AI designed for war, these computer games programmers are designing AI's for synthetic battle. How will they know whether they are fighting in a game or reality? Have the Asimov rules of roibotics been added as a safeguard?

    If just one of these escapes, it could replicate itself and spread across the world using the internet. Humanity would be no more.

    Why can't we learn from these people?

    1. Re:Somebody stop this before its too late by kyrin · · Score: 1

      My only reply is: You are an idiot. Plain and simple.

    2. Re:Somebody stop this before its too late by Bonzaroo · · Score: 1

      It's still safer than Teletubbies.

  57. Re:The biggest problem I find with AIs... by wrinkledshirt · · Score: 1

    I think the biggest problem with AIs is that the focus of a whether or not something makes a successful AI is whether or not it beats you. I think that's a red herring because ultimately it leads the programmer to think that there's a right and a wrong way of programming AI, and where the AI fails, other things (like cheating) make up for it. It also leads to the programmer relying on techniques that'd lead to exploits by users. I think there's a huge difference between the sort of user that wants to play the game and the sort of user that wants to beat the game. You don't pick up a novel with the intent of rearranging all the words in ways that you like better. Why do some people then reverse-engineer their games? I guess because games aren't like art for everybody. Plus, I think, for those people, you're never going to satisfy them.

    I think that a successful AI model will attempt to model human thinking, and the wide variety of human thinking out there. Instead of trying to perfect Data, we should try making other artificial life forms to counter-balance him. It could end up that one of your life forms falls short, but this happens with people all the time in real life, so in a way, it's a bit of a success. Plus, it'll sort of lead to the success of life forms better suited to the environment that you've built, sort of like Darwin, which is also the way it is in real life.

    Instead of trying to force an image of ourselves onto the character, maybe we should try to force verisimilitude onto the situation the character is in.

    Just a random ramble.

    --

    --------
    Bleah! Heh heh heh... BLEAH BLEAH!!! Ha ha ha ha...

  58. Re:"To my knowledge... by FastT · · Score: 1

    This is a very interesting idea, though I don't know how feasible it is. Another idea is using something like distributed.net to precompute behavioral patterns for game AI, possibly using genetic algorithms to settle on certain strategies. Although precomputed behaviors may be more or less rigid, the breadth and complexity of them might compensate so that they appear to be life-like.

    --

    The only certainty is entropy.
  59. Re:Level of regression by Your+Login+Here · · Score: 1
    wonder if we're not just individual threads in some massive "Black and White II" game
    Black and White II is out of the question, unless of course one of your friends has been eaten by a giant cow that stands upright.
  60. Re:Level of regression by Rosonowski · · Score: 1
    No.... that would mean...
    That we have no individula thought...

    That we would all do the same things...

    Read slashdot....

    Drink caffeine

    Phew... we created linux. We wouldn't have ever gone againstthe grand windows if we were AI.

    --
    01101001 01100001 01101101 01101110 01101111 01110100 01100001 01101100 01100001 01110111 01111001 01100101 01110010
  61. Re:Graphics, AI, and the Gaming Industry by Fizzlewhiff · · Score: 1

    Are AI routines still computed during the vertical refresh with today's multi-threaded OSes?

    --

    'Same speed C but faster'
  62. Re:Does anyone remember... by matrix29 · · Score: 1

    And yet Galapagos had the WORST 3D camera work I've seen yet. The AI consisted of dumb-bug "walk around until I die" concepts.

    To duplicate this "AI" all one would have to do is make random path vectors of random lengths, prune the failed ones, and wander around once reaching the end of the last path (the bug dying)or interacted with.

    Then whip the camera around rapidly to preset vectors and locations to obscure the world as much as possible.

    The dang bug didn't even learn to time itself or learn from exploration or jump to avoid lasers. The game was an anti-game. Its sole purpose was to frustrate and enrage the player without any reward other than more frustration in the immediate future. Just like EVERQUEST (or NeverFun as I call it). It pretended to be a neural net and just was a vector tuner. It would be nice to see AI opponents with paged memory compares and squirrel learning (along the lines of "can I do this and survive?" "okay, that failed. Let me try it again or completely different.") which gives it weighted regonition of many viable patterns for its immediate and future needs.

    --
    "Face it, a nation that maintains a 72% approval rating on George W. Bush is a nation with a very loose grip on reality.
  63. Re:The biggest problem I find with AIs... by Bobo+the+Space+Chimp · · Score: 1

    > FPS games, like Quake and Unreal, succeed
    > because in multiplayer mode, you are going
    > against the best AI available - humans.

    I agree, although there is something to be said for the idiot-minded AI of Serious Sam on Serious mode. They just run at you by the dozens. Of course, you get the most powerful weapons of any FPS I've seen this side of a quadded Thunderbolt...quite the opposite of Unreal's AI, where they would avoid where you pointed, cool, but unrealistic.

    --
    I am for the complete Trantorization of Earth.
  64. Re:The biggest problem I find with AIs... by Rogerborg · · Score: 1
    • The problem with Quake bots as an AI challenge is that you can give them perfect aim

    Yup, that's the problem with most client/server games; they trust the client way too much. Don't get me started on peer to peer.

    Contrast with netrek, where having perfect aim can actually be a liability. Bot and borg clients would fire perfect vector torp streams every time - only to have their human target dodge gracefully out of the way every time.

    --
    If you were blocking sigs, you wouldn't have to read this.
  65. Re:CPU time vs human time by Rogerborg · · Score: 1
    • In my opinion, it not a CPU bottleneck that has kept AI at .1% of system resources, rather it's design time.

    I couldn't agree less. The bottleneck is test/tweak time, when you verify that your clever PhD thesis design actually produces reasonable/fun/competitive results. The strength of B&W is that it went for a completely noddy decision system, and spent the time tweaking it, and presenting the results in a fun form.

    --
    If you were blocking sigs, you wouldn't have to read this.
  66. Re:Won't help as much as you think by Rogerborg · · Score: 1
    • The problem is that being good at a strategy game involves much more than the variables you list

    Couldn't agree more. The B&W system is great for its own application, but it's just the back end driving a well defined set of gorgeous animations and sound effects and a neat physics engine. It's behaviour oriented, not success oriented.

    In particular, using a state machine with all possible behaviour hardcoded would get you reamed in a competitive game. We can see that in the Command and Clones, where the AI's biggest asset is the sense of pity you feel for it. ;)

    --
    If you were blocking sigs, you wouldn't have to read this.
  67. Re:The biggest problem I find with AIs... by Rogerborg · · Score: 1
    • It would be fun to load up Starcraft and go on BNet and start a game with someone and see if your computer program can beat them. Or even just playing your own AI to train it.

    A lot of quake bots were written to do just that, and netrek used to be a great platform for competitive AI's before it got left behind in the last ice age. ;)

    --
    If you were blocking sigs, you wouldn't have to read this.
  68. Re:CPU time vs human time by Rogerborg · · Score: 1
    • That's aka Reinforcement Learning. For decision trees, the feedback is the "evidence" that the tree has to explain, so presumably his system saves some/all of the feedback and intermittently updates the decision tree

    It's not even that complicated. The Creature uses a noddy state machine, tells you what state it's in (i.e. "hungry", "playful", "helpful"), performs an action, then waits a little after doing it. If you correct it, you're immediately effecting the last state transition check that it passed. You could implement it with one array of state transition values, a reference to the last one you passed, a "have corrected it" boolean, and a time to wait before entering the next state. It's a simple system, and it works extremely well. The strength is in the robustness of the design, and particularly in the presentation of it, and interface to it.

    --
    If you were blocking sigs, you wouldn't have to read this.
  69. Re:excellent reply by larryo · · Score: 1

    I grant both your points, but I don't think that the typical problem in game AI is _finding_ hidden relationships between variables, it's creating them!

  70. The AI is good, but... by Obliqueness · · Score: 1

    There really isn't a way to provide context for your actions, or to switch to a 'non-impression' mode. Mis-timings and general clumsiness have led to debacles

    And, there is no 'instinct'. Having to teach an animal to eat a type of food is kind of off. I'm rather disappointed that I've had to teach my creature to eat at all. There's that 'Creatures' influence.

    They should eventually learn to eat (x) by digesting what's good for them, and puking (yes, both ends of the creatures function properly) what doesn't, rather than puking food that is different from their 'normal' diet.

    Somehow, I managed to get my creature logic 'stuck', in that he wanted to kick a building, to the exclusion of all other activity. The leashes didn't work, food didn't work, beating him to within an inch of his life didn't work, so he kicked the building until fatigue and/or starvation set in, and he respawned in the pen, and was ok.

    Not to say I'm disappointed in the game. It's a great start; once it gets some gameplay it will be excellent. I'd like to know if other games use a similar interface. If Myth operated similarly, I'd still be playing it. I'd have killed for a smoother interface to view my Casualties! (hehe).
    ________________________________________________ _

    --
    The American Dream went to hell in a handbasket when someone decided that "The Customer" was King, and the customer beli
  71. ...continued... by Obliqueness · · Score: 1

    Speaking of clumsiness causing debacles...D'oh!

    There really isn't a way to provide context for your actions, or to switch to a 'non-impression' mode. Mis-timings and general clumsiness have led to debacles...

    For example, the creature feedback (slap/stroke) applies to the last action the creature took. If my creature does something else in the time it takes me to stop what I'm doing and interact, it's too late to do encourage/discourage that behavior. I risk confusing the creature, or worse, encouraging the creature to act inappropriately (in whatever context I've defined).
    ______________________________________________

    --
    The American Dream went to hell in a handbasket when someone decided that "The Customer" was King, and the customer beli
  72. Re:personally by Telek · · Score: 1

    I'd rather it did cheat than provide such an easy win.

    So what happens when you play a good game for 2 hours, only to run into an opponent that's 3 times your size, bent on destroying you, and you have no hope of winning? I get pissed that I wasted my time to get clobbered by a massively cheating computer AI, I dunno about you. Or to run into the computer player who, despite cheating, is still half my size, and I've already won the game before a single shot is fired. There rarely ever seems to be the middle ground where you run into an opponent that you can beat, but just barely. If that happened, then fine, let the computer cheat to get there.

    -- Telek

    --

    If God gave us curiosity
  73. Re:The article was good by Telek · · Score: 1

    nope!

    increasing X by Y yields X+Y
    increasing X by 250% yields X + 2.5*X = 3.5X, not 2.5X

    If you said "it was increased to a factor of 250% of the original then you're correct.

    no wonder our school system math scores are down the tubes. =P. Eh, I've done some pretty bonehead mistakes in my time too. My math prof walked out infront of the class one day and announced "usually x * 0 = 0, except on the last midterm you guys just wrote, where apparently it could equal just about anything."

    --

    If God gave us curiosity
  74. Re:.25% of the CPU! Wow!! by Telek · · Score: 1

    This is only true on action games. For other games that are purely strategy and don't require hardcore graphics capabilities (Moo2/3, Alpha Centauri to name a few) the AI has a lot more potential. See my other post =)

    --

    If God gave us curiosity
  75. Re:Graphics, AI, and the Gaming Industry by Telek · · Score: 1

    Ignorant indeed. Instructions are not one clock cycle each. I/O and memory concerns will also significantly slow AI down.

    Well excuuuuuuuuuuseee me. You know what I meant. 500 million cycles per second then, happy? Christ, get a legitimate beef if you're going to shoot me down. My point was that there is a lot of cycles between each frame, and you don't need to do collision avoidance and pathfinding EVERY frame. Once you find a path, it takes a few hundred frames to follow it. Even if something changes, it's unlikely you'll need to pathfind again until 10 frames or so later. Ditto with collision avoidance. I think the problem, as someone else stated, lies not in CPU resources but in programming resources and time. I doubt as though the AIs are nearly as optimized as they could be, if enough time was given.

    --

    If God gave us curiosity
  76. Re:CPU time vs human time by Telek · · Score: 1
    You see this is precisely where I disagree

    In my (ignorant probably) opinion, we're designing the AIs the wrong way.

    We start with a "decision tree", and figure out how to program the AI to do things "smart"

    AIs need to be able to change over time. If you make an AI that can learn, then this can happen, and during the design process you can teach it how to play better

    Yes, yes, I know. Everyone thinks that an AI that can learn is way too hard to make, but I disagree in these cases. And besides, properly developed once, it can be used for many different types of strategy games, to spread out the development costs.

    Consider this, for those of you who have played moo2
    1. What do I build in my build queues, and in what order?
    2. How fast do I start building colony ships?
    3. When do I start building war ships?
    4. What order do I research technology in?
    5. What type of planets do I take, and what do I avoid?
    6. When new tech becomes available (i.e. colony improvement tech), when do I build it, and which ones do I deem important enough to move to the top of the build queue immediately?
    7. How do I handle diplomacy with the other races?
    8. How aggressive am I? Do I ever attack first?
    9. Do I wait until I'm attacked before attacking others?
    10. Do I wait until I have a huge force, or just enough to start attacking others?
    11. Do I try to capture or kill the colonies? Which ones do I keep?
    12. Do I ever try to get out of a war? When? What do I do to get out?
    13. What weapons do I put on my ships, and how many different designs do I employ? Do I have missile boats and beam only ships, or a mixture of both?
    14. In space combat
      1. What ship do I attack first?
      2. Where do I place my ships that are attacking?
      3. Who advances, and who fires from a distance?


    I just came up with this list off the top of my head right now in about 5 minutes. Almost all of these questions can be answered with a variable holding a certain numerical value. With weeks to create this structure, I'm sure that I could come up with many many many variables that can take a value, and then all the computer has to do is observe the human player and how effective they are. Combine this with sharing of this information over the internet, and you can have an AI that would learn very quickly, and effectively too. IMHO of course. Again, see my other post, and I welcome constructive comments/criticism. -- Telek
    --

    If God gave us curiosity
  77. Re:The biggest problem I find with AIs... by Telek · · Score: 1

    Exactly... The AI never goes for the unity pods, and they give you a HUGE advantage. I'm assuming this because I routinely wander into enemy territory and pick up their pods. Also, I tend to save my artifacts for later in the game, when the free tech will really help. Usually right before I start building my army. There's many tips and tricks that I use, and the computer, since it has a static AI, falls, and falls hard all the time. Yeah, that's not a bad idea. Code AI params in a high level language that the users can edit, not bad...

    --

    If God gave us curiosity
  78. Re:The biggest problem I find with AIs... by Telek · · Score: 1

    oops I think I lied. I just realized that I've seen the computer with artifacts before. I know that they almost never go for pods in the oceans, and they don't make a point to go looking for them is what I probably should have said. As soon as I can get something that floats I send out scouts to find as many of these pods as possible. Always transports too, so that way I can catch artifacts.

    --

    If God gave us curiosity
  79. Re:.25% of the CPU! Wow!! by Telek · · Score: 1

    Really? Like which games for example? I'd love to find some more, good, strategy games.

    --

    If God gave us curiosity
  80. Re:Won't help as much as you think by Telek · · Score: 1

    I disagree. I've watched the computer play before, and quite frankly, the only way that they do any good is by cheating, big time.

    Take MOO2 for example. Play on impossible, go check out the race stats of your opponents, and add up the pick points. I've seen the psilons with +11 pick points in total over the maximum. Then I decided, hey, let's swap into hotseat and try to play one of the computer opponents. Check out their colonies. For example, when I loaded they were at +51 money, +11 food and 368RP. After clicking on the TAX rates, and not changing it, it dropped to -44. Food fell to -8 and RPs to 268. The computer couldn't even beat me with 7 pick points higher than I was, they had to cheat at every step along the game as well. I know all this, BTW, because I was playing one time, I had *ideal* starting circumstances, a abundant large gaia in my system, and 3 rich planets in the nearest star, and by the time I met the bulrathi, I had 7 colonies, and they had 18. No joke here folks. There was no way possible, even with mild cheating, that they could handle that.

    Also, when I captured their colonies, some of the races never even built facilities like Automated Factories, even though they had the tech. This is just plain bad AI programming. So they make up for it by cheating large.

    And for SMAC it's the same thing. I disected the save game format for the colonies, and they were putting their production levels WAY above normal, and never built the proper facilities. It was pretty depressing.

    With the current trend to get products out the door ASAP, I can understand why this happens. Finising a product at 80% completion, well, the last 20% probably largely contains AI stuff.

    Now I'm not saying that I'm the genious and everyone else is stupid, far from it. I'm sure that they have their reasons, and probably good ones, and insights that I don't have, but I don't see why it should be so hard. This is why I've been itching to discuss this, to see what other people think.

    --

    If God gave us curiosity
  81. Re:Graphics, AI, and the Gaming Industry by Telek · · Score: 1

    (ie. in a 30fps game, even with 10% of cpu available to AI, you have 3.3 milliseconds per frame to do all of your AI, including collision detection and pathfinding

    On a 500MHz machine, 3.3milliseconds is 1.65 million instructions. That's a LOT to do some work in, considering the level that needs to be done between frames (i.e. not a LOT). That's 49.5 million instructions per second, and an efficient design can do a lot in that amount of time. (IMHIOOC: In my humble ignorant opinion of course)

    --

    If God gave us curiosity
  82. Re:The biggest problem I find with AIs... by Telek · · Score: 1

    Although I don't agree with everything you said, you raised some good points.

    Why do some people then reverse-engineer their games?

    Why do people hack or crack? Why do people break into web pages and servers? (other than the prepubescent teenagers so they can deface disney and proclaim their undying love to their 13 year old girlfriends)... Cuz it's a challenge. Why do I take apart things? To figure out how they work. Why do I build useless robotic gadgets? Because it's interesting to create something. Why do I crack programs? Because it's stimulating and challenging (well, only some of the time). I took apart the alpha centauri save game file to see how it worked, learn about all of the things that it stores so I could better understand the game itself. I did the same with MOO1 and MOO2. Why do people play games? Most of the time it's nothing more than to waste time, really, but at least with strategy games you can exercise you're brain while you're at it. Am I insatiable? Maybe. You can't satisfy me with a static AI that will never change. Once you know the weaknesses, it's not fun anymore. And it's never fun playing against ANYTHING that cheats, even AIs. Sure it's still a bit of a challenge to beat them, but it's highly irregular. If I work for a few hours to build up my empire, then run into another one that's 3 times my size and I have no hope of winning, but it's only that big because they cheated like crazy, where's the fun in that? I know as soon as I meet a race in MOO2 if I'm going to win the game or not, so why do I keep playing? Hmm, I don't actually know, but it's fun anyways. If you created an AI that can change, so once I learn the tricks and go back to exploit them, it pulls my shorts up over my head and ties them in a knot. Now that would please me. And I don't think it's impossible. (I'm fighting back the urge to start the "I have a dream" speech =P)

    I think that a successful AI model will attempt to model human thinking

    I think you'd need to extrapolate on that one a little bit. In what way? I don't think that we'll be able to do something like that very successfully any time soon. What I had envisioned was designing the game while keeping AI in mind from the start, not designing the game then making the AI. There is only a fixed number of fundamental choices that one can make while playing a game, because one is limited by the versatility of the game itself. I'd like to hear from other people who routinely play strategy games, to see how their strategys have evolved. The rest of that paragraph I agree with entirely. It's evolution through randomization. Eventually you'll find something that'll work.

    As for why AIs vs AIs won't work, I don't know. If you play 1 million games with AI vs AI, and sort by the order of success, and replay the top, say, 30% with 70% more random guys for another million rounds, lather, rinse, repeat, you should be able to come up with some stuff that's good fodder to wage against real people. Sure, most of them won't work, but I'll bet that some of them will. Combine this with the ability to say, intelligently "randomize" future chances. For example, compare two settings that failed. If I expanded at rate X here, which was slow, and rate Y here, which was fast, and they both failed, maybe I should try (X+Y)/2, and see how that works. Yes I agree that's it is a huge task, but sit down a group of 20 desktop computers to pile through seemlessly ending "random" AI situations for a few weeks, and I think you'll come out with quite a few good things. Hey, you could actually set up a continuous system. If the computer is constantly finding strategies that seem to work, and analyzing the differences, etc, then human players could jump and play a game just like it's playing itself, the computer system that's testing the AIs treats it like any other chance, and analyzes how successful it was, and integrates it with it's future trials... hmmmm.... mind's a racing...

    You know, maybe it's not so much of an intelligent AI that I want, it just one that changes. One that'll throw a curveball into my works and screw me up. Have you ever played games to go on a suicide mission? I hate it when the computer opponents do that, because it's unfair and unrealistic, but as much as I hate to admit it, it's challenging to stop someone bent on killing you without caring about themselves, then turn around and face another 6 opponents not too happy with you either.

    I guess all of my stubborness here is based on the idea that when I create my strategy for a game, how do I do it? I play, take guesses, watch the computer play, and I fail. I try again, adjust my strategies, watch, fail, etc until I start winning, and I keep this up until I start clobbering everything. Then when I play against real people, I watch what they do. If they're better than I am, I take what they did and adapt my strategies. It doesn't seem like a very complicated process. Maybe I'm dead wrong.

    Also there is defintely more than one way to win a game, more than one successful strategy. In fact, there is probably hundreds of different methods that would all be highly successful. The point here is not to make a single computer game that can learn to outclass the single player, but take all of the games that are connected to the internet, and experiment. Allow the best methods to float to the top, and then the AI can evolve collectively, even if it's with help from people tweaking it. Like someone else said, I think it'd be really cool to be able to tweak settings in my AI, and wage it against someone else's AI to see how well it fares, or even wage it against someone else to see how it fares. I could then see what went wrong, adjust it, and try it again. Even if I'm behind the scenes, the end result is that you'd have hundreds of AI modules out there to plug into your game, and have them whoop your ass a few times before you could figure out how to beat them. It's like taking the best from person-vs-person play that you can do anytime, offline.

    okokokok I'll stop rambling now, I've probably tired a lot of you out by now. Actually I wonder if anyone will actually get this far down, I just previewed and wow this is huge. I could go on, but I might hurt someone. -- Telek

    --

    If God gave us curiosity
  83. Re:The biggest problem I find with AIs... by redcup · · Score: 1

    One of the best ways to have a program learn is a "neural network" - weighted relationships that can be changed to improve performace. As you traverse the decision tree, using this neural network allows for more dynamic decisions - if it worked last time, perhaps try it again. If not, try something else.

    Graphics make a game fun look at... but good AI makes a game engaging. FPS games, like Quake and Unreal, succeed because in multiplayer mode, you are going against the best AI available - humans.

    --

    RC
  84. BATTLECRUISER 3000 AD by Chris+Z.+Wintrowski · · Score: 1
    The AI for 'Black & White' pales in comparison to the genius of AILOG used in the mind-blowing BATTLECRUISER 3000AD.

    Yes! AILOG! The advanced neural net engine used to realise the limitless gaming multi-verses flowing from the imagination of the maverick games programmer Dr. Derek Smart, Ph.D, a genius of the first rank.

    AILOG - the most advanced AI engine ever used in a game - combines the sum of the last 40 years of European and Japanese artificial intelligence research. Dr. Smart, Ph.D has encapsulated the most bleeding edge, advanced AI concepts from across the globe.

    The birth of AILOG, however, was not without a great deal of pain. In a fit of creative rage, Dr. Smart, Ph.D violently ravaged a Coke machine, but it was a small price to pay for the insemination of the most advanced AI engine ever seen on the desktops of hungry gamers all around the world.

    Click here to experience bug-free gaming quality, excellence, and creativity: www.3000ad.com

    --
    - Chris Z. Wintrowski -
    [ Site ]
  85. This discussion has been debated by philosophers by jaquel · · Score: 1

    For anyone who really wants to know more about the possibility of artificial intelligences reraching outside there bounds, I suggest you checkout Hogo de Garis' "Moral Dilemmas and Ultra-Intelligent Machines". The article is mirroed here: http://foobar.starlab.net/~degaris/Artilect-phil.h tml

  86. Does anyone remember... by Have+Blue · · Score: 2

    ...a game called Galapagos? It was made by a company named Anark, which seems to have fallen off the face of the earth (anark.com is now a provider of web tools).

    Basically, you had a pet insect-sort-of-thing that you had to help escape from a 3D puzzle world. The trick was that you didn't control the creature, you only manipulated the environment and let the creature react to it. The creature was driven by Anark's AI technology with a buzzwordy name, but you could see it working. After it fell off a certain place a few times it would be reluctant to go back there, and would try to ignore your commands (you could poke it with the mouse) and get back to a safe place.

    Anyway, my point is that B&W might not have the most advanced AI in gaming history after all.

  87. Re:The biggest problem I find with AIs... by Sludge · · Score: 2

    The problem with Quake bots as an AI challenge is that you can give them perfect aim, making the challenge into one of who has the best gun when, which could then break down into deathmatch spawn points.

    Also, it's impossible with Q3 to get clientside bots to connect to the server as the protocol is unknown. You'd have to edit the DLL source that Id released, and getting two bots in one source tree is more than a whim.

    I would like to see an environment where the hardships in overcoming it would all lie on the programmer instead of a user, like with Quake's aiming. The general idea would be to have every decision be one of the type of 'no best answer' as opposed to Quake's aiming 'there is a best answer', at least for every hitscan weapon.

  88. the problem by mattdm · · Score: 2

    almost all of these questions can be answered with a variable holding a certain numerical value.

    The problem (and what makes these games fun) is that the answer to the question depends on more than a simple number -- they all depend on the state of the other questions, and all sorts of other factors in the game. It's the emergent properties that are interesting -- and that are hard to quantify.

  89. Re:The biggest problem I find with AIs... by Christopher+Thomas · · Score: 2

    There is a problem with having the AI play against itself though. I can't remember the exact reason but it can only learn so much that way.

    The problem is that the AIs will become good at beating other AIs - not at beating humans. If the competing AIs are all stupid in one particular way, they won't clue into it by themselves. Also, if you have deterministic AIs, you might enter a closed loop (endlessly replaying the same set of games with the same set of learning variations).

    Careful design of the AI can minimize these effects (e.g. by forcing speculation on random strategies to discover new techniques by brute force), but it's not easy and not very efficient most of the time.

    Humans are very good at showing AIs where the holes in their techniques are, so mixed human/AI games will provide the best learning environment for them most of the time.

  90. .25% of the CPU! Wow!! by raygundan · · Score: 2

    According to the article, game AI has traditionally been forced to use a meager .1% of the CPU in games, due to the huge resource requirements of making the pretty pictures. However, this has all changed with an earth-shattering 250% average improvement in the amount of CPU time allocated to AI-- leaving us with a remarkable .25% of the CPU dedicated to AI!! That's amazing!

  91. Re:The biggest problem I find with AIs... by Jerf · · Score: 2
    One is that you need one that learns. Before you flame me about this, let's think about this for a second.

    I'm not going to flame you. You are essentially correct. The problem is the practical difficulty.

    There is a backgammon program that learned, from scratch, how to play backgammon. It is now a world-class player. So clearly, we can learn how to play games.

    One little catch: The program played millions of games of backgammon with itself before it got that good.

    As you might imagine, Alpha Centauri is significantly more difficult then backgammon. Chess hasn't even been "learned" yet (all the best approaches I know have heavy dollops of brute-force searching). Plus, as the problem increases in difficulty, the time necessary grows. Ouch.

    It's a good idea, but we don't know how to do it practically yet. That's why B&W really is interesting to me; while the algorithms aren't necessarily ground-breaking, it is an interesting application of real-time AI in an environment where the AI really shines (as opposed to input difficulties).

  92. Re:Graphics, AI, and the Gaming Industry by Overt+Coward · · Score: 2
    1. time scales. as one developer put it, "if i want to use a new AI technique in a game, i have about two weeks to research it, and a month to implement it. any more than that, and i won't be able to justify the time spent on it to my boss."

    this is pretty standard in the industry, btw. otoh, it would take a skilled ai programmer easily more than a month-and-a-half to implement and debug an inference engine in C++. and you can forget about something like writing a compiler for building behavior-based networks - that takes too much time.

    Seems to me that there would be a niche for a company to invest heavily in developing a flexible AI framework to be used in multiple games. Or does something like an inference engine so much customization to a particular ruleset that this wouldn't be worthwhile?

    Otherwise, though it represents a big up-front cost, a company with a variety of titles, or a well-established series, should be able to spend a little extra time on AI and gain a competitive advantage.

    --

  93. Not to be picky, but... by KFury · · Score: 2

    "As recently as 1999, most games devoted only .1% of the CPU's resources to running the AI."

    ...snip...

    "According to a recent article on the game development site Gamasutra, an average of 250% more of a computer's resources are now devoted to AI."

    So... A whopping 0.25% is now devoted to game AI? Step back.

    Seriously though, processing power is a really weak way of assessing the sophistication of an AI. It's really easy to max out a chip on a neural net that ends up going almost nowhere, and a well-programmed behavior engine could create an extremely realistic AI on a Palm. Like most anything, it's all about the coders. It's great to see that more attention is being given to cognitive realism (Sims, B&W, etc.) instead of/in addition to kinematic realism (Trespasser, <insert latest FPS here>, etc.).

    I can't wait until this kind of dedication to learned and adaptive behavior makes its way to War/Star/foo-craft... Or Microsoft Bob...

    Kevin Fox
    --

  94. Re:No! Don't eat the poop. by revscat · · Score: 2

    i>My GF thinks Counter-Strike is cool....

    Propose. Today.

  95. Please Fix the Poopy AI by mojotooth · · Score: 2

    Can we get some AI routines that will keep the villagers from walking right through a four-foot-high piece of poop?

    I just can't be impressed with AI until then.

    --
    -- Mojo Tooth : exploring our world as only an idiot can.
  96. "To my knowledge... by Illserve · · Score: 2

    "decisions trees have not been used in games before".

    I'm willing to bet that's a load of bull. Maybe noone called it a "decision tree" but I'm sure there have been AI structures that perform exactly the same function in some game, somewhere. There have been *alot* of games, and they have explored *alot* of options. Maybe they didn't have 6 million dollars of personal cash make them famous like B&W, but they were still there.

    I was glad to see him acknowledging its limitations though.
    What he describes is nothing special to the AI world, very basic techniques. I'd like to see something more complex, perhaps a backprop neural net and adaptive planner (which would give them foresight) instead of a perceptron and a decision tree. For a single creature, the CPU hit would be trivial. The real limitation is the human time required to design it.

    1. Re:"To my knowledge... by larryo · · Score: 2
      "... that perform exactly the same function in some game, somewhere....I'd like to see...backprop neural net and adaptive planner"

      A perceptron _is_ a neural net, and if I understand Evans correctly, he's not saying that the use of decision trees per se is unique (it isn't), but that the game objects use perceptrons to weight their traversal of the decision tree -- which would be an adaptive planner. B&W is the first successful game that even comes close to demonstrating "real" AI techniques.

      You'd be amazed at the lack of AI sophistication that's shipped in games. As far as I know (and, just to establish some credentials, I was the founding editor of Game Developer Magazine, the editor of AI Expert magazine, and used to teach AI techniques at the Game Developer's Conference), no commercially successful game has _ever_ before shipped with an AI based on neural nets, genetic algorithms, true fuzzy logic, or even a "real" inference engine. There have been a few non-important games that have used non-adaptive neural nets and at least one almost-successful game that claimed to use GAs (Creatures? It was kind of like a Tamagotchi-- you raised these things in an environment and taught them how to catch food and so forth.)

      90% of game AI is based on finite state machines, decision trees, and scripting.

      In defense of game programmers, though, everyone thinks that it would be easy to "use a neural net" to control a game object. Generally not so. A neural net is a pattern-recognizer, not a symbol manipulator. Anything you can do with a neural net you can do with boolean operations, and a sequence of boolean gates is typically faster to program and execute. But what's clever about B&W, if I understand Evans correctly, is that NNs are used to weight the traversal of a pre-existing decision tree (i.e., the next time I "see" a fire burning, I am marginally more likely to cast a "Water Miracle"). That's a good design, since god games are enormously repetitive.

      The other type of game object for which I've been baffled that no one has shipped a neural network is in a fighting / fast reaction game, learning the player's bias (does he always break left and then perform an immelman?, does she always use a particular fighting move?), but most introductory books on NNs don't discuss neural nets that can handle temporal data. So there are a million game programmers who know enough about NNs to "know" that they don't work.

      A lot of games have also claimed to ship with fuzzy logic, but in every case that I have spoken with the developers, it turned out to be a probabilistic overlay on the results of some boolean operations, not the higher-order symbolic manipulation that characterizes "real" fuzzy logic.

      The Creature behavior in B&W is brilliant. Like the classic AI program Eliza, it demonstrates how ready we are to project "intent" and "consciousness" onto computational structures that are, in reality, not very sophisticated at all.

  97. personally by Illserve · · Score: 2

    I'd rather it did cheat than provide such an easy win. The scenarios are incredibly complex and challenging at the outset. But over time, human victory is assured if you can hold out long enough.

    It would be a great multiplayer game, but its nature isn't very easy to multiplay with.

  98. Won't help as much as you think by Illserve · · Score: 2

    It's not that the developers are stupid, they know how to play their game and they can usually fill in decent values for all of those variables.

    The problem is that being good at a strategy game involves much more than the variables you list. Learning to plan out attacks and spot weakness are not things that the AI can easily do, nor pick up from observation of a person playing.

    These are the achilles heel of AI in a strategy game, and there is no simple fix.

  99. excellent reply by Illserve · · Score: 2

    I'm aware that a perceptron is a neural net, but being limited to one layer really gimps its ability to generalize.

    But I think you sell neural nets short, while they are pattern recognizers, they are capable of finding extremely complex relationships between variables, relationships that are hard to code as boolean values.

  100. that's a nice idea by Illserve · · Score: 2

    But I think in practice it would prove difficult. Mining data from a set with so much variance in player skill would prove very difficult. And again, you still have the problem that figuring out a huge array of optimal variables is not going to give you a good AI. It will be better, probably, but still woefully inferior to a human. It all comes down to foresight and insight. Until we can put that into an AI, forget it.

    Actually, one way to make AI's challenging is to paly to the computer's strengths, real time games with lots of things to do are great for computers because they can handle it all. A human needs the game to go at a certain pace or they lose it.

    So Europa Universalis, for example, is a game that is much more difficult to win at if you don't allow pausing.

  101. Re:The biggest problem I find with AIs... by MarkKomus · · Score: 2

    Well writing a strategy game AI isn't like writing a novel, but its no small feat either. Take the time to consider everything you think of while playing a game. Yes 95% of it is probably set ahead of time, but that last 5% is what really sets an AI opponent off from a human one, and that's where the challenge in programming an AI is. An example is when I play games there are certain things I might consider a few turns in advance, while others I ignore. Having the computer decide what to consider in depth though is hard. Does it consider the long range implications of launching an attack or for expanding. It doesn't necessarily have CPU time to do both, just as a human only has so much real time to think about the situation. It's very easy as a human to quickly judge the situation and say "I'm pretty safe I'll expand for now" but telling a computer how to do that is much harder.

    The idea of the computer learning after every game is nice though. There is a problem with having the AI play against itself though. I can't remember the exact reason but it can only learn so much that way. What might be interesting is an internet site that could collect the AI's from many users games and combine them, distributing new AIs. That way every person playing against the computer is helping to train it.

    And I definatly like the idea of an API to build your own AIs or expand the one currently there. It would be fun to load up Starcraft and go on BNet and start a game with someone and see if your computer program can beat them. Or even just playing your own AI to train it.

  102. Since when do milliseconds matter? by Inoshiro · · Score: 2

    In 3.3 milliseconds, an Athlon 550 can go ahead and read/write ram a few hundred times, do a few hundred thousand instructions, etc. When you consider that it has 1 click tick every 1/550,000th of a second, 0.0033 seconds (or 1,815 clock ticks) don't seem like that short a period of time at all.

    Think of popular and succesful games: Half-Life had neat AI for the Marines. If it had just been the odd aliens and Sci-fi plot, I probably would've have played the game through twice in a row. That game performed well on a 300Mhz machine!
    --

    --
    --
    Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
  103. Re:Decision Trees? by Speare · · Score: 2

    Just a guess, but if each node in a tree was a decision (do I eat this?, is this compatible with my alignment?) and the left and right had strengths (60% sure I'd say yes), then you could tweak that bias as you monitored feedback from the actual outcomes.

    It's a bit more crisp and reflective than a neural net, in that you know the specific purpose of each node. In a neural net, it's hard to reflect: "why exactly did you make that choice?"

    --
    [ .sig file not found ]
  104. Re:Decision Trees? by Alpha+State · · Score: 2

    I can make a few guesses. Perceptrons and other neural networks basically map a set of inputs to a set of outputs. An external error is generated each time the network runs and the network is adjusted to try to reduce this error. In the case of a game the error would be derived from the success of the unit. Each sample theoretically drive the network to minimise the error, however it is a rather random process, especially with such a non-linear system.

    The real problem is to choose the right inputs and outputs for the network, and to get the thing to actually work. The inputs and outputs must be general enough that the network can analyse them, but specific enough to represent the environment and control the unit.

    As for decision trees, they would be useful to breaking down the situations a unit is faced with, and isolating them so that the decision making is effective. It also provides a look ahead mechanism to try to predict what will happen. The decision tree would be the main memory of previous experiences. I think in the case of a game it would be very difficult to recognise similar circumstances to fit branches of the tree.

    AI is a very interesting area, and not really that difficult to get started in. I suggest looking up some of the terms on the net and seeing what turns up, although a good textbook will be much better.

  105. Re:No! Don't eat the poop. by haystor · · Score: 2
    My wife normally plays the Sims, building huge elaborate houses with intricate themes. That is, she doesn't like games with conflict. I'm trying to transition her to a more combative game, and I convinced her to play Black & White because a good portion of it is just playing around.

    She's cruising through the tutorial having a great time when she is supposed to bring a rock back to the village sculptor. She fails to zoom in far enough, and drops the rock right on top of him. "No! I didn't want to kill him. Oh, no." She quits the game, turns off the computer (we never turn the computers off), goes downstairs and crawls under the covers.

    Someday people will realize this is what its like to "play like a girl" and write a game accordingly.

    --
    t
  106. Article about AI researcher using Quake by regen · · Score: 2

    An another article discusses how an AI researcher is developing bot's with cutting edge AI.

  107. little wooden boy? by yerricde · · Score: 2

    The Creature uses a noddy state machine

    So that's why my character acts so wooden.

    --
    Will I retire or break 10K?
  108. Re:The article was good by yamla · · Score: 2
    Acck, I'm going to get flamed for this. But anyway.

    A 250% increase in 0.1% of CPU time means it goes to 0.35%. Learn some simple math, yeesh.

    --

    --

    Oceania has always been at war with Eastasia.
  109. Decision Trees? by DeadVulcan · · Score: 2

    Anyone have any insights into this "decision tree learning" that Evans mentions? It seems to me to be one of those fuzzy terms that could refer to any of a dozen things.

    Like "perceptrons" -- unless he's actually referring to the algorithm described in Marvin Minsky's book of the same name, which would actually surprise me quite a bit, based on (what little) (and I mean little) I know about the book.

    Seems to me that a "decision tree" is a simple deterministic programming construct, so the real interesting part would be how you change it in response to stimuli. Anybody have any inside knowledge (grin) on what he's actually doing?

    --

    --
    Accountability on the heads of the powerful.
    Power in the hands of the accountable.
  110. Level of regression by GlassUser · · Score: 2

    You know, this game is starting to make me wonder if we're not just individual threads in some massive "Black and White II" game, a la Thirteenth Floor. Forget Descartes, can you think non original thought is actually original if you're programmed to ignore the source?

  111. Re:Graphics, AI, and the Gaming Industry by dstone · · Score: 2

    Are AI routines still computed during the vertical refresh with today's multi-threaded OSes?

    You'll have to ask the task scheduler of the OS when it's executing the AI threads, now. ;-) Of course, "vertical refresh" is a CRT concept, so fortunately, developers can simply draw or blit into abstract frame buffers. OS drivers then get that bitmap representation onto a physical screen (LCD/CRT/VR goggles).

    Joking aside, I recall not too long ago having to count cycles to keep my AI code from "leaking" outside of the vertical refresh period on a Game Boy.

  112. Re:Graphics, AI, and the Gaming Industry by fantom_winter · · Score: 2
    Real can't solve any real problems. The theoretical stuff is all good, but it's not practical. You can't solve a planning problem in milliseconds while keeping the framerate up and having realistic looking characters. When people laud (sp?) the AI in games, it's not so much that an advance in AI theory has occured, but that someone was able to code AI in such a way that it's useful in a real-world application.

    Duh.

    The point is that the theoretical stuff is what is the bleeding edge, not the gaming industry. The fact is that they don't pick up on stuff until its well past the theoretical stage.

    Immersion is one thing, games do it rather well, but the study of AI isn't all about "wowing" the audience. It is a serious mathematical, philosophical, and electrical study of the limits of computer programs. The gaming industry doesn't have time for this stuff. They are busy making money, like they should be.

  113. Re:Graphics, AI, and the Gaming Industry by fantom_winter · · Score: 2
    Lets face it. Cutting edge graphics, and killer AI always show up in the gaming industry before anywhere else. They continue to impress us. Unfortunately, people think this is more important than gameplay, but I digress. Graphics were the fad the past few years, but perhaps AI will be the new fad for the coming years...

    Nor really... The AI in games is minimal at best when compared to the capabilities of AI in a theoretical sense. The problem is that AI is difficult to design and takes alot of time, and developers are out to make money, so they invest in technologies that will immerse the player in the game to get them addicted to it.

    Its a new type of addiction for me, because I'm not playing to see how far I get, or see how big my avatar will get, its to see what he does next when he's off my leash. Was he watching when I was throwing the rocks, and start throwing villagers? Was he watching me pickup and move villagers to do the same?

    So, it may be a long time before some really sophisticated AI gets into games, if ever. Think about it, if a chess computer can beat the world champion, don't you think there are strategies in many of these games that would be similarly difficult to beat?

    If you want cutting-edge AI, don't look at games, look at OSCAR at the U of Arizona, or at the MIT Media Lab , or at the stuff going on at CMU or RPI. That's where the real progress and research is being done. Not in some programming sweatshop at EA.

  114. No! Don't eat the poop. by Bonker · · Score: 2

    Wifey: Can I see your new game? Me: Sure. It takes a long time to load, but here... Wifey: Oh! She's so cute! Me: It's a he! And my creature is not cute, he's 'neutral'. Wifey: What's he doing. Me: No, don't poop on the villagers! Bad boy! Wifey: Oh my god! He's about to eat that little girl.

    --
    The next Slashdot story will be ready soon, but subscribers can beat the rush and slashdot the links early!
  115. The article was good by cavemanf16 · · Score: 2
    I liked that article. It helped explain why my villages behave so differently in B&W. One village is always begging for food, and can't stop having children, while the other village is the exact opposite. It is so interesting to see the severe divergences in group and individual AI behavior patterns based on only .25% of the CPU's computation time!

    Since I've been spending all my time on the 3rd level of B&W lately, I haven't gotten the chance to do much creature training. But just watching how the villagers act on their own, and develop their own 'community' is quite interesting. What will be really interesting is to see all the new offshoots of this game, much like CounterStrike was to Half-Life. And as a previous poster mentioned, gaming always pushes the envelop of what a PC is capable of, so it should be a joy to watch PC AI evolve over the next couple of years.

  116. Re:Graphics, AI, and the Gaming Industry by r · · Score: 3

    Seems to me that there would be a niche for a company to invest heavily in developing a flexible AI framework to be used in multiple games.

    several independent developers have tried that - and the game ai page has links to pretty much all game ai sdks attempted thus far.

    the problem is that while high-level ai can be pretty general, the low-level ai (pathfinding, collision detection, world physics) is completely tied to the internal representations of the world inside the game engine. it's a similar problem that you have in physics sdks.

    also, given the game development characteristics (18-month dev cycles, ai being one of the last steps in development because it requires a working game engine), it's rare for studios to design a game in such a way that a general solution like an ai sdk could be just 'plugged in' that late in the development cycle. unless the workings of the sdk are well understood, it's easier to just build your own (especially if you're not doing anything complex).

    on the other hand, if a company with a hit game licenses their ai engine to others, that would be a big step in the right direction - the same way that id and epic licensed their graphics engines after the success of quake and unreal. and sure, many studios will write their own anyway, but those who don't want to rewrite a* for the nth time could instead concentrate on writing high-level behaviors. :)

    --

    My other car is a cons.

  117. Re:CPU time vs human time by Black+Parrot · · Score: 3
    > The amount of human time required to develop and debug a proper AI, one that makes a significant use of computational resources, is enormous.

    IMO, machine learning (ML) is the way to solve this.

    And that's what Evans is doing here:
    When your monster does something good (or at least something that you want it to keep doing), your Divine Hand literally strokes it; when it does something incorrectly, the same Hand of God smacks it. Eventually -- ideally, anyway -- it grows into an active extension of your will...
    That's aka Reinforcement Learning. For decision trees, the feedback is the "evidence" that the tree has to explain, so presumably his system saves some/all of the feedback and intermittently updates the decision tree. If you give consistent feedback, it should converge to a point where your monster can guess what the outcome of an action is, and thereby avoid the smacks. As a side effect, it looks like it "knows" what you want. Similarly for perceptrons / neural networks.

    The bit about Moore's Law is certainly apropos. I recently ran a genetic algorithm program that searches for good solutions for the travelling salesman problem, and on a late model x86 desktop system the program was evaluating 1000 candidate solutions a second for a 2000 city problem. Our resource-intensive GUI desktops obscure just how fast our desktop supercomputers really are.

    Also, contrary to what someone suggested in another thread, games are not the state of the art for AI. You can easily find tons of papers on this kind of stuff with your favorite search engine, and in some cases download the code for the program described in the paper.

    That's not to knock it; games will probably be AI's killer app.

    --
    --
    Sheesh, evil *and* a jerk. -- Jade
  118. Re:Creature Learning? by Grendel+Drago · · Score: 3

    Have you been smacking the shit out of your creature when he does that? My creature ate a villager once, but I beat him stupid (it's a guilty pleasure... I'm good, honest!) and he hasn't done it since.

    -grendel drago

    --
    Laws do not persuade just because they threaten. --Seneca
  119. CPU time vs human time by Illserve · · Score: 3

    CPU's these days are more capable of provididing good AI than they are given credit for. In my opinion, it not a CPU bottleneck that has kept AI at .1% of system resources, rather it's design time. The amount of human time required to develop and debug a proper AI, one that makes a significant use of computational resources, is enormous.

    Therefore, it's done half-assed. I don't blame the developers for this, they are operating in a market in which the average selling game loses money, so they are under alot of pressure to cut corners. Truth to be told, a crappy AI is probably not going to cripple sales of your game too much (unless that's the central theme like B&W).

    We're going to need to see the computer industry actually become profitable before we see more decent AI like B&W.

    Note thet B&W was developed with personal cash from Peter, and therefore wasn't subject to the same tight budget/publishing requirements that most games are.

    It's a credit to Lionhead that they got the product out the door without a publisher breathing down their neck.

  120. Graphics, AI, and the Gaming Industry by FortKnox · · Score: 3

    Lets face it. Cutting edge graphics, and killer AI always show up in the gaming industry before anywhere else.
    They continue to impress us. Unfortunately, people think this is more important than gameplay, but I digress. Graphics were the fad the past few years, but perhaps AI will be the new fad for the coming years...
    I have a small background in AI, and I must say, I have played Tribes2 only once (had it since it was released), because I'm so extremely impressed with the AI for Black&White (if you haven't played it yet, go grab yourself a copy!!). Its a new type of addiction for me, because I'm not playing to see how far I get, or see how big my avatar will get, its to see what he does next when he's off my leash. Was he watching when I was throwing the rocks, and start throwing villagers? Was he watching me pickup and move villagers to do the same? Its one of the first games I enjoy playing without touching the keyboard... I just watch what he'll do next...

    --
    Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
    1. Re:Graphics, AI, and the Gaming Industry by r · · Score: 5

      Academia needs to make it more widely known to the software industry that stuff like this has been available.

      academia has been trying. :)

      there are (at least) two big problems in migration of ideas from research into development.

      1. time scales. as one developer put it, "if i want to use a new AI technique in a game, i have about two weeks to research it, and a month to implement it. any more than that, and i won't be able to justify the time spent on it to my boss."

      this is pretty standard in the industry, btw. otoh, it would take a skilled ai programmer easily more than a month-and-a-half to implement and debug an inference engine in C++. and you can forget about something like writing a compiler for building behavior-based networks - that takes too much time.

      2. different priorities. academic AI traditionally focuses on different things that games. in academia, working systems matter, but they're vehicles for the theories and techniques, which are the real crux of the matter. the programs can be slow, and they can consume vast resources, as long as they provide a novel insight into how human mind or human behavior works.

      games, otoh, run under tight performance constraints (ie. in a 30fps game, even with 10% of cpu available to AI, you have 3.3 milliseconds per frame to do all of your AI, including collision detection and pathfinding!), and its goal is not scientific insight, but believability - the creatures can be dumb as buttons, and they can be directed by simple finite state machines, so long as they look like they're doing something cool.

      with such different goals, it's not clear what can be done to bring the two closer together. for now we can just hope that if more game developers had formal training in AI techniques (as opposed to learning AI by hacking FSMs or NNs or whatever the fad-of-the-day is), and more academics were aware of constraints of the gaming industry, it would foster a better cooperation and exchange of ideas...

      It works well here, but be careful claiming this is anything bigger than excellent game AI using well-known techniques.

      amen to that.

      --

      My other car is a cons.

  121. A different take on Black & White by isomeme · · Score: 3
    The Brunching Shuttlecocks explain the lessons of Black and White.

    --

    --
    When all you have is a hammer, everything looks like a skull.
  122. Creature Learning? by Calle+Ballz · · Score: 3

    I threw one villager into the ocean. ONE! My creature happened to be standing nearby. Now even though my power is strong because I'm being worshipped by just about everyone, it sucks because I'm becoming an evil god now because my damn creature keeps throwing people into the ocean!!!

  123. The biggest problem I find with AIs... by Telek · · Score: 4

    is that they become predictable. Once you learn the exploits and how they work, the game is no longer fun. Take Alpha Centauri or Master of Orion 2, easily 2 of the best, if not the best, strategy games around (IMHO of course). However I can play both of them on impossible levels and win almost every time.

    And what really bugs me is that to make up for deficiencies in their AI, as the levels increase in difficulty, the computer just cheats more. I was abhorred when I found out first hand how badly the AIs cheated at the higher levels in the 2 aforementioned games.

    So what my question is, is this: How can this be fixed?

    I have a few ideas. One is that you need one that learns. Before you flame me about this, let's think about this for a second. We're not talking about an AI here that can learn how to write a novel, we're talking about relatively straightforward strategies and mechanical play in these games. I know that 95% of of my strategy for these games is down to an art, it's just an automated system until I get to the few points at which I need to make a new decision, or something new crops up. So if I can do this by a predefined strategy, then why can't the computer do that? Keep in mind too that the computer can simply try variations on it's current strategies, and see what happens. If I beat the computer 9 out of 10 times, and one time with some wierd method the computer CLOBBERS me, then hey, maybe it should keep that method around. Also the computer can play against itself, with many different strategies, seeing how each one works. Keep in mind here folks that the strategies that I'm talking about have a few variables: how fast do I expand? at what point to I build an army? how big do I build my army? When do I stop expanding? When to I attack, and who? These can be values that can be changed and experimented with, and hence the computer could learn.

    Secondly, one of the things I loved about Alpha Centauri is that just-about all settings were configurable through text files. This was amazing. You could make things easier or harder, change global settings, pollution rates, everything. You could even make new factions and trade them with your friends. If somehow settings for the AI were configurable this way, then people could learn how to tweak the AI to make it a more formidable opponent, and then share this information with others.

    Combining those two ideas, throw it on the internet. If you have 5,000 people that are connected (not necessarily at the same time), you can try out hundreds of thousands of strategies for the AI to see what works well, and then upgrade the AI. Actually I think that is a necessity. The AI needs to be easily upgradable, otherwise it'll just get boring as you learn how it works and you can cream the game.

    I'd love to hear some (constructive only please) comments about this, as it's been something I've been thinking about for a while.

    Want to check out about the new Master of Orion 3? Awesome stuff happening there. -- Telek

    --

    If God gave us curiosity