-
Notifications
You must be signed in to change notification settings - Fork 3
/
params.json
1 lines (1 loc) · 4.02 KB
/
params.json
1
{"name":"Search Tree Visualization for Finite Domain Constraint Problems","body":"Explorer.js is a plug-in library to the [FD.js](http://nishabdam.com:8080/fd/index) library \r\nwritten by Mr. Srikumar. Explorer.js allows users to follow the search process\r\ngraphically and step by step. \r\n\r\nAs FD.js is designed based on the Finite Domain Constraint Programming \r\nfeature of [Mozart/Oz](http://www.mozart-oz.org/documentation/fdt/index.html),\r\nExplorer.js is also designed based on the [Oz Explorer](http://www.mozart-oz.org/documentation/explorer/index.html). \r\n\r\nDependencies\r\n---------------------\r\nAll of these libraries need to be loaded prior to Explorer.js for full \r\nfunctionality.\r\n\r\n+ [FD.js](http://nishabdam.com:8080/fd/index) (Finite Domain Constraint main engine)\r\n+ [Kinetic.js](http://www.kineticjs.com/) (Drawing and interaction on HTML5 Canvas)\r\n+ jQuery.js (Needed for below libraries and Explorer's hotkey functionality)\r\n+ jQuery.ui.position.js (Needed to nicely position the context menu but can be\r\nignored. Refer [jQuery.contextMenu.js](https://github.com/medialize/jQuery-contextMenu/blob/gh-pages/README.md))\r\nfor more detailed.)\r\n+ [jQuery.contextMenu.js] (https://github.com/medialize/jQuery-contextMenu/blob/gh-pages/README.md)\r\n(Creating the context menu in the Explorer)\r\n\r\nUser Guide\r\n---------------------\r\n### Invoke the Explorer\r\nExplorer.js provides 4 methods to invoke the Explorer (as part of FD). The first 3 use depth first search engine\r\nwhile the last one uses branch and bound search engine.\r\n\r\n+ **FD.Explore** (*problem*, *container*) : Initialize the explorer and display the orignal space\r\n+ **FD.ExploreOne** (*problem*, *container*) : Initialize the explorer and display the search tree until the first \r\nsolution is found\r\n+ **FD.ExploreAll** (*problem*, *container*) : Initialize the explorer and display the entire search tree\r\n+ **FD.ExploreBest** (*problem*, *container*) : Initialize the explore and display the entire search tree (using \r\nbranch and bound search)\r\n\r\nExplanation\r\n\r\n- *problem* : An object describes the FD constraint problem to be solved. Refer to [FD.js API](http://nishabdam.com:8080/fd/wiki?name=API)\r\nto learn how to write scripts in FD.js.\r\n\r\n````javascript\r\n\tvar problem = {\r\n\t\tscript: function (space) { \r\n\t\t\t...\r\n\t\t},\r\n\t\t// Only for branch and bound\r\n\t\tordering: function (space, best_solution) { \r\n\t\t\t...\r\n\t\t},\r\n\t\t// Optional\r\n\t\tsolve_for: FD.search.solve_for_variables(...) \r\n\t};\r\n````\r\n\r\n- *container* : HTML div id of the div tag where the canvases (Kinetic.js creates \r\nmany layers of canvas!) reside\r\n\r\n---------------------\r\n### Context Menu & Hotkeys\r\nTo explore the the search tree, you can use either the context menu (by right click) or the hotkeys.\r\n\r\n+ Display space (**d**) - Display the space's varibles and their domains\r\n+ Collapse (**space**) - Collapse a node\r\n+ Expand (**space**) - Expand a node\r\n+ Explore Next (**n**) - Explore the next space\r\n+ Explore One (**o**) - Explore the subtree until the next solution is found\r\n+ Explore All (**a**) - Explore the entire subtree\r\n\r\n---------------------\r\n### The Search Tree\r\n\r\n![](https://github.com/minhtule/Search-Tree-Visualization/raw/gh-pages/nodes.jpg \"Nodes in the search tree\")\r\n\r\n**Figure 1:** Nodes in the search tree\r\n\r\n\r\n![](https://github.com/minhtule/Search-Tree-Visualization/raw/gh-pages/subtrees.jpg \"Collapsed subtrees in the search tree\")\r\n\r\n**Figure 2:** Collapsed subtrees in the search tree\r\n\r\nAuthors\r\n---------------------\r\n### Authors\r\n+ [Minh Tu Le](https://github.com/minhtule) (<[email protected]>)\r\n+ [Shubham Goyal](https://github.com/shubhamgoyal) (<[email protected]>)\r\n\r\n### Supervisors\r\n+ Assoc. Prof. Martin Henz (National University of Singapore)\r\n+ Mr. Srikumar K. S. (National University of Sinagpore)","tagline":"","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}