GENTRA4CP

Generic Trace Format for Constraint Programming

INFOVIS Analysis Toolkit




Overview

Welcome to the Generic Trace Format Analisys Toolkit version 1.0.0, copyright (C) 2004 INRIA-Rocquencourt, France.
This toolkit is designed to read and analyze GENTRA4CP files. GENTRA4CP (GENeric TRAce for Constraint Programming) is a new XML format suited to describe activities of a constraint solver. It is available at www.gentracp.org
It has been elaboreated in collaboration with the following providers of  CP tool :
This format is one of the major result of the French RNTL project OADYMPPAC (see http://contraintes.inria.fr/OADymPPaC).

Licensing

This software is published under the terms of the QPL Software License, a copy of which has been included with this distribution in the license-oadymppac.txt file.
This ToolKit is based on various Free libraries :

Quick Start

Analysing a trace file

The first action the user must perform is to load a new GENTRA4CP file. To do so, use the File->Open.
The application shows a File selection box. You can then choose an XML or XML.GZ (compressed) GENTRA4CP file.
When chosen the file, precise the type(s) of analysis to perform. (see Analyzers paragraph for details)
When the OK is clicked, XML file parsing and trace analysis start. A constant refresh of default views is performed. If the file has many events a Progress box is displayed. It is possible to interrupt the analysis. In this case, the application will use only the amount of data that have been read before the user’s interuption.

By this way, it is possible to work on part of a GENTRA4CP file.

By default, visualizations are graph represented by adgency Matrix.

NOTICE:

If no analysis has been chosen, the file is only parsed. Analysis can be called back later using the Analysis menu.

Tools provided here are not suited to observe trace containing millions of events.
Not only the parsing and analysis of the trace will be painfully slow but also, visualization results will also be very confusing.

Concept of visualization

This Toolkit is based on the generic visualization library INFOVIS. The main concept and aim of this library is to display any kind of complex dataset using various kind of graphical representations.
To do so, the Dataset is organized into a series of tables of columns :
Based on this generic and flexible framework, INFOVIS is able to produced various representations of  the dataset.

Modifying the visualization parameters

At the left side of the main application window, the workspace can contain several visualization windows.
At the right side of the main application window, the workspace contain the configuration panel of the selected visulaization.
The two workspace are separated by an adjustable grip.
Using the configuration panel, it possible to manipulate and reconfigurate the visualization.
This panel is organized in four tabs :

Using these for tabs, it is possible to enrich the dataset representation.

Changing visualization type

INFOVIS can display the same dataset using multiple graphical aspect. The GENTRA4CP analysis toolkit offers four different kinds of representation :

To get a new visualuzation, use the Visualization menu. The visualization corresponding to the dataset produced during the last analysis will be redisplayed using the selected representation.

Managing multiple windows

Performing multiple analysis, using different kind of visualization will multiply the number of displayed windows and of course overlapping. Rather than manually resizing and placement the multiples windows, the toolkit allows several option of windows arrangments :

Manual reisizing and placement is obviously possible, just like closing and iconifying windows.

The toolkit also provides a zoom capability on the selected window.


Stepped and animated observations

One of the main aim of this tool is to show the dynamic of the resolution of the traced CP solver.
To do so, it exists two way :

First of all, to use these features, it is necessary to display on the visualization an “historized” criteria, by selecting Column
For instance, in tab Visual, select Activation in the Color by combo-box.

To reduce the observation to a particular segment of trace, use the slider at the bottom of the main wokspace.
Adjust the knob of the slider to the willing range. Some part of the visualization will be desactivated.
By dragging the knob, it is possible to observe the evolution of the system by segment of execution having the same size
By resizing the knob, it is possible to observe the evolution of thesystem on larger/smaller segment of execution
By using the Forward/Rewind buttons (<< and >>)  it is possible to progress step by step. The step is equal to the half size of the knob.

To obtained an animated observation, use the Play (>)  button at the bottom left of the main aplication window.
The animation starts, replaying evolution of the system event by event. To have a more significant animation, it is possible to adjust the regular step of the animation. To adjust, enter in the text filed at the right of the Play button the number of events wanted.
For instance, entering 10 will configure the animation to replay excution by slice of ten events.

Animation stop is done by pressing the Play button.

NOTICE :

It is not necessary to stop the anaimation to modify it step. Step can be adjusted during a playing animation.

Analysis of trace file

Currently this toolkit performed two kind of analysis to observe the concept of propagation of CP Solver:

Variable-Constraint analysis

This feature constructs the weighted graph of reduction of the domains of the variables by the constraints.
Node of this graph are variables or constraints ( labelling constraint included)
This graph is obtained as follow :
Visualizing the results of this analysis can show efficiency of contraints to reduce domains of variables.

Constraint-Constraint analysis

This feature constructs the weighted graph of relation between constraints.
If <explanation> are provided in the GENTRA4CP file, then the graph is obtained as follow :
If <awake> are provided in in the GENTRA4CP file, then the graph is obtained as follow :
If  only <reduce> are provided in in the GENTRA4CP file, then the graph is obtained as follow :

Evaluation of Propagation Qty

Propagation quantity is always calculated with <reduce> event information, as follow:


Conlusions and perspectives

This toolkit is an ongoing work. Its initial objective was to mix CP Solver trace and generic visualization tools.
We hope this coulbe helpful to observe propagation of your own CP solvers
We also try to enhance this toolkit by providing new kind of tools. We aim at defining a much more complete debugging suite for CP Solvers supporting GENTRA4CP.

We are expecting your feedbacks.