I remember seeing a name for this, but I can't find it anywhere now.
In one of my courses, I use a weighted list to decide the choices for an AI.
Basically, each AI class has 2 standard functions: Value and Do.
[Value] returns a float, a percentage of how imperative it believes it is that it does this. I.e. when your base is under attack, sending troops to defend returns a high value.
[Do] executes the AI.
Then an AI Manager gets the value for each AI choice, and chooses to do the one with the highest value.
I've seen a more formal name for this, but I don't recall what it was.