The DTOOL/CNETS System
 

Overview
Basic Functionality
Standard References
Current Research
Current Status

Author's Home Page
 

 

Overview (paper)

DTOOL/CNETS is an integrated system for reasoning about the behavior of physical systems using causal networks. A most important feasture of DTOOL/CNETS is its ability to compile a system model into an embeddable diagnostic system which can be targeted towards a variety of software and hardware platforms.

DTOOL/CNETS  is the key tool for modeling and diagnosing systems at the Department of Diagnostic and Modeling at Rockwell Science Center. It is being used to model and diagnose systems in the domain of avionics, automation and space operations.
 


 


 

Compositional Modeling

DTOOL is a compositional modeling system  based on block diagrams. In DTOOL, a system is comprised of a set of interconnected blocks, each representing a system component.

Modeling a system using DTOOL is a three-step process:

The resulting structured system description is guaranteed to be globally consistent given that the behavioral equations of each block are locally consistent. The local consistency of behavioral equations is checked automatically by DTOOL. The formal definitions of local consistency, global consistency and structured system descriptions are given in:

Adnan Darwiche. Model-based diagnosis using structured system descriptions.
Journal of Artificial Intelligence Research, 8:165--222,June, 1998.
 


 

Interactive Diagnostic Reasoning

CNETS supports two modes of reasoning : Interactive and embeddedable.

In the interactive  mode, the user sets the inputs and outputs of components to certain values and requests that CNETS diagnose the system.

Shown on the right is a scenario in which CNETS has computed several diagnoses for the given observation and is in the process of displaying the second diagnosis by highlighting the corresponding broken component.

The interactive mode supports both diagnosis and simulation queries. If the user places the mouse over a component port, the system will display the possible values of that port, assuming that each component is in its ok mode (whenever the assumption is consistent with the system observation).
 


 
 
 
 
 
 
 

CNETS uses a structure-based algorithm to compute answers to queries which means that its performance depends on the connectivity of the underlying system structure. The less connected the system is, the more efficient the algorithm will be. The system structure corresponding to the above model is shown on the left.

The algorithm used by CNETS for computing answers to simulation and diagnostic queries is given in:

Adnan Darwiche. Model-based diagnosis using structured system descriptions. Journal of Artificial Intelligence Research,8:165--222, June, 1998.
 


 

Embeddable Diagnostic Reasoning

CNETS supports two modes of reasoning: Interactive and embeddedable.

In the embeddable reasoning mode, the user specifies a set of ports asobservables and requests the generation of an embeddable diagnostic system as shown on the right.
 

An embeddable diagnostic system is composed of two parts:
 

  •  A compiled system description;
  •  A diagnostic evaluator.

  •  

     

    The compiled system description is a propositional sentence in decomposable negation form; its representation is platform independent. The diagnostic evaluator is a simple piece of code which is specific to a given platform. The compiled system description corresponding to the above block diagram is shown below as a rooted directed acyclic graph.
     
     


    Given:
     

  • A compiled system description;
  • A value for each system observable (system observation),

  • the diagnostic evaluator can answer a varietyof diagnostic queries in time which is linear in the compiled representation. The time to generate, and space to store, a compiled system description is tied in a precise way to the connectivity of underlying system structure.

    The details of the diagnostic compiler and evaluator can be found in:

    Adnan Darwiche. Compiling devices: A structure--based approach. In Proceedings of the Fifth International Conferenceon Principles of Knowledge Representation and Reasoning (KR), pages156-166, 1998. (long version)
     


     

    Standard References

    An overview of the DTOOL/CNETS system and its application to diagnosis is given in:

    Adnan Darwiche. Realizing model-based diagnosis under real-world constraints. Technical Report #98-11.
    Department of Mathematics, American University of Beirut, Beirut, Lebanon.

    Following are the standard references on the origin of CNETS (the second reference contains a LISP implementation):

      1. Adnan Darwiche and Matthew L. Ginsberg. A symbolic generalization of probability theory.
          In Proceedings of theTenth National Conference on Artificial Intelligence(AAAI), pages 622--627, 1992.

      2. Adnan Darwiche. A symbolic generalization of probability theory.PhD thesis, Stanford University, 1992.

    Although CNETS can process probabilistic, symbolic and order-of-magnitude causal networks, it has been mostly used for processing symbolic causal networks. Therefore, most of the recent developments on CNETS have been focused on the symbolic case.

    Following are the standard references on the symbolic version of CNETS:

    3. The formal definition and properties of symbolic causal networks employed by CNETS:
          Adnan Darwiche and Judea Pearl. Symboliccausal networks. In Proceedings of the Twelfth National Conference
          on Artificial Intelligence (AAAI),pages 238--244, 1994.

      4. The on-line reasoning algorithm employed by CNETS:
          Adnan Darwiche. Model-based diagnosis using structured system descriptions. Journal of Artificial Intelligence
          Research, 8:165--222, June, 1998.

      5. The compilation technique employed by CNETS:
          Adnan Darwiche. Compiling devices: A structure--based approach. In Proceedings of the Fifth International
          Conference on Principles of Knowledge Representation and Reasoning (KR), pages 156-166, 1998. (long version)
     


     

    Current Status

    DTOOL is implemented in Lisp. Rockwell is now developing a JAVA version, known as EASIER, which is targetted towards modeling avionics systems. Rockwell is also adapting a C++ tool for function-block programming to provide a C++ alternative to DTOOL.

    CNETS is implemented in Lisp. Rockwell is now developing two JAVA versions of CNETS: One focused on probabilistic causal networks and the other focused on symbolic causal networks. The specifications of the symbolic versionare given above [3-5]. The specifications of the probabilistic version are given in:

      6. Cecil Huang and Adnan Darwiche. Inference in belief networks: A procedural guide.
          International Journal of Approximate Reasoning, 15(3):225--263, October, 1996.

      7. Adnan Darwiche and Gregory Provan. QueryDAGs: A practical paradigm for implementing belief--network inference.
         Journal of Artificial Intelligence Research,6:147--176, May, 1997.
     

    since 8/23/99