The Role of Intelligent Systems in the National Information Infrastructure, страница 15

Building cooperation-supporting environments requires developing tools that model processes and plans, coordinate projects, and manage workflow constraints (Subsection 3.3). Such tools could prove most adaptable if organized around declarative models (Subsection 3.1) of the social organizations and entities involved in the activity, the relationships among them, and the constraints imposed on them by the nature of the activity. Cooperative efforts require mechanisms for managing communications to make participants more productive, and as in the information infrastructure generally (Subsection 2.2), this approach calls for developing software agents to filter the information posted to groups, broker information that moves from one team member to another (Subsection 3.6), and scour various databases in response to a user query.

In addition, collaboration-supporting environments must supply means, such as notification facilities or requirement utilities, to connect people and tools available on the network into a collaborative environment. For example, to support continuing conferences among participants with different interface capabilities, an environment must be able to translate "utterances" between different modalities (Subsection 3.9) and generate summaries to quickly bring offline participants up to date (Subsection 3.8).

2.3.2.2 Problem Solving and System Design Environments

Although collaboration and group software provides the basis for effective communication of teams or larger groups working together, large projects call for additional help in modeling the problem or task being addressed by the group. Existing management aids provide some help in this direction but do not offer much assistance in representing knowledge about plans and designs or provide mechanisms for reasoning about plans and designs in flexible ways. As the National Challenge application of crisis action planning illustrates, substantial knowledge about the likely consequences of actions and the utilities and intentions of the multiple actors involved is required to exploit interactions and synergies between complex subprojects while keeping options open to maintain flexibility. Operations research techniques suffice for problems with simple utility characteristics, but for large collaborative projects, techniques need to be augmented with fast algorithms for managing plans that explicitly account for uncertainty, incomplete information, interactions, and tradeoffs (Subsections 3.1, 3.4, and 3.3).

2.3.3 Distributed Simulation and Synthetic Environments

To evaluate a prototype software system (Subsection 2.3.1), a designer must be able to simulate at least part of the environment in which the system is to operate. However, simulations of specialized environments are useful far beyond the issue of software design; other important applications include management of complex systems (such as air traffic control, telephone switching networks, power networks, distributed sensors, resource allocation in factories, remotely piloted vehicles), training (such as education, flight simulators, virtual surgery), planning and optimization, remote diagnosis, sensing, and cooperative interaction. Such synthetic worlds could integrate real, as well as virtual objects; combine visual, as well as computational, descriptions; and support human users as well as intelligent software agents.

Exploiting the potential for synthetic environments means facing some difficult problems. The first problem is constructing such environments, but because synthetic environments are just complex systems themselves, the techniques discussed in Subsection 2.3.1 can also be used to apply intelligence to ease and speed their construction as well. The second problem is populating the environment with simulated people or creatures. Robotics path planning and dynamic control algorithms (Subsection 3.9) can be used to generate realistic three-dimensional movements. AI planning algorithms (Subsection 3.3) and agent architectures (Subsection 3.5) could generate realistic behaviors. Environments that must contain lifelike characters can successfully employ characters that act human even when these characters are considerably simpler than characters acting intelligently (Subsection 3.5). The third problem is that synthetic environments often reflect parts--in some cases, very large parts--of the world; so, the specification of the system must include large amounts of knowledge about the world. (Subsections 3.1 and 3.7)