After a small (unexpected) break, I’m getting back to fortnightly updates of Make-Believe. While it’s been a while since the last post, I have been making changes to the code, so there’s a few extra things in this update. Firstly, there are some bug fixes to really silly regressions that had snuck in. As a consequence, there are also a first set of regression tests now to help make future versions a touch more reliable.
It’s possible to switch between belief bar and labelled box view. This is experimental, but should work fine. The main issue is I need to rework arrow drawing to handle different node shapes. (But it works pretty well nonetheless.)
It’s now possible to view and change node equations and comments. Changes are saved to .xdsl files.
Finally, a very experimental and rough visualisation under View -> Show Arc Strengths. This shows the proportion of a child’s entropy that each parent would reduce if evidence in that parent were set. This is also conditional on the current evidence in the network, which is kind of neat, because you can see (for example) the effect of evidence on d-separation/d-connection. As mentioned, it’s still experimental, so things can get a little comical with oversized arrowheads and the like. (SVG markers are not as flexible as I’d like.)
One current issue is that I’ve had to disable worker-based inference, until I’ve cleaned up a few things.
- Fixed entering evidence in first state (should have been ‘if undefined’ not ‘if 0’)
- TESTING: Created testing file (makeBelieveTests.js), and added an initial test
- TESTING: Added click-to-update test. Accuracy may be an issue for reproducibility
- TESTING: Added running tests to debug menu
- For very small iterations, worker threads > iterations. Fixed to handle this properly
- Auto-layout is now animated. (Using a slow method –can be much faster.)
- Auto-layout animation with faster method. 🙂
- Added a label-only view
- Fixed: [bug] auto-layout, switching between distro/label view sometimes causes arrows to disappear
- Prompt for node delete (in future, undo/redo makes this redundant/undesirable)
- Allowed viewing of equation node definitions
- Allowed setting the equation node definitions (with no validation)
- Added comment reading/viewing from .xdsl file
- Allow changing text in comments
- Save comment to .xdsl file
- Fixed decision network evaluation bustage (broken since had switched to worker threads as default)
- TESTING: Added a simple regression test for decision networks
- Very preliminary add node capability (backend only)
- Arc weights based on % mutual info for children