Just another thought on this. I go by the philosophy that if the player can't see it doesn't exist. What I mean is that you may have a very sophisticated system, but if all the player sees is a monster roaming around, moving toward the player or running away, then is your sophisticated system any better than a more simple system that exhibits the same behavior?
The player can't see inside the program as it is running, all they know is what they see. For a programmer it is cool to have all these threshold values, fuzzy logic, decision trees, etc., but in the end it is all about the playing experience and what the player can see and do.
That is why I am not one of these people that get caught up in all the nuances of FOV for example. It is fun as a programmer to discuss and explore these things, but the real differences between raycasting-permissive-digital (et. all) are nits and picks really, and are not that noticeable in the actual game play. Even the so-called problems of symmetric FOV for example, which seems to be a point of many of the discussions, is an issue that most players never notice or worry about. It seems the programmers are more worried about it than anybody else.
Getting back to ai, I read an article once about game ai in commercial games and I wish I could remember where I saw it since it was quite interesting, because the focus was about this subject: game ai. In the article the programmer said, we don't have to create smart actors, just make them look like it. That really stuck with me. The point was that appearance is everything in a game, and why spend a lot of time building something complex (where time really is money) that looks no different than something simple.