Not necessarily.
I've been doing a bit of AI programming lately and I've realised that creating a good AI is really difficult. All I've been able to do it create a basic pathfinding algorithm so my AI can navigate the map.
using my own C# version of the A* search algorithm, which looks something like this:
*snip*
Ack don't show me that code it's a nightmare reading that stuff reminding me of working on the HL2 AI system *shivers*. Wanted to work on some mods and that code was exasperating just looking at it with the game figuring out player positions.
To the OP.
1. AI in General - This is a VERY big thing as anyone can tell a computer to go in a straight line. However teaching it to think on its own is extremely difficult to do if not impossible at times. In my HS programming class we had to tell a computer robot in a program to do certain things. Easiest command was saying moveD(); or something along those lines having it move in a straight line. The complexity came when teaching the thing to move, pick up items, bring back, move aside items, etc... getting very intricate.
In a sense AI is the same where you have to tell the computer or rather teach it to understand things. FPS games probably demand the most amount of AI programming with RTS games being a not too distant second. The AI needs to learn to take cover, use shields, move around to higher ground, efficient stratagem, calling for reinforcements, weapon usage, etc... . You can make a game exceedingly cheap by repeating commands but teaching that computer program to fly by the seat of its pants can be tricky. HL2 has amazing AI with Fear I think being its successor.
2. Advanced AI - This one is tricky and i've contemplated something along the lines of a human neural net pathway solution whereby a central linking command activates subroutines feeding back into the main program. This way you have a central core "Brain" as it were within every bot out there that has the capabilities to learn. You may even go further with a "collective consciousness" within other organisms where the game actually learns what the player's strategies are then how to counter them.
Example would be a player like myself that likes to snipe + use explosives to take out waves of enemies at long distances. The game could theorize using stealth tactics to avoid detection surprising me and nailing me from the shadows. For a player that likes to run and gun setting up consistent traps in key areas would force their hand making them stop. Dealing with a patient player that creeps up slowly like the sniper would be tricky requiring a zerg force effort to surround the player overwhelming them. Going even further for hybridization players becomes more involved figuring out their quirks then playing off them.
Designing the AI I would dare say is like a real battlefield having to use Sun Tzu's The Art Of War to teach the computer how to eliminate the player. However you don't want to make easy/novice mode the Extreme/Mega hard mode instantly killing players cause that's no fun.
Anyway my 2 cents/thoughts on everything OP