Architecture

PRIME's development draws upon concepts and software from two other key systems previously developed by SRI: the Structured Evidential Argumentation System (SEAS) and the The Link Analysis Workbench (LAW). SEAS provides the foundation for employing structured arguments to capture generic effects models and for aggregating forecasted effects based on those models or from other reasoning engines. LAW provides the foundation for matching the requisite conditions of indirect-effects models to an existing forecast, to determine which models apply and have their effects added to the forecast.

SEAS

SRI has been investigating the use of template-based structured argumentation as a means of capturing and guiding collaborative analysis. The idea is to capture best analytic practices for a given class of problems in a template and then use that template as the basis for collecting evidence and drawing conclusions about specific situations. Unlike other work focused on automating human uncertain reasoning, this approach focuses on recording and coordinating human reasoning. A key aspect of this has been the use of graphical depictions of arguments to rapidly convey the state of lines of inquiry, from evidence to conclusion, highlighting information needs as well as the evidence that drives the conclusion. To support this approach, SRI created a collaborative software tool called SEAS (Structured Evidential Argumentation System). Using this tool, contributing analysts directly manipulate depictions of arguments, adding and interpreting evidence relative to questions raised by the template, debate and draw conclusions based on the collective evidence, and finally use these depictions to convey their findings to decision makers.

SEAS is implemented as a web server that supports the construction and exploitation of a corporate memory filled with analytic products, methods, and their interrelationships, indexed by the situations to which they apply. Objects from this corporate memory are viewed and edited through the use of a standard web browser client, with the SEAS server producing ephemeral HTML/Javascript, based upon the contents of the SEAS knowledge base that constitutes corporate memory. The foundation of this corporate memory is an ontology of arguments and situations that includes three main types of formal objects: argument templates, arguments, and situation descriptors. Roughly speaking, an argument template records an analytic method as a hierarchically structured set of interrelated questions, an argument instantiates an argument template by answering the questions posed relative to a specific situation in the world, and situation descriptors characterize the type of situations for which the argument templates were designed and the specific situations that arguments address. SRI developed the Argument Markup Language (AML) as a general purpose XML interchange language for structured arguments. SEAS supports the exporting and importing of AML, providing a ready means to interchange structured arguments between SEAS and other AML-aware systems.

LAW

PRIME's indirect-effects inference capability was developed based upon techniques drawn from LAW (Link Analysis Workbench. LAW is an analysis tool designed to capture and match patterns of interest, in large sets of relational data. The patterns are represented as semantically labeled networks of connected entities, where the connections represent specific types of relationships among specific types of entities, making LAW patterns ideally suited for modeling the propagation of indirect effects among related entities (e.g., if public discontentment within a given group increases, then the strength of that group's leadership will suffer). A pattern in LAW consists of a number of typed entities, with typed relationships among them, and with constrained attribute values on the entities. A match for a given pattern is a subgraph within a set of relational data that includes specific entities/relationships with matching types and whose attribute values fall within the specified constraints. We use such patterns in PRIME to describe the conditions under which (e.g., PMESII) effects will propagate across related entities. Such patterns constitute the applicability conditions of generic indirect-effects models.

At the heart of the LAW system is a graph-based pattern representation and matching capability. This includes a flexible, hierarchical pattern representation language based on graphs, a pattern comparison metric based on a variant of graph edit distance, and an anytime search mechanism for finding approximate matches to the pattern in large datasets. LAW's current matching algorithm for finding patterns in the data is based on A* search. The search process is designed to find a good set of pattern matches quickly, and then use those existing matches to prune the remainder of the search.

LAW, like SEAS, is implemented as a web-based client-server application, with the pattern-matching service residing on the server side. LAW's user interface consists of ephemerally generated web pages, encoded in HTML and JavaScript and accessed through a standard web browser client. LAW provides connections to a number of different types of relational databases, and its data access mechanism is designed to keep storage and memory use manageable.

PRIME Infrastructure

PRIME, like SEAS and LAW, is implemented as a web-based client-server application that supports the construction and exploitation of a knowledge base filled with models, their interrelationships, indexed by the situations to which they apply, and analytic methods. Objects from this knowledge base are viewed and edited through the use of a standard web browser client, with the PRIME server producing ephemeral HTML/Javascript based upon the contents of the PRIME knowledge base.

The PRIME web server is built on top of the AllegroServe web server developed by Franz Inc. This is an HTTP server written in Common Lisp. Because the other software components underlying PRIME are also written in Common Lisp, this provided an ideal basis for the development of the PRIME server. Like both SEAS and LAW, PRIME creates HTML/Javascript pages on the fly upon request, utilizing SRI's ALP (Active Lisp Pages) scripting environment for creating dynamic pages and SRI's Grasper for creating graphical depictions of PRIME models. The pages are generated based upon the contents of the PRIME knowledge base, which is implemented in SRI's Ocelot Knowledge-base Management System, the same KBMS that underlies SEAS. PRIME uses SRI's Gister Evidential Reasoning Engine, which also supports SEAS, to merge multiple forecasted effects, and uses SRI's LAW pattern-matching engine to do pattern matching between indirect cause-effects models and the current state of the PRIME knowledge base.

By building PRIME on top of this SRI infrastructure, previously established to support SEAS and LAW, PRIME inherits, or is poised to inherit, many advanced capabilities, including collaborative modeling, full access control, information assurance, and taxonomy management.