Data Distribution Management Specifications 1.3 And 1516 Are Equivalently Powerful Mikel D. Petty, Ph.D. Virginia Modeling, Analysis & Simulation Center Old Dominion University 7000 College Drive, Suffolk VA 23435 [email protected] 757-686-6210 ABSTRACT: The High Level Architecture (HLA) is an architecture for constructing federations of distributed simulations, or federates, that exchange simulation data at run-time. HLA’s Data Distribution Management (DDM) services reduce the amount of simulation data transported in a federation and delivered to an HLA federate by allowing data communications connections to be based on federates’ run-time expressions of data production and requirements. The definition of HLA in general, and DDM in particular, is different from the previous Department of Defense 1.3 version to the new Institute for Electrical and Electronic Engineers 1516 version of the HLA specifications. The power of DDM to represent federates’ data production and requirements under the old specification (DDM 1.3) and new specification (DDM 1516) have been compared using formal methods. It was previously reported that DDM 1516 is at least as powerful as DDM 1.3 by exhibiting a simple transformation from any DDM 1.3 configuration to an equivalent DDM 1516 configuration. Left open, however, was the question whether DDM 1516 was more powerful than DDM 1.3 or equal in power to it. In this paper that question is settled. DDM 1.3 is proven to be at least as powerful as DDM 1516 by defining a valid mapping (but not a constructive transformation) from DDM 1516 to DDM 1.3 configurations. From that, DDM 1.3 and DDM 1516 are shown to be equivalently powerful. Finally, the difference between the constructive proof of the previous theorem and the existence proof of the new one, and some associated implications for federation developers, are discussed. 1. Introduction The High Level Architecture (HLA) is an architecture for constructing distributed simulations that exchange simulation data at run-time. In HLA terms, a set of simulations capable of interoperating is a federation, and the individual simulations are federates. HLA includes a category of services, called Data Distribution Management (DDM), which is intended to reduce the amount of simulation data transported in a federation and delivered to an HLA federate by the Run-Time Infrastructure (RTI) to the federates during a federation execution. The RTI uses a federate’s DDM expressions to set and update the data connections during a federation execution. Two specifications of HLA are currently available, the Department of Defense Version 1.3 (HLA 1.3) and the new Institute for Electrical and Electronic Engineers standard 1516 (HLA 1516). DDM in HLA 1.3 (DDM 1.3) is substantially different from DDM in HLA 1516 (DDM 1516). It is not immediately obvious whether or not the differences affect the power to represent and relate data production and requirements of DDM 1516 with respect to DDM 1.3. Because HLA 1516 may replace HLA 1.3, a reduction in DDM representational power would be undesirable. However, by using formal methods several results have been obtained. Two theorems have been previously reported. Theorem 1. DDM 1516 is at least as powerful, in terms of relating federates’ data production and requirements, as DDM 1.3. Theorem 2. No simple transformation from DDM 1516 configurations to DDM 1.3 configurations can be valid. Two new theorems are proven in this paper. Theorem 3. DDM 1.3 is at least as powerful as DDM 1516. Theorem 4. DDM 1.3 and DDM 1516 are equivalently powerful. 2. Background In this section general background on the High Level Architecture and Data Distribution Management is provided and the differences between DDM 1.3 and DDM 1516 are explained. 2.1 High Level Architecture HLA is an architecture for constructing distributed simulations. It facilitates interoperability among different simulations and simulation types and promotes reuse of simulation software modules [1] [5]. HLA can support virtual, constructive, and live simulations from a variety of applications domains. HLA is defined by three documents: 1. The HLA Rules [2], which define interoperability and what capabilities a simulation must have to achieve it within HLA. 2. The Object Model Template [3], which is a format for specifying simulation data in terms of a hierarchy of object classes, and their attributes, and interactions between objects of those classes, and their parameters. 3. The Interface Specification [4], which is a precise specification of the interoperability-related actions that a simulation may perform, or be asked to perform, during a simulation execution. The HLA RTI is an implementation of the Interface Specification, consisting of a set of services. The RTI provides services to start and stop a simulation execution, to transfer data between interoperating simulations, to control the amount and routing of data that is passed, and to coordinate the passage of simulated time among the simulations. Within the HLA, a set of collaborating simulations is called a federation, each of the collaborating simulations is a federate, and a simulation run is called a federation execution. Federates that adhere to the Rules can exchange data defined using the Object Model Template by invoking the services defined in the Interface Specification; those services are provided at run-time by the RTI. 2.2 Data Distribution Management One category of services defined in the Interface Specification, Data Distribution Management, is intended to reduce the amount of simulation data delivered to a federate during a federation execution. 1 To accomplish the reduction, one or more multidimensional coordinate spaces, referred to as routing spaces, are defined with dimensions corresponding to simulation data (simulation object attributes or other data available in the simulation). During a federation execution federates specify what simulation data they are going to produce (publish) or 1 In this subsection, DDM is described as per the DDM 1.3 specification [4]. The differences between DDM 1.3 and DDM 1516 are presented later. interested in receiving (subscribe). They do so by creating regions, called update and subscription regions, within the routing spaces. Each region is composed of one or more rectangular subspaces, called extents, within a routing space. All the extents of a single region are in the same routing space and are defined on all of the dimensions of that routing space; the extents and the region are said to have those dimensions. The extents of a region are ranges on all of the dimensions of the routing space in which the region is defined. A range is a semi-open interval of the form [low value, high value) along a dimension. Two extents overlap iff2 all of their ranges overlap on their respective dimensions, i.e., all the dimensions of the routing space. When any pair of extents from an update region and a subscription region overlap in a routing space the regions are said to overlap. In that case simulation data should be delivered by the RTI from the federate that created the update region to the federate that created the subscription region. The data distribution services allow update and subscription regions to be created, modified, and deleted dynamically by federates throughout a federation execution. Each time a region is created, modified, or deleted, the set of regions it overlaps may change, and if so, the data delivery connections used by the RTI must be changed to reflect the new region configuration. 2.3 Differences between DDM 1.3 and DDM 1516 DDM 1.3 and DDM 1516 are different. 3 There are several specific differences, but the most important ones here, because of the consequences they have on the definition of overlapping regions, are the elimination of routing spaces in DDM 1516 and the replacement of DDM 1.3 regions and extents with the similar but not identical DDM 1516 region sets and regions. The value ranges for dimensions are also defined differently. In DDM 1.3, a routing space is a named sequence of dimensions. A set of routing spaces can be defined for use during a federation execution. Regions are created within a particular routing space. Regions can only overlap with regions in the same routing space, implying that only regions with the same dimensions can overlap. In DDM 1516, there are no routing spaces; all dimensions are available in a single DDM coordinate space. The term “iff” is used as a shorthand for “if and only if”. 3 In this subsection, DDM 1516 is described as per the version of the IEEE 1516 specification approved for standardization by the IEEE in September 2000 [6]. 2 Recall that in DDM 1.3 regions consist of one or more extents, each of which is a rectangular subspace of a routing space. Because they are all in the routing space, all of the extents of a region have the same dimensions. Two regions overlap iff any pair of their extents overlap. In DDM 1516, regions are a single rectangular subspace within the coordinate space, analogous to extents. Region sets are sets of one or more regions. Regions may be defined on any subset of the available dimensions and regions in a region set may differ in the dimensions they have. Regions overlap iff they have at least one common dimension and they have overlapping ranges on all common dimensions. Note that it is possible for regions with different dimensions to overlap as long as they have some common dimensions and overlap on them. Region sets overlap iff any pair of their regions overlap. DDM 1.3 defines dimensions to be continuous implicitly semi-open intervals within the semi-open interval [axis lower bound, axis upper bound), where axis lower bound and axis upper bound are implementation parameters, and ranges to be semi-open subsets of a dimension. DDM 1516 defines dimensions to be explicitly semi-open intervals within the semiopen interval [0, dimension upper bound), where dimension upper bound is an implementation parameter, and ranges to be semi-open subsets of a dimension. DDM 1516 adds the restriction that the difference between a range upper bound and a range lower bound can be no less than 1. 3. Definitions Because DDM 1516 may replace DDM 1.3, a federation developer may need to know how the two DDM specifications compare in terms of expressive power for representing data production and requirements. This section provides formal definitions of the notion of the expressive power of a DDM specification, as well as several related terms, that provide the necessary background for later comparing the two specifications’ power. 3.1 Configurations A DDM 1.3 configuration is defined to be a set of dimensions, a set of routing spaces defined on those dimensions, and a set of regions (and their component extents) created within those routing spaces. A DDM 1516 configuration is similar, but does not include routing spaces, and has region sets and regions instead of regions and extents. Two configurations are equivalent if there is a bijection (i.e., a one-to-one and onto mapping) from the regions (region sets) of one configuration to the regions (region sets) of the other configuration such that two regions (region sets) overlap in one configuration iff their corresponding regions (region sets) overlap in the other. This definition applies whether the two configurations are under the same DDM specification or different specifications. DDM configurations contain two types of regions (region sets), update and subscription. Note that regions types are implicitly accounted for by the definition of equivalence. Regions (region sets) overlap iff they are of opposite types, i.e., one of them is an update region (region set) and one is a subscription region (region set). In an equivalent configuration, the corresponding regions (region sets) overlap by definition, so they must also satisfy the opposite type requirement. Therefore, because the results that follow depend on equivalence, they consider the question of whether certain pairs of regions (region sets) overlap without being concerned with their types. 3.2 DDM power To compare the power of DDM 1.3 with DDM 1516, or any other DDM specifications, the power of a DDM specification must be defined. For explanatory purposes a preliminary definition of power will be given before arriving at the final one. The intuitive notion of the power of a DDM specification will be based on the set of distinct configurations that can be expressed under the specification. That set of configurations embodies how many and which different data publication and subscription situations can be represented under the DDM specification. Let represent the set of all distinct configurations possible under some DDM specification; in particular, let 1.3 and 1516 be the sets of all distinct configurations possible under the DDM 1.3 and the DDM 1516 specifications respectively. Of course, without a restriction on the number of dimensions, 1.3 and 1516 are infinite sets, but they can still be compared. For generality, the following definitions refer to DDM specification 1 (DDM 1) and DDM specification 2 (DDM 2), which are not specific actual DDM specifications like DDM 1.3 or DDM 1516, but rather are generic names for any DDM specification. The sets of configurations possible under DDM 1 and DDM 2 are 1 and 2 respectively. DDM specification power will be a partial ordering among DDM specifications based on subset relationships between their sets of possible configurations. A preliminary definition of power, in informal terms, would be that DDM specification 1 is at least as powerful as DDM specification 2 iff 2 1. However, a partial ordering based solely on direct subsets as per the preliminary definition does not allow the power of DDM specifications with different structures to be compared. (In fact, DDM 1.3 and DDM 1516 have different structures; recall that DDM 1516 configurations have no routing spaces.) Therefore the final definition of DDM specification power will go beyond direct subsets by considering the inclusion of equivalent configurations. Informally, DDM specification 1 is at least as powerful as DDM specification 2 if, for every configuration C 2, either C itself or some configuration C which is equivalent to C is 1. To define power more formally, first define E(C) to be the set of configurations equivalent to some configuration C. Note that C E(C) by definition of equivalence. Then DDM specification 1 is defined to be at least as powerful as DDM specification 2 iff configuration C 2 C C 1 and C E(C).4 Under this definition, power is a partial ordering of DDM specifications. The power relationship “DDM specification 1 is at least as powerful as DDM specification 2” will be written DDM 2 DDM 1. Of course, DDM 1 and DDM 2 are DDM specifications, not sets, so this notation is an overloading of the subset symbol, but it is suggestive of the power partial order relationship and thus helpfully consistent with intuition. DDM 1 is defined to be more powerful than DDM 2 iff two conditions hold: (1) configuration C 2 C C 1 and C E(C) (i.e., DDM 2 DDM 1), and (2) there exists configuration C in 1 such that for every configuration C in 2, C not in E(C). The second condition means that there is at least one DDM 1 that is not equivalent to any DDM 2 configuration. This relationship will be written DDM 2 DDM1. DDM specifications 1 and 2 are equivalent in power iff DDM 1 DDM 2 and DDM 2 DDM1; this will be written DDM 1 = DDM 2. 4 Note that even if it is assumed that some configurations are in some way more “important” than others, a possibility suggested elsewhere that is not pursued here, this definition of power remains consistent. Under the definition, for one DDM specification to be more powerful than another one, it must include configurations equivalent to all of the configurations of the less powerful specification, both the more and less “important” ones. 3.3 Configuration mappings and transformations The relative power of two DDM specifications will be established by considering relations between the members of their configuration sets. In general, a relation between two sets A and B is some subset of A B [10]. In the case of configuration sets 1 and 2, a relation between them is a subset of 1 2. Let 1 2 denote some relation from configurations in 1 to configurations in 2. Two types of relations will be defined. Given relation , 1 2, a mapping is simply some condition by which configurations C 1 and (C) 2 are related, whereas a transformation is an algorithm to transform a configuration C 1 into a configuration (C) 2. 4. Results This section contains four theorems concerning the relative power of DDM 1516 and DDM 1.3. Together they resolve the question of their relative power and provide other insights to a federation developer. The first two are from previous work and are simply stated here for continuity. 4.1 DDM 1516 is at least as powerful as DDM 1.3 Theorem 1. Under the definition given earlier of power, DDM 1516 is at least as powerful as DDM 1.3. That was shown by defining a transformation , 1.3 1516, that transforms any DDM 1.3 configuration C into an equivalent DDM 1516 configuration (C). See [7] for the details of the proof. 4.2 No simple transformation from DDM 1516 to DDM 1.3 can be valid Theorem 2. Given transformation from DDM 1.3 configurations to DDM 1516 configurations, it might be reasonable to wonder whether a transformation exists that is analogous to but the reverse of transformation , to transform DDM 1516 configurations to equivalent DDM 1.3 configurations. The existence or nonexistence of such a transformation has not been established. However, there is no transformation from DDM 1516 to DDM 1.3 configurations, 1516 1.3, that is both simple and valid (where simple and valid have certain formal definitions). The proof considered all simple transformations and showing that none are valid. See [9] for the details of the proof. 4.3 DDM 1.3 is at least as powerful as DDM 1516 Theorem 1 showed that DDM 1516 is at least as powerful as DDM 1.3, i.e., that DDM 1.3 DDM 1516. That theorem left open the question of whether DDM 1516 is more powerful that DDM 1.3, i.e., DDM 1.3 DDM 1516, or equivalent in powerful to DDM 1.3, i.e., DDM 1.3 = DDM 1516. Theorem 3 is the penultimate step toward settling that question; it shows that DDM 1.3 is at least as powerful as DDM 1516, i.e., DDM 1516 DDM 1.3. This will not be a constructive proof like Theorem 1; no transformation from DDM 1516 configurations to DDM 1.3 configurations will be given. Theorem 3 is instead an existence proof. The theorem will depend on a mapping (not a transformation) from DDM 1516 configurations to DDM 1516 configurations. The mapping , 1516 1.3, is defined as follows. Assume configuration C 1516. Configuration C is a 2-tuple, C = (D, R), with a set of dimensions D = {d1, d2, …, dk}, |D| = k, and a set of region sets R = {r1, r2, … rn}, |R| = n. Note that each ri in R is a region set, and so may comprise > 1 regions, but that does not matter; what is important is which of these region sets overlap each other. Overlap is defined in DDM 1516 for region sets, so if the overlaps between region sets are known, the details of their regions do not matter. Define a n n matrix OC, called the overlap matrix for C, as follows: OC = | | | | o1,1 o1,2 o2,1 … on,1 … … Define configuration (C) 1.3. Configuration (C) is a 3-tuple, (C) = ((D), (S), (R))5. Configuration (C) has a set of dimensions (D) = {(d1), (d2)}, |(D)| = 2 (exactly two dimensions) and a set of routing spaces (S) = {(s1)}, |(S)| = 1 (exactly one routing space). The dimensions of the routing space (s1) = ((d1), (d2)), i.e., s1) is a 2-dimensional routing space. Configuration (C) also has a set of regions (R) = {(r1), (r2), …, (rn)}, |(R)| = n . Note that there is one region (ri) in configuration (C) for each region set ri in configuration C. However, the extents in region (ri) do not correspond to the regions of ri; rather, they represent the overlaps of region set ri in C. For each region set ri of C, 1 i n, the extents of region (ri) of (C), 1 i n, are defined by two rules as follows: Rule (1) For j = (i + 1) to n: oi,j = 1 (ri) has an extent (ei,j), oi,j = 0 (ri) has no extent (ei,j). If extent (ei,j) exists, it has coordinates (2j, 2i) lower left, (2j + 1, 2i) lower right, (2j, 2i + 1) upper left, 2j + 1, 2i+1) upper right in the routing space s1. Rule (2) For j = 1 to (i - 1): oi,j = 1 (ri) has an extent (ei,j), oi,j = 0 (ri) has no extent (ei,j). If extent (ei,j) exists, it has coordinates (2i, 2j) lower left, (2i + 1, 2j) lower right, (2i, 2j + 1) upper left, 2i + 1, 2j +1) upper right in the routing space s1. o1,n | | | on,n | For i j, oi,j = 1 iff ri and rj overlap in C oi,j = 0 otherwise. For i = j, oi,j = 0. Though the overlap matrix OC is clearly constructable for any configuration C, for example by exhaustive testing of each pair of region sets for overlap, this theorem does not say how to construct it. It is a determinable fact that each pair of region sets in configuration C do, or do not, overlap. The overlap matrix OC is simply an encoding of the overlap status of each of those pairs of region sets. The function-style notation (R) was chosen for its intuitive meaning at two levels; (R) is part of the configuration (C) mapped to by , and it is in fact mapped from the components of R of configuration C. On the other, though (D) and (S) are also part of the configuration (C) mapped to by , they are not mapped from the components of D or S in configuration C as the notation suggests. Despite this, the function-style notation was used to make clear that (D) and (S) are part of the configuration (C). The same explanation applies to the components of (D) (e.g., (d1)) and (S) (e.g., (s1)). 5 (2j, 2i + 1) (2j, 2i) (2j + 1, 2i + 1) (2j + 1, 2i) Extent for Rule (1) iff oi,j = 1 (2i, 2j + 1) (2i + 1, 2j + 1) (2i, 2j) (2i + 1, 2j) Extent for Rule ( 2) iff oi,j = 1 Figure 1. Coordinates of extents defined by Rules (1) and (2) of mapping . Some explanation of the rules is in order. Rule (1) produces extents lined up along dimension (d1) and Rule (2) produces extents lined up along dimension (d2)6. Figure 1 illustrates the coordinates of the extents produced by each rule7. Although there are two rules, they do not define more than one extent (ei,j) for particular values of i and j for a single region (ri) because the values of j for the rules, j = (i + 1) to n for Rule (1) and j = 1 to (i - 1) for Rule (2), are disjoint. Rules (1) and (2) omit i = j because by definition of the overlap matrix OC, i = j oi,j = 0, so no extent will be present for i = j anyway. An extent (ei,j) of region (ri) in configuration (C) represents the fact that oi,j = 1, which in turn represents the fact that region set ri overlaps region set rj in configuration C. Rule (1) may define that extent for i > j, whereas Rule (2) may define it for i < j. The fact that there will be only one extent for a single region at a particular location (2i, 2j) in routing space (s1) means that if there are two extents at a particular location, then they are from two different regions and those two regions therefore overlap in (C). The intent of the rules is to map region sets that overlap in C to regions that overlap in (C), and vice versa. Informally, suppose region sets ra and rb overlap in DDM 1516 configuration C, with a < b. The overlap matrix OC will have oa,b = 1 and ob,a = 1. In DDM 1.3 configuration (C), region (ra) will by Rule (1) have an extent (ea,b) at location (2b, 2a)8 and region (rb) will by Rule (2) and have an extent (eb,a) also at location (2b, 2a) by Rule (2), causing (ra) and (rb) to overlap. The fact that C and (C) are equivalent will be shown formally later, but first two examples are given to illustrate the idea. Example. Assume configuration C 1516. Assume C has region sets R = {r1, r2, r3, r4}, so n = |R| = 4. Assume that the region sets overlap as follows 9: r1 overlaps r2, r1 overlaps r3, and r2 overlaps r4. No other region sets overlap. 6 By convention, the subscripts of the elements of matrix OC have their lowest values in the upper left, whereas the lowest values of the coordinate axes of routing space (s1) of configuration (C) are in the lower left. This has no real significance, but the relative positions of the extents to be defined in the coordinate space of (C) will be reflected with respect to the relative positions of the corresponding 1s in the overlap matrix OC. 7 Rules (1) and (2) may define extents with coordinates as large as 2n. In any actual implementation of HLA 1.3, an RTI parameter axis upper bound specifies the largest coordinate an extent may have on a dimension. It may seem that there is an implicit assumption in Theorem 3 that 2n < axis upper bound. However, Theorem 3 is concerned with the general structure of the DDM specifications, not with specific implementations and moreover, the assumption 2n < axis upper bound is not likely to be violated in any real federation. The overlap matrix OC for C will be: OC = | | | | 0 1 1 0 1 0 0 1 1 0 0 0 0 1 0 0 | | | | The location of an extent’s lower left corner will be used as a shorthand for stating the location of the extent as a whole. As defined by Rules (1) and (2), all of the extents defined by mapping are squares with axisparallel sides one unit in length. Because that is true in all cases, the coordinates of the lower left corner suffice to specify an extent’s location. 9 Clearly, the overlap relation between region sets is transitive, so ri overlaps rj rj overlaps ri. Only one of each pair is listed. 8 Region set ri R Region (ri) (R) i= 1 (1) (2) 2 (1) (2) 3 (1) (2) 4 (1) (2) Key for Table 1 (ei,j) at (x, y) - Extents of region (ri) (R) j= 2 3 oi,j = 1 oi,j = 1 (e1,2) at (4, 2) (e1,3) at (6, 2) oi,j = 0 oi,j = 0 oi,j = 0 oi,j = 0 oi,j = 1 oi,j = 0 (e4,2) at (8, 4) 1 oi,j = 0 oi,j = 1 (e2,1) at (4, 2) oi,j = 1 (e3,1) at (6, 2) oi,j = 0 4 oi,j = 0 oi,j = 1 (e2,4) at (8, 4) oi,j = 0 oi,j = 0 - oi,j considered by Rules (1) and (2), extent defined at (x, y), because oi,j = 1 oi,j considered by Rules (1) and (2), no extent defined, because oi,j = 0 oi,j not considered by Rules (1) and (2), because j i for Rule (1) or j i for Rule (2) Table 1. Example extents for (C). (ds) Routing space (s1) 10 9 8 7 6 5 4 (e2,4)(r2) (e4,2)(r4) 3 2 (e1,2)(r1) (e1,3)(r1) (e2,1)(r2) (e3,1)(r3) 1 1 2 3 4 Figure 2. Example extents for (C) in routing space . 5 6 7 8 9 10 (d1) Applying Rules (1) and (2) for each regions set ri R of C, 1 i 4, defines a total of 6 extents in the 4 regions in (R) of (C). Those extents are summarized in Table 1, where each extent defined is identified and the coordinates of its lower left corner are given. The extents defined for the example are illustrated in Figure 2. Note that in the figure, each square corresponds to two overlapping extents. By the definitions of DDM specification power given earlier, DDM 1.3 is at least as powerful as DDM 1516 iff configuration C 1516 configuration (C) (C) 1.3 and (C) E(C). The mapping defined above will be used to satisfy this definition by showing that the equivalent configurations exist. Given a configuration C 1516 and configuration (C) 1.3 corresponding to C as defined by mapping , it will be shown that (C) E(C) by showing that for any two region sets ra and rb R of C 1516, and the corresponding (ra) overlaps (rb) (R) of (C) in 1.3, ra overlaps rb iff (ra) overlaps (rb). Theorem 3. For every DDM 1516 configuration C there exists an equivalent DDM 1.3 configuration (C), i.e., for every C 1.3 there exists (C) such that (C) 1516 and (C) E(C). Therefore DDM 1.3 is at least as powerful as DDM 1516, i.e., DDM 1516 DDM 1.3. Proof. Assume C 1516 and (C) 1.3, where (C) corresponds to C as defined by mapping . It must be shown that for any two region sets ra and rb R of C 1516, and the corresponding (ra) overlaps (rb) (R) of (C) in 1.3, ra overlaps rb iff (ra) overlaps (rb). (Only if) Assume region set ra overlaps region set rb. Without loss of generality, assume a < b. By the assumption that a < b and the definition of the overlap matrix OC, oa,b = 1 and ob,a = 1. Because oa,b = 1, by Rule (1) region (ra) will have an extent (ea,b) at location (2b, 2a) in the routing space (s1). Because ob,a = 1, by Rule (2) region (rb) will have an extent (eb,a) also at location (2b, 2a) in the routing space (s1). Extents (ea,b) and (eb,a) have the same coordinates on the same dimensions, so they overlap. Therefore regions (ra) and (rb) overlap. (If) Assume (ra) overlaps (rb), where (ra), (rb) (R) of (C) 1.3. Without loss of generality assume a < b. Consider the possible extents of (ra). By Rule (1), (ra) may have these extents parallel to dimension (d1): (ea,a+1) at (2(a+1), 2a), (ea,a+2) at (2(a+2), 2a), …, (ea,n) at (2n, 2a). By Rule (2), (ra) may also have these extents parallel to dimension (d2): (ea,1) at (2a, 2), (ea,2) at (2a, 4), …, (ea,a-1) at (2a, 2(a-1)). Similarly, consider the possible extents of (rb). By Rule (1), (rb) may have these extents parallel to dimension (d1): (eb,b+1) at (2(b+1), 2b), (eb,b+2) at (2(b+2), 2b), …, (eb,n) at (2n, b). By Rule (2), (rb) may also have these extents parallel to dimension (d2): (eb,1) at (2b, 2), (eb,2) at (2b, 4), …, (eb,b-1) at (2b, 2(b1)). Given that a < b and considering the possible extents of (ra) and (rb), there is only one extent location in common where (ra) and (rb) could overlap; that location is (2b, 2a), which is the location of extent (ea,b) (ra), defined by Rule (1), and (eb,a) in (rb), defined by Rule (2). Figure 3 shows all of the possible extents of (ra) and (rb) and their possibly overlapping extents. Because (ra) and (rb) overlap by assumption, then they must have the extents (ea,b) (ra) and (eb,a) (rb). For extent (ea,b) to have been defined by the mapping (Rule (1), in particular), entry oa,b must = 1 in the overlap matrix OC. By the definition of OC, oa,b = 1 implies that ra overlaps rb (ra, rb R of C 1516). For every configuration C 1516, C and (C) 1.3 are equivalent. Thus, configuration C 1516 a configuration (C) (C) 1.3 and (C) E(C). Therefore, DDM 1.3 is at least as powerful as DDM 1516, i.e., DDM 1516 DDM 1.3. ■ 4.4 DDM 1.3 and DDM 1516 are equivalently powerful It is now a simple matter to settle the question of the relative power of DDM specifications 1.3 and 1516. Theorem 4. DDM 1.3 and DDM 1516 are equivalently powerful, i.e., DDM 1.3 = DDM 1516. Proof. DDM 1.3 DDM 1516 by Theorem 1 and DDM 1516 DDM 1.3 by Theorem 3. Therefore, DDM 1.3 = DDM 1516. ■ (d2) Routing space (s1) 2n ... 2(b+1) Rule (1) 2b Possible extents of (rb) Overlapping extents at (2b, 2a) 2(b-1) 2(a+1) Rule (1) Possible extents of (ra) 2a Rule (2) ... 4 Rule (2) 2(a-1) 2(b+1) 2b 2(b-1) ... 2(a+1) 4 2a 2 2(a-1) 2 ... 2n (d2) Figure 3. All possible extents of (ra) and (rb) under Rules (1) and (2). 5. Conclusions This section summarizes the main results, discusses how they may apply to federation developers, and briefly identifies some related work. 5.1 Theorem 2. No simple transformation from DDM 1516 configurations to DDM 1.3 configurations can be valid. This was proven by showing that all simple transformations from DDM 1516 configurations to DDM 1.3 configurations fail to produce equivalent configurations. Summary The differences in the definitions of DDM 1.3 and DDM 1516, including the elimination of routing spaces from the latter, have not affected its power to express and relate data production and requirements. This was shown by using formal methods to obtain several results. Two theorems have been previously reported. Theorem 1. DDM 1516 is at least as powerful, in terms of relating federates’ data production and requirements, as DDM 1.3. This was proven by exhibiting a simple transformation that, given any DDM 1.3 configuration, constructs an equivalent DDM 1516 configuration. Two new theorems were given here. Theorem 3. DDM 1.3 is at least as powerful as DDM 1516. This was proven by showing that for every DDM 1516 configuration there exists an equivalent DDM 1.3 configuration. Theorem 4. DDM 1.3 and DDM 1516 are equivalently powerful. This followed from Theorems 3 and 4. 5.2 Implications for federation developers Theorem 1 (DDM 1.3 DDM 1516) and Theorem 3 (DDM 1516 DDM 1.3) differ in a way that is relevant to HLA federation developers. Theorem 1 is a constructive proof; it is based on a transformation between DDM configuration sets and thus gives an algorithm that can be used to construct DDM 1516 configurations equivalent to DDM 1.3 configurations. A federation developer charged with converting an existing HLA federation from HLA 1.3 to HLA 1516 could apply transformation of Theorem 1 to convert the federation’s DDM design. One reasonably straightforward approach to doing so is to define DDM dimensions in the RTI initialization file for the HLA 1516 federation based on the HLA 1.3 federation’s DDM dimensions, as renamed according to transformation . The federates of the HLA 1516 federation, when creating and manipulating DDM regions and extents during a federation execution, use the renamed DDM 1516 dimensions corresponding to the DDM 1.3 dimensions they had previously used. Theorem 3 (DDM 1516 DDM 1.3) is an existence proof. Based on a mapping between DDM configuration sets, it shows that a DDM 1.3 configuration equivalent to each DDM 1516 configuration must exist, but does not say how to construct them. Therefore, mapping is of little help to a federation developer charged with converting an existing HLA 1516 federation to HLA 1.3. Fortunately, such conversions (from HLA 1516 to HLA 1.3) are likely to be undertaken less often than the reverse. 5.3 Related work In related work these results have been obtained: 1. DDM matching10 is not NP-complete [8]. 2. One approach to DDM connecting11 is NPcomplete [8] 3. Lower bounds on the time required for a single DDM matching query and the overall DDM matching process during a federation execution are in (log n) and (n log n) respectively [7]. 10 DDM matching is the process of determining which update and subscription regions overlap. 11 DDM connecting is the process of establishing interfederate data communications in the federation based on which regions overlap. 6. References [1] J. S. Dahmann, F. Kuhl, and R. Weatherly. “Standards for Simulation: As Simple as Possible But Not Simpler: The High Level Architecture for Simulation,” Simulation, Vol. 71, No. 6, pp. 378387, December 1998. [2] Defense Modeling and Simulation Office. “Department of Defense High Level Architecture Rules, Version 1.3,” February 5 1998, Online document at http://hla.dmso.mil/hls/tech/rules/. [3] Defense Modeling and Simulation Office. “Department of Defense High Level Architecture Object Model Template, Version 1.3,” February 5 1998, Online document at http://hla.dmso.mil/hls/tech/omtspec/. [4] Defense Modeling and Simulation Office. “Department of Defense High Level Architecture Interface Specification, Version 1.3,” April 2 1998, Online document at http://hla.dmso.mil/hls/tech/ifspec/. [5] F. Kuhl, R. Weatherly, and J. Dahmann. Creating Computer Simulation Systems, Prentice Hall, Englewood Cliffs NJ, 1999. [6] Institute of Electrical and Electronic Engineers. “IEEE P1516.1/D5 Draft Standard for Modeling and Simulation (M&S) High Level Architecture (HLA) – Federate Interface Specification”, IEEE Standards Draft, DRAFT 5, March 17 2000. [7] M. D. Petty. “Geometric and Algorithmic Results Regarding HLA Data Distribution Management Matching”, Proceedings of the Fall 2000 Simulation Interoperability Workshop, Orlando FL, September 17-22 2000. [8] M. D. Petty and K. L. Morse. “Computational Complexity of HLA Data Distribution Management”, Proceedings of the Fall 2000 Simulation Interoperability Workshop, Orlando FL, September 17-22 2000. [9] M. D. Petty. “Comparing the Power of the HLA Data Distribution Management Specifications 1.3 and 1516”, Proceedings of the Second Conference on Simulation Methods and Applications, Orlando FL, October 29-31 2000, pp. 214-223. [10] A. J. Pettofrezzo. Elements of Finite Mathematics, Orange Publishers, Winter Park FL, 1988. 7. Acknowledgements Dr. Katherine L. Morse (Epsilon Systems Solutions) explained details of the differences between DDM 1.3 and DDM 1516 early in this work. Dr. Richard M. Fujimoto (Georgia Institute of Technology) made a suggestion that improved the comparison of DDM specification power. Their assistance is gratefully acknowledged. Author’s Biography MIKEL D. PETTY is Chief Scientist of the Virginia Modeling, Analysis & Simulation Center at Old Dominion University. Dr. Petty was previously an Assistant Director of the Institute for Simulation and Training at the University of Central Florida. He received a Ph.D. from the University of Central Florida (UCF) in 1997, a M.S. from UCF in 1988, and a B.S. from the California State University, Sacramento, in 1980, all in Computer Science. He has worked in modeling and simulation since 1990 and has interests in simulation interoperability, computer generated forces, multi-resolution simulation, and applications of computational geometry. During 10 years of research he has published over 80 papers in those areas and has been awarded over 35 research contracts. He is currently a member of a National Research Council committee on modeling and simulation.
© Copyright 2025 Paperzz