Games like Rainbow Six, SWAT, Full Spectrum Warrior, as well as sci-fi Republic Commando, take place on small maps with closed structure, where you can afford to place smart waypoints manually and design nice looking and fluid resolutions to a limited number of corridors, doorways, corners etc. Not a chance to do it for a multi square km Arma island. How many of these games have maps comparable to Zargabad or Elektrozavodsk alone, in terms of size and complexity? Add to that mostly preplanned enemy positions and compare with vast tactical possibilities and unpredictability of Arma.
I have to defend Arma's AI, but only partially. I've seen the moments of great glory and tactical excellence on AI's part, but also unspoken stupidity and epic fails. For me, the AI is a great work, that has been started and never finished, it's half baked now. It has potential, but it's hidden. I've managed to "beat" lots of Arma2 coop missions with the AI companions, but it required me to adjust to their "style" and simply not attempt certain moves, which would be the best course of action with human squad.
The greatest problem with any AI, is to make it aware of its surroundings. Having a mechanical "mice" to exit labirynth is easy, the same for autopilot following preprogrammed waypoints. But having an automatic shopping cart, that could go to a shop two blocks away and buy you a beer, is another story.
The problem lies in giving the AI the ability to process data coming from sensors and to make rational and well thought decisions based on this data. An example outside of Arma, our current AI can recognize a face on the picture and can point to another photos of the same person in the database, but can't decide on its own, if it is male or female.
The fundamental problem with Arma AI is based on its two characteristics:
Suggestion: Make the AI to pay more attention to what's going on with its teammates and to stick with them more, instead of free roaming in their general vincinity. Increase the role of Squad Leader and Team Leaders and introduce chain of command (SL -> TL -> Team).
The problem starts with using of this knowledge, especially for some procedural tasks: proper road/street crossing with overwatch, room entry and clearing, stacking up against a wall with proper sectors division and coverage, all round defense while stationary, walking with tail-end-charlie, procedure to break contact with teams, the whole fundamental concept of fire element and move element. These items are especially important and beneficial with the proliferation of missions with dynamic and random enemy spawning.
Suggestion: For standard situations, add standardized solutions. In a room entry example, ordering such maneuver should put the AI into a preprogrammed subroutine, which tells it how to move into a room and how to divide sectors of responsibility. After the room has been entered and enemy neutralized or found to be not present, the AI would return to its normal movement routine and be ready to follow the leader or execute another order of any kind.
I know it its easier to talk, than to make it happen. But most of the building blocks for advanced AI routines are already there. It's just they either do not work flawlessly or work separately of themselves, instead of together.
Example 1: stationary AI seems to divide area into observation sectors, but doesn't take into account full 360 degrees coverage.
Example 2: AI does things like on the attached screenshot, but the problem is, it doesn't produce expected results; all of them died there, even though they moved tactically and knew about enemy's whereabouts.
Example 3: AI knows how to flank and retreat, yet it's still possible to kill them all in an extended firefight across a valley; they just lay down there and shoot back, regardless of mounting own casulaties due to accurate enemy marksmen fire.
Example 4: AI knows how to drive along a road by itself, to a point where I have trouble keeping up, but it's greatly incapable of driving in a column, along the same road.
Example 5: AI knows, that leaning out from behind a corner is a smart move, but sometimes it leans the wrong way and all the bullets end up in the wall.
Example 6: AI can shoot quickly and accurately, yet for some reason can't use their weapons their full potential. Arma2 KSVK sniper, set to max skill, needed 3 bullets to finally hit me at 700m. I was standing stationary, wasn't shooting back, it was day, the sun wasn't blinding him and there was no wind.
Example 7: It's possible to have fire and move elements, with the use of "colourful" teams, but because of AI's inability to work as a team, often it's more reasonable to just go there with them all and do it the guns blazing way.
Example 8: AI uses tactical movement and sometimes it works great. But on other occasions it's like this: "c'mon, run across that street, into enemy fire and then I'll run there too, to see if they can shot me as well".