Created
September 20, 2026 23:33
-
-
Save dellaert/ed9c8ed6bbfa22a4f027474b9c3e32b5 to your computer and use it in GitHub Desktop.
Jev + GTSAM: minimal standalone reproduction of CPT generation, evidence updates, and Bayesian-network structure recovery
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thanks for posting this. I tried the same idea on the hybrid side of GTSAM, where Jev supplies discrete evidence on the modes instead of CPTs.
The setup is a robot whose odometry steps are either normal or slippery. Each step has a short log note ("Sprinklers ran on the lawn crossing at dawn", "Carpeted corridor B, quiet"). Jev turns each note into a unary
DecisionTreeFactoron that step's mode, and the rest is ordinary hybrid smoothing. The notes are synthetic, and the pools are frozen before any results are seen.It is now a GTSAM example notebook: borglab/gtsam#2832. Writing it also turned up an exponential slowdown in
TableFactor::toDecisionTreeFactorthat madeHybridSmoothercrawl after about 40 steps; the fix is borglab/gtsam#2830.Three things mattered:
I packaged both uses, per-variable mode factors and Bayes nets from descriptions, with record/replay so results reproduce without a key: https://github.com/jashshah999/gtsam-jev