IRIDIA
Université Libre de Bruxelles

Pulcinella


Pulcinella is a tool for Propagating Uncertainty through Local Computations based on the general framework af valuation systems proposed by Shenoy and Shafer. Pulcinella has been developed at IRIDIA, the Artificial Intelligence Laboratory of the Université Libre de Bruxelles, Belgium, by Elisabeth Umkehrer, Hong Xu and Alessandro Saffiotti.

Overview

Pulcinella is written in CommonLisp, and appears as a library of Lisp functions for creating, modifying and evaluating valuation systems. Alternatively, the user can choose to interact with Pulcinella via a graphical interface (only available in Allegro CL). Pulcinella provides primitives to build and evaluate uncertainty models according to several uncertainty calculi, including probability theory, possibility theory, and Dempster-Shafer's theory of belief functions; and the possibility theory by Zadeh, Dubois and Prade's. A User's Manual is available on request [6].

Valuation Systems

Valuation systems provide a general framework for local computation in which the process of network propagation in itself has been abstracted from what is actually propagated. Valuation systems have been shown to capture other existing propagation schemas (e.g. Lauritzen and Spiegelhalter's and Pearl's schemas). Valuation systems can model probability and belief function propagation; they can also formalize other existing uncertainty theories, including possibility theory and Spohn's system. Valuation systems have been initially conceived by Shafer and Shenoy [1], and have been further investigated and extended by Shenoy.

Specializations

Pulcinella implements the general framework discussed above: it may be specialized to a given uncertainty theory by choosing an interpretation for the objects and the operators. Four interpretations of the general framework (called "specializations") are pre-installed in Pulcinella: plain propositional calculus; probability theory; Dempster- Shafer's theory; and possibility theory. The user can select one of these specializations by calling the function specialize-uncertainty, or by using a menu. Thus, Pulcinella can be transformed in a probability propagation system, in a belief function propagation system, and so on.

Pulcinella is designed to make it easy for the user to define and install new specialization in it (provided that they can be modelled in the valuation system framework). A specialization for a new uncertainty calculus is written by defining a small set of functions with a well defined semantics. Simon Parsons has defined a set of new Pulcinella specializations to model and propagate qualitative uncertainty.

Working with Pulcinella

Modelling a problem in Pulcinella comprises two steps. In the first step, the user specifies the structural knowledge of his problem. This means defining all the variables to be used (along with their possible values), and indicating which variables are linked together by a relation. By defining the variables and the relations the user implicitly fixes the subsets of variables for which uncertainty values can be specified in the second step.

Having specified a structural model, the user can select an uncertainty calculus and enter the second step. This step consists in modelling the quantitative knowledge, i.e., in defining the nature and the values of the relations between variables. This step depends from the uncertainty theory which is being used. In this phase, the user can also enter prior or input values for variables.

Once the valuation system has been completely defined, the user can evaluate it by asking Pulcinella to start propagation. If the user wants to apply different uncertainty theories on the same problem, he has to specify the structural knowledge only once. He can use the same variables and relations for different specializations. This allows one to easily test the behavior of different uncertainty calculi over the same problem.

Comparing uncertainty theories with Pulcinella

Pulcinella can be used to compare uncertainty theories. The key for Pulcinella's comparison power lies in the separation made between the process of modelling the structural knowledge of a problem, and that of modelling its qualitative knowledge. Once a structural model has been decided, we can superimpose any of the available uncertainty calculi on it. This comparison power can be useful for educational purposes; it can also serve at the first stages of a knowledge engineering task, where alternative theories of uncertainty can be tested on a bench-mark in order to choose the one that best fits the target problem (see [5,7]).

How to get Pulcinella

Pulcinella is freely available for educational and strictly non-commercial use. Pulcinella is written in Common Lisp. It has been tested on Allegro CL on Macintosh, and on Lucid CL, Allegro CL, and CLisp on a Sun. The code is just "pure" common lisp, so it should also run on any other reasonable implementation of common-lisp (well, you know...). To get the latest version, click here. Alternatively, you can get Pulcinella by anonymous ftp from ftp://aass.oru.se/pub/saffiotti. The Pulcinella tar archive includes a few examples, taken from the User's Manual. If you fetch this program, you are expected to send a letter at the address below, stating that you will use Pulcinella for research and non-commercial use only.

Graphical interface

Pulcinella used to have a graphical interface. This interface existed in two flavors: one for Suns, and one for Macintosh. We also had a Macintosh standalone application version available. Unfortunately, both graphical interfaces did not survive new releases of operating systems. (The interface for the Sun only seems to have minor "oddities"; you may try it out by clicking here, but remember that it requires Allegro CL with Common Windows.) We are currently in the process of fixing these problems, and we plan to produce a new Common Lisp (or even C) version sometimes in the future. The current version of Pulcinella has no graphical interface: you have to call lisp functions to create and evaluate valuation systems (see the User's Manual for how you do it). Sorry!


Related systems

Pulcinella is an extension of an early version of Hong Xu's "TresBel" [4], a system for building and evaluating belief function models using Shenoy and Shafer's local propagation technique. Pulcinella also owns a lot to the two predecessors of TresBel: Deborah Zarley's "Delief" system [2]; and Yen-Teh Hsia's "MacEvidence" [3].

Other systems for network-based propagation of uncertainty values can be accessed through Russel Almond's excellent Belief Networks web page, or via the AFIT's AI Lab web page.


References

(See also Saffiotti's related papers)
[1] Shenoy, P.P. and Shafer, G. (1988)
An Axiomatic Framework for Bayesian and Belief-Function Propagation. Procs. of the AAAI Workshop on Uncertainty in AI 307-314.

[2] Zarley, D.K., Hsia, Y. and Shafer, G. R. (1988)
Evidential Reasoning using DELIEF. Working Paper 193. School of Business, Univ. of Kansas, Lw.

[3] Hsia, Y. and Shenoy, P.P. (1989)
MacEvidence: A Visual Environment for Constructing and Evaluating Evidential Systems. Working Paper No. 211. School of Business, Univ. of Kansas, Lw.

[4] Xu, H. (1991)
An Efficient Implementation of Belief Function Propagation. Procs. of the Conf. on Uncertainty in AI. Los Angeles, CA.

[5] Saffiotti, A. and Umkehrer, E. (1991)
PULCINELLA: A General Tool for Propagating Uncertainty in Valuation Networks. Procs. of the Conf. on Uncertainty in AI. Los Angeles, CA. [Abstract]

[6] Saffiotti, A. and Umkehrer, E. (1991)
PULCINELLA User's Manual. Technical Note TR/IRIDIA/91-5. IRIDIA, Univ. Libre de Bruxelles, Belgium.

[7] Saffiotti, A., Parsons, S. and Umkehrer, E. (1994)
Comparing Uncertainty Management Techniques. Microcomputers in Civil Engineering 9 367-380. [Abstract]

[8] Saffiotti, A. and Umkehrer, E. (1994)
Automatic Construction of Valuation Systems from General Clauses. IEEE Trans. on Systems, Man, and Cybernetics 24(11) 1611-1624. [Abstract]

Contact address

Please use the address below to
Dr. Pulcinella
IRIDIA, Université Libre de Bruxelles
50, Av. F. Roosevelt, CP 194/6
B-1050 Brussels, Belgium

You can also send e-mail to Dr.Pulcinella@iridia.ulb.ac.be.


This page accessed times.
Last updated: Mar 8, 1996 by A. Saffiotti.