Using the Oz Explorer for the Development of Constraint Programs
نویسنده
چکیده
The Oz Explorer [Sch97] is a visual constraint programming tool for Oz. Oz is a concurrent constraint language providing for functional, object-oriented, and constraint programming [Smo95]. It has a simple yet powerful computation model which extends the concurrent constraint model by first-class procedures, concurrent state and encapsulated search. The Explorer uses the search tree of a constraint problem as its central metaphor. The Explorer is a user-guided and visual search engine: The user can interactively explore the search tree which is visualised as it is explored. To the right a screen shot of the Explorer is shown with almost 10700 nodes, of which about 10600 do not correspond to solutions and are therefore hidden automatically. Nodes carry information on the corresponding constraints. The information can be accessed interactively by using predefined or user-defined display procedures. The Explorer can be used with any search problem. The problem need not be changed, annotated or modified in any way. In particular, the Explorer does not rely on a fixed constraint system. First insights into the structure of the problem can be gained from the visualisation of the search tree: how are solutions distributed, how many solutions exist, how large are the parts of the tree explored before finding a solution. The insights can be deepened by displaying and analysing the constraints of nodes in the search tree: from this it can be deduced whether constraint propagation is sufficient and whether the heuristic suggests the right choices. User-defined display procedures allow to customise the Explorer such that analysing can be done by tools suited to a particular application (e.g., Gantt-charts for scheduling applications). Interactive exploration allows to follow promising paths in the search tree without exploring irrelevant parts of it. This supports the design of new heuristics and search strategies. Complex real world problems require that a tool is practical with respect to both efficiency and display economics. The amount of information displayed by the Explorer is variable: the search tree can be scaled and subtrees can be hidden. In particular, all subtrees that do not contain solutions can be
منابع مشابه
Oz Explorer: A Visual Constraint Programming Tool
This paper describes the Oz Explorer and its implementation. The Explorer is a visual constraint programming tool intended to support the development of constraint programs. It uses the search tree of a constraint problem as its central metaphor. Exploration and visualization of the search tree are user-driven and interactive. The constraints of any node in the tree are available first-class: p...
متن کاملLogic Programming in
This short tutorial explains how to do Prolog-style logic programming in Oz. We give programming examples that can be run interactively on the Mozart system, which implements Oz. The Oz language is the result of a decade of research into programming based on logic. The Oz computation model subsumes both search-based logic programming and committed-choice (concurrent) logic programming with deep...
متن کاملCP-VIZ: An Open Source Visualization Platform for CP
Visualization is one of the best techniques for understanding the behaviour of constraint programs, allowing us to directly observe the impact of changes by visual inspection instead of using tedious debugging. So far, most constraint visualization tools have been closely linked to specific solvers, making it difficult to compare alternative solvers and to reuse development effort spent on othe...
متن کاملWoz ' 95 : International Workshop on Oz Programming
| This paper shows the Oz Solver, a tool designed to support the development of constraint programs. The Solver allows the user to interactively solve a constraint problem. As the problem's search tree is explored the Solver incrementally draws its graphical presentation. The user has access to the computation state at any node in the tree. Although search is controlled interactively by the use...
متن کاملSolver — An Oz Search Debugger
This paper shows the Oz Solver, a tool designed to support the development of constraint programs. The Solver allows the user to interactively solve a constraint problem. As the problem’s search tree is explored the Solver incrementally draws its graphical presentation. The user has access to the computation state at any node in the tree. Although search is controlled interactively by the user,...
متن کامل