Throughout this survey, the focus is upon agent capabilities. However, from the point of view of the system designer, the characteristics of the domain are at least as important. Before moving on to the agent-based categorization of the field, a range of domain characteristics is considered.
Relevant domain characteristics include: the number of agents; the amount of time pressure (is it a real-time domain?); whether or not new goals arrive dynamically; the cost of communication; the cost of failure; user involvement; and environmental uncertainty. The first several of these characteristics are self-explanatory and do not need further mention.
With respect to cost of failure, an example of a domain with high cost of failure is air-traffic control . On the other hand, the directed improvisation domain considered by Hayes-Roth et al. has a very low cost of failure . In this domain, entertainment agents accept all improvisation suggestions from each other. The idea is that the agents should not be afraid to make mistakes, but rather should ``just let the words flow'' .
Several multiagent systems include humans as one or more of the agents. In this case, the designer must consider the issue of communication between the human and computer agents . Another example of user involvement is user feedback in an information filtering domain .
Decker distinguishes three different sources of uncertainty in a domain . The transitions in the domain itself might be non-deterministic; agents might not know the actions of other agents; and agents might not know the outcomes of their own actions. This and the other domain characteristics are summarized in Table 4.
Table 4: Domain characteristics that are important when designing MAS