next up previous
Next: From model space to Up: Inference Previous: Inference

Scenario + Knowledge Base = Model Space

As previously stated, the aim of a compositional modeller is to translate a scenario into a scenario model. Both are representations of the system of interest though they model the system at a different level of detail. The knowledge base provides the foundation for translation. All the scenario models that can be constructed from the given scenario, with regard to the knowledge base, are stored in the model space.

A model space is an ATMS [7] containing all the participants, relations and assumptions that can be instantiated from a given scenario. In this work, the generalised version of the ATMS, as introduced by de Kleer [8], is employed as it allows the use of negations of nodes in the justifications. The algorithm $ \CALL{generateModelSpace}{\langle O,R\rangle}$ describes how such a model space can be created from a scenario $ \langle O,R\rangle$. It first initialises the model space $ \theta$ with the participant instances ($ O$) and the relation instances ($ R$) from the scenario. Then, for each model fragment whose source-participants and structural conditions match participants and relations already in $ \theta$, new instances of its target-participants, assumptions and postconditions are added to $ \theta$. Because each property definition $ \langle P^s,\Phi,\pi\rangle$ is equivalent to a model fragment $ \langle
P^s,\{\},\Phi,\{\pi\},\{\},\{\} \rangle$, this procedure applies to property definitions as well as model fragments. Matching the source-participants and structural conditions of a model fragment $ \mu$ to the emerging model space is performed by the function match$ (\mu,\theta,\sigma)$ as specified below, where $ \mu$ is the model fragment being matched, and $ \sigma$ is a substitution from the source-participants of $ \mu$ to participant instances.

match$\displaystyle (\mu,\theta,\sigma)= \begin{cases}\text{true} & \text{if } \quad\...
...n\Phi^s(\mu), \sigma\phi\in\theta\\ \text{false} & \text{otherwise} \end{cases}$    

...t,n_1\wedge\ldots\wedge n_m);
\end{pseudocode}\end{footnotesize} \end{algorithm}

Figure 5: Model fragment application

Each match, specified by a model fragment $ \mu$ and a substitution $ \sigma$, is processed as follows:

To illustrate this procedure, Figure 5 shows a graphical representation of the inferences that are constructed by applying a model fragment $ \mu=\langle
P^s,P^t,\Phi^s,\Phi^t,A,\{\}\rangle$ with respect to a substitution $ \sigma$.

Figure 6: Sources of inconsistency
\subfigure[Inconsistency caused by a global prope...

Once all possible applications of model fragments have been exhausted, the inconsistencies in the model space are identified and recorded in the ATMS. In the algorithm, nogoods are generated for each set $ \{n_1,\ldots,n_m\}$ of inconsistent nodes, denoted inconsistent$ (\{n_1,\ldots,n_m\})$. There are three sources of inconsistencies that are each reported to the ATMS in a different way:

Figure 7: Partial model space

To illustrate the model space construction algorithm, Figure 7 presents a small sample model space. It results from the application of the population-growth and logistic-population-growth model fragments and the endogenous property definition, which were described earlier, for a single population ``frog''. If a larger scenario involving multiple populations and relations between these populations were specified, a similar partial model space would be generated for each individual population.

next up previous
Next: From model space to Up: Inference Previous: Inference
Jeroen Keppens 2004-03-01