Commit Graph

224 Commits (9b1918c085785c20efc07b65ed153a05012c5f8d)

Author SHA1 Message Date
Varun Agrawal 7ea1bbcfc3 replace error with errorTree 2024-01-05 15:04:15 -05:00
Varun Agrawal ee5bda9714 Merge branch 'discrete-error' into hybrid-printerrors 2024-01-05 14:47:28 -05:00
Varun Agrawal bc3b96a6e8 rename error to errorTree when it returns an AlgebraicDecisionTree 2024-01-05 03:24:50 -05:00
Varun Agrawal 9ad7697e5b Merge branch 'hybrid-printerrors' into model-selection-integration 2024-01-04 13:53:22 -05:00
Varun Agrawal 8d3500426e Merge branch 'discrete-error' into hybrid-printerrors 2024-01-04 13:47:11 -05:00
Varun Agrawal 0d058100e5 update wrapper for LM with Ordering parameter 2024-01-03 14:44:12 -05:00
Frank Dellaert fcda1536c6 Cleaner version of eliminate 2023-12-22 14:53:45 -08:00
Varun Agrawal 07ddec5f4b remove stray comment 2023-12-21 14:19:21 -05:00
Varun Agrawal 36604297d7 handle numerical instability 2023-12-18 14:26:54 -05:00
Varun Agrawal 6f09be51cb error normalization and log-sum-exp trick 2023-12-17 18:55:15 -05:00
Varun Agrawal cd5c13065b remove extra newline 2023-11-20 13:58:52 -05:00
Varun Agrawal 5387299b8b use correct key formatter 2023-11-14 04:48:23 -05:00
Varun Agrawal 114a0b220b printErrors method for HybridGaussianFactorGraph 2023-11-12 22:32:58 -05:00
Varun Agrawal 90a9e6f746 report correct error for discreteElimination 2023-11-09 15:37:15 -05:00
Varun Agrawal df0c5d7ca0 remove timers 2023-07-24 19:23:16 -04:00
Varun Agrawal f4adfac4fa Undo TableFactor return in Hybrid GFG so we can group the changes together 2023-07-17 13:00:38 -04:00
Varun Agrawal f6b1872b13 initial changes 2023-07-17 13:00:38 -04:00
Varun Agrawal 4e13fb717b simplify HybridEliminate 2023-07-17 13:00:38 -04:00
Varun Agrawal 59e26ee79d remove timers 2023-07-17 10:51:33 -04:00
Varun Agrawal 2b72f75a07 add timing checkpoints 2023-07-17 09:14:59 -04:00
Varun Agrawal 9531506492 rename variables to be agnostic to underlying data structure 2023-07-17 09:14:17 -04:00
Varun Agrawal c46bed7e52 fix hybrid timing calls to allow working with outer scope 2023-03-17 17:59:51 -04:00
Varun Agrawal 8ba5da44a6 some cleanup 2023-03-01 14:44:40 -05:00
Varun Agrawal 765e73879b Add better hybrid support 2023-02-13 19:40:38 -05:00
Frank Dellaert a8eb98acea Fixed warnings that arise from stricter compiler flags 2023-02-11 12:32:50 -08:00
Frank Dellaert ae7c17420d Replace std::tie with c++17 pattern matching 2023-02-04 10:28:14 -08:00
kartik arcot c037e0a1fc replaced casts 2023-01-22 08:40:02 -08:00
kartik arcot 852e8768c0 shared_ptr, make_shared, allocate_shared 2023-01-22 08:40:02 -08:00
Frank Dellaert e444962aad Added correction with the normalization constant in the second elimination path. 2023-01-17 07:47:56 -08:00
Frank Dellaert 519b2bb515 Added comment 2023-01-16 18:56:25 -08:00
Frank Dellaert e31884c9a1 Eradicated GraphAndConstant 2023-01-16 18:28:12 -08:00
Frank Dellaert dfef2c202f Simplify elimination 2023-01-16 10:30:47 -08:00
Frank Dellaert 03ad393e12 Removed FactorAndConstant, no longer needed 2023-01-16 10:30:47 -08:00
Frank Dellaert 83bae7d701 Moved factor graph error(HybridValues) to FactorGraph base class. 2023-01-10 13:50:37 -08:00
Frank Dellaert 691baa56de Fix issue with HybridOrdering 2023-01-08 00:21:51 -08:00
Frank Dellaert 2e233364b6 Merge branch 'develop' into hybrid/refactor
# Conflicts:
#	gtsam/hybrid/HybridGaussianFactorGraph.cpp
#	gtsam/hybrid/tests/testHybridGaussianFactorGraph.cpp
#	python/gtsam/tests/test_HybridNonlinearFactorGraph.py
2023-01-08 00:16:23 -08:00
Frank Dellaert 4e8dc6e34b Remove GaussianFactor wrapper (easy!) 2023-01-06 23:41:08 -08:00
Frank Dellaert a46c53de3e Added handling of naked Gaussian factors added in python 2023-01-06 23:22:56 -08:00
Frank Dellaert 88f27a210a Fixed tests 2023-01-06 23:02:49 -08:00
Frank Dellaert 7e32a8739e Removed HybridDiscreteFactor wrapper 2023-01-06 21:07:51 -08:00
Frank Dellaert 1538452d5a Make HybridFactorGraph just a FactorGraph<Factor> with extra methods 2023-01-06 17:03:55 -08:00
Varun Agrawal e43fd3e8ca Make HybridOrdering a function and use it for Hybrid DefaultOrderingFunc 2023-01-06 10:13:44 -05:00
Varun Agrawal 34daecd7a4 remove deferredFactors 2023-01-04 02:54:34 -05:00
Varun Agrawal 195dddfdeb clean up HybridGaussianFactorGraph 2023-01-03 01:50:16 -05:00
Varun Agrawal 66b846f77e Merge branch 'hybrid/elimination' into hybrid/test_with_evaluate 2023-01-03 01:44:06 -05:00
Frank Dellaert 797ac344fa Same correct error with factor_z.error() 2023-01-02 13:24:28 -05:00
Frank Dellaert 12d02bed1a Right marginals for tiny1 2023-01-02 13:22:16 -05:00
Frank Dellaert f8d75abfeb name change of Sum to GaussianFactorGraphTree and SumFrontals to assembleGraphTree 2023-01-02 13:11:22 -05:00
Varun Agrawal e3a63aa77c check for 0 sum 2023-01-02 10:03:56 -05:00
Varun Agrawal cae98e1d3e rename eliminate to eliminateFunc 2023-01-02 09:44:43 -05:00
Varun Agrawal 8f5689b762 minor readjustment 2023-01-02 09:44:03 -05:00
Frank Dellaert 4d313fae77 Comment on constant 2023-01-01 18:01:48 -05:00
Frank Dellaert 2c7b3a2af0 Refactoring in elimination 2023-01-01 17:44:53 -05:00
Frank Dellaert 0095f73130 attempt to fix elimination 2023-01-01 17:02:23 -05:00
Frank Dellaert b09495376b Fix compile issues after rebase 2023-01-01 11:43:38 -05:00
Frank Dellaert fa76d53f16 refactored and documented SumFrontals 2023-01-01 11:32:56 -05:00
Frank Dellaert b463386514 Made SumFrontals a method to test 2023-01-01 11:30:49 -05:00
Frank Dellaert f6f782a088 Add static 2023-01-01 11:29:01 -05:00
Frank Dellaert efd8eb1984 Switch to EliminateDiscrete for max-product 2023-01-01 11:25:33 -05:00
Varun Agrawal a23322350c GraphAndConstant struct for hybrid elimination 2023-01-01 06:37:10 -05:00
Varun Agrawal 878eeb5d73 simplify the error addition 2022-12-31 12:33:37 +01:00
Varun Agrawal 99825fcfe2 use FactorAndConstant error() 2022-12-31 12:24:58 +01:00
Frank Dellaert b83cd0ca86 Make a virtual error method 2022-12-30 15:16:13 -05:00
Frank Dellaert beda6878aa Fixed tests 2022-12-30 13:10:29 -05:00
Frank Dellaert 9cf3e5c26a Switch to using HybridValues 2022-12-30 13:10:29 -05:00
Frank Dellaert b972be0b8f Change from pair to small struct 2022-12-30 13:10:29 -05:00
Varun Agrawal 22c758221d make GaussianMixtureFactor store the normalizing constant as well 2022-12-30 19:28:42 +05:30
Varun Agrawal 6f8a23fe34 minor fixes 2022-12-30 17:32:31 +05:30
Varun Agrawal 1beeef840b Merge branch 'develop' into hybrid/model-selection 2022-12-30 17:09:26 +05:30
Varun Agrawal 16da553496
Merge pull request #1357 from borglab/hybrid/store_constant 2022-12-30 06:34:06 -05:00
Varun Agrawal 3ab91b27d5 Merge branch 'develop' into hybrid/model-selection 2022-12-30 13:49:32 +05:30
Varun Agrawal 28f349c57d minor fixes 2022-12-30 10:47:06 +05:30
Varun Agrawal ef83628efe Merge branch 'hybrid/tests' into hybrid/model-selection 2022-12-30 10:17:15 +05:30
Varun Agrawal cf46c36862 Merge branch 'develop' into hybrid/tests 2022-12-30 10:13:30 +05:30
Frank Dellaert 9787bba22e Add forwarding constructors and document better. 2022-12-29 18:05:47 -05:00
Frank Dellaert a4659f01c7 Add error and probPrime variants 2022-12-29 14:13:35 -05:00
Frank Dellaert a7573e8e6f Refactor elimination setup to not use C declaration style 2022-12-25 19:21:34 -05:00
Varun Agrawal 0bbd279bbb improved comments 2022-12-25 01:10:23 +05:30
Varun Agrawal a27979e84b minor refactoring 2022-12-25 01:09:37 +05:30
Varun Agrawal ae0df477bf Merge branch 'develop' into hybrid/tests 2022-12-24 12:01:00 +05:30
Varun Agrawal d94b3199a0 address review comments 2022-12-22 09:22:34 +05:30
Varun Agrawal 812bf52c11 minor cleanup 2022-12-21 15:08:24 +05:30
Varun Agrawal 6beffeb0c1 remove commented out code 2022-12-10 12:46:48 +05:30
Varun Agrawal 62bc9f20a3 update hybrid elimination and corresponding tests 2022-12-10 10:35:46 +05:30
Varun Agrawal addbe2a5a5 override eliminate in HybridJunctionTree 2022-12-04 14:55:17 +05:30
Varun Agrawal cd3cfa0faa moved sequential elimination code to HybridEliminationTree 2022-12-03 17:14:11 +05:30
Varun Agrawal 3eaf4cc910 move multifrontal optimize test to testHybridBayesTree and update docstrings 2022-12-03 17:00:51 +05:30
Varun Agrawal 239412956c address review comments 2022-11-15 00:50:03 -05:00
Varun Agrawal 5e2cdfdd3b make continuousProbPrimes and continuousDeltas as templates 2022-11-12 23:07:34 -05:00
Varun Agrawal d54cf484de fix creation of updatedBayesTree 2022-11-09 20:04:51 -05:00
Varun Agrawal 0938159706 overload multifrontal elimination 2022-11-09 18:38:42 -05:00
Varun Agrawal eb94ad90d2 add HybridGaussianFactorGraph::probPrime method 2022-11-08 15:49:37 -05:00
Varun Agrawal cb55af3a81 separate HybridGaussianFactorGraph::error() using both continuous and discrete values 2022-11-08 14:20:51 -05:00
Varun Agrawal 1a3b343537 minor clean up and get tests to pass 2022-11-08 14:00:44 -05:00
Varun Agrawal 3987b036a7 add optional ordering and fix bug 2022-11-08 13:36:18 -05:00
Varun Agrawal 1815433cbb add methods to perform correct elimination 2022-11-07 18:29:49 -05:00
Varun Agrawal a6d1a57478 fix hybrid elimination 2022-11-07 16:10:48 -05:00
Varun Agrawal a97d27e981 Merge branch 'hybrid/error' into hybrid/tests 2022-11-07 15:43:24 -05:00
Varun Agrawal 551cc0d32b add error and probPrime methods to HybridGaussianFactorGraph 2022-11-07 15:42:47 -05:00
Varun Agrawal 7dec7bb00d remove if guards and add timing counters 2022-10-25 12:36:15 -04:00
Varun Agrawal 6bd16d995e move GTDKeyFormatter to types.h 2022-10-07 15:29:20 -04:00
Varun Agrawal 812ae30366 Merge branch 'hybrid/gaussian-conditional' into varun/test-hybrid-estimation 2022-10-04 13:32:04 -04:00
Varun Agrawal 9002b68291 fix the bug 2022-10-04 12:33:37 -04:00
Varun Agrawal 75b2599e82 remove unnecessary comments 2022-10-03 17:31:53 -04:00
Varun Agrawal bf2015de8f Merge branch 'hybrid/check-elimination' into varun/test-hybrid-estimation 2022-10-03 11:52:03 -04:00
Varun Agrawal 269d60e2c2 Merge branch 'develop' into varun/test-hybrid-estimation 2022-10-03 11:35:30 -04:00
Varun Agrawal c2ca426acc rename allDiscreteKeys and allContinuousKeys to discreteKeys and continuousKeys respectively 2022-09-20 05:16:26 -04:00
Varun Agrawal 9ef5c184ec move renamed allDiscreteKeys and allContinuousKeys to HybridFactorGraph 2022-09-17 08:04:55 -04:00
Varun Agrawal 8b5b42b6e9 Add check for MixtureFactor to ensure the continous keys are the same as in the factors 2022-09-12 18:07:53 -04:00
Varun Agrawal 858193d5df remove print statements 2022-09-11 16:44:18 -04:00
Varun Agrawal b4c70f2ef9 add code for simplified hybrid estimation 2022-09-03 22:39:10 -04:00
Varun Agrawal 4852949b75 add helpers to get different types of keys from the hybrid graph 2022-08-31 12:25:57 -04:00
Varun Agrawal 86320ff3b5 extra test for HybridBayesNet optimize 2022-08-26 16:45:44 -04:00
Varun Agrawal 893c5f77f8 cast to only HybridGaussianFactor 2022-08-22 08:29:32 -04:00
Varun Agrawal 6b792c0a4c add note about sumFrontals 2022-08-21 12:56:59 -04:00
Varun Agrawal 29c19ee77b handle HybridConditional and explicitly set Gaussian Factor Graphs to empty 2022-08-21 12:49:13 -04:00
Varun Agrawal ee124c33c3 fix discrete only elimination (use EliminateForMPE) 2022-08-02 19:10:27 -04:00
Varun Agrawal 89079229bc get more nonlinear tests to work and make some updates 2022-08-01 12:50:10 -04:00
Varun Agrawal eeecb27f14 rename back to HybridJunctionTree 2022-06-03 13:29:05 -04:00
Varun Agrawal 92176db645 add comments 2022-06-02 22:50:44 -04:00
Varun Agrawal dd877479fa separate out summing of frontals into separate function 2022-06-02 22:47:45 -04:00
Varun Agrawal 3e10514846 if checks for dynamic_cast 2022-06-02 22:45:12 -04:00
Varun Agrawal c8bf9d350c rename GaussianMixtureConditional to GaussianMixture 2022-06-02 00:13:02 -04:00
Varun Agrawal 7c7b5dd030 Rename files so that everything is HybridX 2022-06-01 23:52:21 -04:00