Announcement

Collapse
No announcement yet.

AI "cheating" is necessary and welcomed!

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • AI "cheating" is necessary and welcomed!

    In a game such as Chess, it is obviously not okay that the computer "cheats" and plays by different rules. However in a game such as Civ, it is simply beyond the level of today's AI technology to expect that the computer AI can actually micromanage all the details that the human player would need to master.

    The only way for the AI to match the human player is to "cheat" and I actually don't mind as long as the AI "cheats" by emulating what a human player could achieve under the same circumstances even if the AI requires shortcuts to do it (ie. "cheating")

    For example, all expert players will build lots of workers and develop all tiles. But if the AI has to manage individual workers itself using "auto-worker" to develop its tiles, it will not achieve what the human player could achieve since most likely the "auto-worker" routine stinks. To get around this, simply have the AI city tiles "mature" through time at a realistic rate so that all AI tiles become developed over time. Of course it might be necessary to have some AI workers be visible so they can be killed and the tile "maturing" rate slowed down a bit but these visible AI workers would not actually be doing the tile improvement themselves!

    Is tile "maturing" "cheating"? Perhaps. But if this method allow the AI to achieve what the human would achieve, then it is surely welcomed. It is a shortcut that is necessary.

    The area where AI "shortcuts" (or "cheating") is sorely needed is in war. In Civ1/2, AIs simply send invididual units one at a time to get slaughtered peacemeal and are never a threat unless they are so overwhelmingly larger and more advanced. If the AI actually didn't have to do that and all attacks were "simulated" or "emulated" based on how a human opponent would do it, then the AIs would be much more formidable.

    For example, instead of the AI actually manuevering individual units, a preset attack pattern with a realistic number of units would go into action at a realistic designated time. Once this designated time came, the human player would find itself under a coordinated mass attack.

    These are but some examples of how the AI's work would be simplified by having lots of events "simulated".

  • #2
    Nup, sorry, don't like it. The computer should be smart enough to not have to cheat.
    If the voices in my head paid rent, I'd be a very rich man

    Comment


    • #3
      Can't say I like it.

      There are better ways to do things as I have pointed out in other AI-related threads.
      (\__/) 07/07/1937 - Never forget
      (='.'=) "Claims demand evidence; extraordinary claims demand extraordinary evidence." -- Carl Sagan
      (")_(") "Starting the fire from within."

      Comment


      • #4
        Computer has to cheat to provide a challenge.
        Rome rules

        Comment


        • #5
          Bah! It's still not right! If the computer cheats, I feel cheated. Guess I'll end up playing multiplayer Civ3 for a fair game.
          If the voices in my head paid rent, I'd be a very rich man

          Comment


          • #6
            I think it's ok that the AI cheat about knowing how many units u have in cityes without spy etc, but maybe not to make landscape better. But if they can't get the AI smart enough on deity level...... he can cheat as mutch as he like as long as he gives me a real challange. I WAN'T A CHALLANGE

            ------------------
            aCa (a Civilization addict)
            aCa (a Civilization addict)

            Comment


            • #7
              In Civ1 you could clearly see that the computer was cheating, with triremes roaming the oceans without being close to the shore.. or they could build things faster.

              Nah I won't like it.. Firaxis just has to come up with an intelligent AI, to make it challenging enough w/o cheating. If that's possible.

              My two cents.
              Beep...beep...beep.

              Comment


              • #8
                I hope Firaxis will be able to create a good AI, but if not they should make the computer controlled Civs to cheat.
                Creator of the Civ3MultiTool

                Comment


                • #9
                  Just to clarify:

                  What I meant in the original post was that I see nothing wrong with the AI "cheating" in the sense that the management of the AI Civ uses shortcuts (such as tile maturation). Of course I would definitely mind if the AI has the ability to do things that no human player could do.

                  Let's fact it, it is extremely unrealistic to expect that the computer AI can actually maneuver each and every unit and micromanage all the details needed. I'm simply saying that the AI's decision making and management decisions are simplified and many aspects modelled or emulated to give the same effect as a human would achieve but without overloading the AI.

                  I'm saying the AI could "cheat" by simplifying its management so it needs to make far fewer decisions and managed fewer details than the human player would but at the same time ensure that the computer AI's outward appearance is realistic so that it is not accomplishing things that are impossible.

                  Comment


                  • #10
                    Perhaps if we could teach the AI to do all the gamegreaking things we do (maybe setting priorities in a text file or something), such as ICSing (if it's still valid), massive growth through WLTxDs, and pushing everything for the hanging gardens first thing, they might be a bit more challenging. nowadays the AI seems to root around almost aimlessly, building a wonder when the mood strikes them, building lots of units becasue the military advisor asked for them, etc.

                    actually, that may be it! the current AI plays a lot as if they listen to the advice from their high council! what a thought! No wonder they are easy to beat!
                    Any man can be a Father, but it takes someone special to be a BEAST

                    I was just about to point out that Horsie is simply making excuses in advance for why he will suck at Civ III...
                    ...but Father Beast beat me to it! - Randomturn

                    Comment


                    • #11
                      quote:

                      Originally posted by polymths on 05-03-2001 01:33 PM
                      Let's fact it, it is extremely unrealistic to expect that the computer AI can actually maneuver each and every unit and micromanage all the details needed. I'm simply saying that the AI's decision making and management decisions are simplified and many aspects modelled or emulated to give the same effect as a human would achieve but without overloading the AI.


                      You make some good and valid points, Polymths, although some civers have a real hard time understanding the built-in unavoidable limitations of artificial intelligence! Thankfully, there are some AI-workarounds however...

                      Below is a cleanwrite from this link; http://apolyton.net/forums/Forum6/HTML/001531.html and it explains the basic limitations with artificial intelligence.

                      In this link, the idea of AI-shortcuts for better AI-city placement methods is promoted: http://apolyton.net/forums/Forum6/HTML/002067.html

                      "First of all, i DO agree what many AI-improvements can be done, in order to raise CIV-3 above CIV-2. I just think we average Civ-fanatic should be a little more aware of the built-in limitations in so called "artificial intelligence".
                      Artificial Intelligence has ONE major advantage over humans, and that is a huge advantage in pure numbercrunching capability. AI-Programmers can use this to setup a bunch of expressions, conditions and variables - then letting a flood wave of oncoming tasks fall through a logical boolean maze, and repeatedly getting relevant and speedy task-solutions.
                      By comparison humans alone compare rather pathetically (but only in terms of speed, that is).

                      There is a snag, however (that tips the scale heavily back in favor of the human player):

                      Considering today’s computer- and programming-technology, above approach only works really outstanding if the world is relatively confined (like the 8x8 square-world of chess), the variables are simple (only black and white tiles/pieces, and only 6 of the latter) and the rules are few and distinct (I don’t know how many rules chess has, but they certainly aren’t many, and there is nothing fuzzy about them either).
                      If any of above three factors (world size, possible variables and rules complexity) - not to say all three of them, is added to, the AI: s ability to "analyze several moves ahead" and "follow a game plan", with "intuitive" and "long reaching" tactical maneuvers, is SEVERELY limited.
                      To rub salt into the wound most Civ game-sessions take place - not in 100% known setup-enviroments (like in campaign games) - but, instead on random computer-generated maps, not previously analysed by the AI-programmer.

                      Thankfully, no one asks for an IBM Deep Blue-AI in the upcoming CIV-3 game anyway. Still, many of the upgrade-suggestions found on Civ-forums often ask for the impossible - an almost human AI, that "schemes" several moves ahead, and then moves around hordes of coordinated army-units, with tactical brilliance.
                      Why is it impossible (and perhaps also unnecessary)? To understand this we have to come to grips with the principal difference between human (living) intelligence and artificial (dead) intelligence:

                      What the human Civ-player can do (and the AI simply cannot do) is to literally OVERVIEW (experience) the game situation, and, within a blink of an eye, sort out huge parts of not-so-promising strategic/tactic solutions, and instead concentrate directly (and only) on those very few plans and ideas that actually DO seem promising.
                      We can describe this as a "bird eye sort out" ability, something unique the living (in our case; human) intelligence.

                      By comparison, the game AI (or any silicon-based intelligence for that matter) is 100% dead and non-experiencing (of course). It lives in a 2-dimensional "flat" world, figuratively speaking - by that i mean it cannot possible "overview" anything.
                      In practice this means that if a Civ programmer tries to create something "almost human" in terms of AI-software, he is forced to write an AI that meticulously analyzes and evaluates all the myriads of possible combinations of choose-, build-, upgrade and move-possibilities that each and every individual game-turn has to offer, no matter how irrelevant or less promising 95% of these possibilities are.
                      The reason for the latter, is (again) the lack of an living "bird eye-sort out" ability. Because of this, the programmers has to gather ALL possibilities BEFORE they can let the software evaluate and rank any appropriate countermeasures.

                      Also - he has to program it to analyze each-and-every of these combinations; at least 3-4 game-turns AHEAD! (or "deep", using chess-language). Again, remember that the AI cannot "overview" anything from above. To compensate it has to take the "flat world" approach in order to gather constantly changing game-situation data. Like in computer-chess.
                      This is (as we all know) not that difficult to achieve then it comes to a relatively simple and clean-cut strategy (perhaps more tactical) game like chess. But, in a MUCH more complex and option-divided game like CIV-3; the massive amounts of calculations involved to mimic any hardcore human Civ-veteran playingstyle is absolutely staggering and mind-boggling. Today’s programming-technology is simply too primitive, and our home computers are, at present state, just too slow to achieve anything near this.

                      Thankfully however, the AI difficulties for the upcomming Civ-3 isnt necessarily so struggling that it first seems. There are basically two reasons for this:

                      One is that above comparison with chess is - to a certain degree, misleading. Chess is in some ways a very different beast than Civilization. Then playing chess it can be enough to do one (1) bad tactical move in order to loose the entire game. Provided that the opponent is good enough he can exploite that single rash mistake ruthlessly and grind you into submission. In this respect chess (at least on the higher levels) is perhaps a 95% tactical game and only about 5% strategical.
                      Playing a turnbased computer strategy-game like Civ is a different story. If the human (or the AI-) player makes a few unadviced unit-moves - so what? Nothing that drastic will happen, that cant be repaired in later stages of the game.
                      One could argue that Civ is a 95% strategical game, but only about 5% tactical (give or take). Above is actually good news in terms of AI-developing. This means that the Civ AI developers can concentrate most of their efforts on tinkering with the overall strategical logistics, rather then wasting (to much) time on trying to mimic the human pathfinding and unit-moving tactics.

                      I have ALWAYS won the games over the AI primarily as a result of better logistics (= better resource management + more effective unit-improvement and city-improvement strategies). Strengthening the AI:s ability to handle the overall strategical LOGISTICS are the key to a better Civ AI. To summarize it in one famous semi-quote:

                      A successful AI civilization "marches on its belly" (Napoleon Bonaparte)".

                      [This message has been edited by Ralf (edited May 03, 2001).]

                      Comment


                      • #12
                        Ralph, I know that it is impossible to create an AI that can match a human player (not including newbyes)* with today’s computers and programming techniques. The only cheats I don't want are the obvious one (as triremes never sinking). Specific cases can be handled to give the AI a strategy to follow while using triremes.
                        I am not against cheats as boosted production, trade and fewer penalties than a human player.


                        *
                        I do remember the first time I played Civ. I was killed by the "evil red" (did not read any help as it was before I learnt English). Back in the good old days when I played almost randomly the Barbarian AI was no match for me until I found out the ability to fortify a militia in the city I had. But those days are past and I never feel that the AI are smarter then I any more. So they have to cheat.
                        The only thing I stated in my last post was that I preferred fair play. But with the AIs of today fair play is, in most cases, when the AIs are cheating and you don't. As an exception can the case with the triremes be taken. Is it fair if the AI can attack you with a lot of units using triremes to sail over deep water to reach you and you have nothing to do but defend yourself until development of navigation when you may set sail towards the never ending stream of AI triremes.
                        Creator of the Civ3MultiTool

                        Comment


                        • #13
                          quote:

                          Originally posted by Ralf on 05-03-2001 02:20 PM
                          In practice this means that if a Civ programmer tries to create something "almost human" in terms of AI-software, he is forced to write an AI that meticulously analyzes and evaluates all the myriads of possible combinations of choose-, build-, upgrade and move-possibilities that each and every individual game-turn has to offer, no matter how irrelevant or less promising 95% of these possibilities are.
                          The reason for the latter, is (again) the lack of an living "bird eye-sort out" ability. Because of this, the programmers has to gather ALL possibilities BEFORE they can let the software evaluate and rank any appropriate countermeasures.

                          Also - he has to program it to analyze each-and-every of these combinations; at least 3-4 game-turns AHEAD! (or "deep", using chess-language). Again, remember that the AI cannot "overview" anything from above. (snip)[This message has been edited by Ralf (edited May 03, 2001).]


                          Ralf, although I agree with much of your post, I think the part above is clearly wrong in several places. Most badly in the assumption that an AI can never take anything but an exhaustive search of possible actions at the lowest-level view. This just isn't right. You can read about how to get around these limitations here: http://members.nbci.com/_XMCM/clasho...Model-AI.shtml
                          Of course what you get isn't Human, but at least it can take a big-picture view and act upon it. This makes the search space rather daunting with current technology, rather than basically impossible.

                          Unfortunately, some people have had trouble with reading the page above using Netscape, so I'll append the header of the discussion here, so if you're prevented from reading the whole thing you can at least get the flavor of it.

                          -Mark

                          Goals for the Clash AI are to give the player
                          as challenging a game as they would ever want.  To achieve this we will
                          have:

                            [*]AI that thinks in 'Levels' about strategy,
                            from very high level down to small details.  This is an
                            Hierarchical approach
                            [*]Levels will go from very abstract pictures
                            of the world at high levels, down to pretty accurate copies of the
                            world, for small things
                            [*]Corrections will be made in the higher
                            level AI to incorporate information from the more detailed AI levels
                            below it
                            [*]As much as possible, design the world
                            models in the game so they are easier for the AI to handle
                            [*]Use good rules-of-thumb (heuristics) as a
                            firm base for AI actions
                            [*]As much as possible evolve unique
                            strategies Beyond the heuristics using Genetic Algorithms
                            [*]Test AI strategies as much as possible
                            using Monte Carlo techniques (copy the world as that AI sees it; how
                            does the strategy play out in the copies?)
                            [*]Threaded AI that can take advantage of any
                            time not used by the world model and the interface
                            [*]Allow the player to give the AIs any
                            arbitrary advantages that they deem necessary
                            [/list]

                          Project Lead for The Clash of Civilizations
                          A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                          Check it out at the Clash Web Site and Forum right here at Apolyton!

                          Comment


                          • #14
                            I definitely agree with abstraction and "multiple levels of AI". This is key, I think. "Human emulation" is also key.

                            There should be certain preset routines that are used to simplify the game for the computer AIs. If tiles mature for the AIs automatically through time, then it doesn't need to be manipulating settlers around and improving tiles one by one. But as long as the maturing rate is realistic, the AI is "emulating" what the best humans would do.

                            If there are good, prewritten coordinated attack routines that the AIs call on, then it doesn't need to actually move around individual units to try to coordinate an attack. The AI would simply "order" an attack and the "attack routines" would look at the AIs tech, productivity, distance from the target and simply create and manage an attack. For instance, the "attack routine" might actually be only moving around a single pseudo-unit called "fleet" which represents the most powerful armada that the AI could have produced realistically in a certain given time. Then the attack routine simply needs to move around and manage a single unit called "fleet". Once the unit "fleet" arrives (or perhaps is intercepted) then the unit is unpackaged so that the player see all the individual units and the AI can manage the individual units again. In this way the computer could coordinate large attacks by creating pseudo-units internally to simplify its worldview and simplify the number of units it is actually coordinating.

                            Does this make any sense???

                            Comment


                            • #15
                              The other thing I hope people can comment on is the idea of a statistically modelled AI.

                              What I mean by this is, let's study successful human players and what that human can achieve. Then the AIs Civs simply develop along a statistical model based on strong human player(s). The AI wouldn't be building wonders, these would be "awarded" to the AI through a "wonder maturing" routine that gives the AI certain wonders at certain points in time (if it hasn't already been built). The AIs wouldn't be researching techs but techs would be "awarded" based on realistic statistical models.

                              The real point is this: Simply what the AIs need to actually think about by having a lot of things done "automatically" for the AI without the need for the AI to make decisions.

                              Comment

                              Working...
                              X