17.04.2015 Views

DARPA ULTRALOG Final Report - Industrial and Manufacturing ...

DARPA ULTRALOG Final Report - Industrial and Manufacturing ...

DARPA ULTRALOG Final Report - Industrial and Manufacturing ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

• The set of expansion edges X is subdivided into<br />

a set of disjoint subsets which have the same<br />

source node.<br />

• A task t is connected to exactly one task by an<br />

edge e unless e is a member of the set of<br />

expansion edges X.<br />

The basic principle behind the graph reduction approach<br />

is as follows. For each type of reduced graph mapping R,<br />

we define equivalence criteria between nodes in the graph<br />

to find abstract nodes. An example of criteria C 1 would<br />

be “All tasks at the same agent with parent tasks<br />

originating from another agent.” In applying the graph<br />

reduction algorithm, all nodes which satisfy this criteria<br />

are aggregated into a single node.<br />

Also, for every graph reduction mapping R, we define a<br />

equivalence criteria for abstract edges. Abstract edges<br />

are aggregates of equivalent subgraphs into a single<br />

representative edge.<br />

Continuing the example, consider a criteria C 2 that states<br />

“Subgraphs that connect all aggregate nodes satisfying C 1<br />

<strong>and</strong> connect to organizational assets associated with the<br />

same agent as C 1 .” Also, we define a second node<br />

equivalence criterion C 3 as “All tasks at the same agent<br />

which are allocated to assets representing external<br />

organizations.”<br />

We apply the criteria C 1 , C 2 <strong>and</strong> C 3 to a subgraph<br />

t 1 (→x 1 )t 2 (→x 2 ) t 3 (→l 2 )a 1 associated with agent A. This<br />

subgraph represents a task t 1 exp<strong>and</strong>ed to a task t 2 which<br />

is in turn exp<strong>and</strong>ed to a task t 3 <strong>and</strong> allocated to an asset<br />

a 1 . Here, we assume that t 1 has a parent external to A. We<br />

further assume that the asset a 1 is an organizational asset<br />

representing agent B. The task node t 1 satisfies C 1 <strong>and</strong><br />

hence is aggregated into an abstract node n 1 . Similarly,<br />

the task node t 3 satisfies C 3 <strong>and</strong> is aggregated into a node<br />

n 2 . The subgraph (→x 2 )t 2 (→x 2 ) therefore matches C 2 <strong>and</strong><br />

is associated with a single edge e 1 ∈E’ which connects<br />

the two abstract nodes n 1, , n 2, ∈ N’.<br />

Together, the equivalence criteria for abstract nodes <strong>and</strong><br />

edges leads to the identification of equivalent subgraphs.<br />

By changing the equivalence criteria for aggregated nodes<br />

<strong>and</strong> edges, a variety of different graph reduction<br />

mappings can be achieved.<br />

The computational complexity of the approach described<br />

above varies depending on the complexity of finding <strong>and</strong><br />

matching isomorphic subgraphs. Cougaar task graphs are<br />

generally well structured, <strong>and</strong> for most of the equivalence<br />

criteria that are described in the following, subgraphs can<br />

be matched using a (worst case) O(n) graph traversal,<br />

where n is the size of the subgraph. In the equivalence<br />

criteria described in the next section, all subgraphs fall<br />

within a single agent’s plan graph, thus bounding the size<br />

of the matched subgraphs. If m is the total number of<br />

abstract nodes discovered, then the total computational<br />

complexity is O(m * n).<br />

3.1 Algorithm implementation <strong>and</strong> applications<br />

The implementation of the graph reduction algorithm<br />

within Castellan allows generation of the task graph from<br />

an arbitrary stream of events. Except for asset <strong>and</strong><br />

organizational information, it is not necessary to have a<br />

complete plan graph to use this approach to devise<br />

reduced graphs.<br />

The following types of reduced graphs were found to be<br />

useful for underst<strong>and</strong>ing Cougaar societies <strong>and</strong> are<br />

implemented within the Castellan system.<br />

Aggregate task graphs defined using an equivalence<br />

criterion that maps tasks of the same type with the<br />

identical verb to single nodes. Also, theis equivalence<br />

criterion requires a strict ordering in depth between tasks<br />

which are aggregated. Specifically, in order to map a<br />

node n to an abstract node n’, the node n’s parents (<strong>and</strong><br />

all of its ancestors by implication) must map to an<br />

abstract node n 2 ’ which is an ancestor of n’. This<br />

requirement is imposed to prevent cycles from appearing.<br />

Figure 2 shows a conceptual representation of task<br />

aggregation in which multiple “similar” subgraphs are<br />

collapsed into a single aggregate subgraph. An example<br />

of a task aggregate plan graph is shown in Figure 3.<br />

Asset dependency graphs consider the assets (both<br />

organizational <strong>and</strong> physical) as abstract nodes. In this<br />

case, no aggregation of assets is performed as all assets<br />

are considered unique. The criteria for abstract edges are<br />

as follows:<br />

• All assets are mapped to abstract nodes.<br />

(Optionally, additional asset matching criteria<br />

can be introduced to aggregate assets.)<br />

• In addition, all agents that generate tasks are<br />

designed as “Source” abstract nodes. (These<br />

serve as the roots of the reduced DAG.)<br />

• All tasks <strong>and</strong> allocations that form plan graph<br />

dependencies between different assets are<br />

mapped to a single abstract edge.<br />

Asset dependency graphs are useful for finding both<br />

organization <strong>and</strong> physical dependencies within a<br />

distributed plan.<br />

Workflow graphs characterize the input/output<br />

relationships between agents <strong>and</strong> are particularly useful

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!