Commit Graph

97 Commits (13a4da21b2e25db9c68f02b87b6416f85a723ff1)

Author SHA1 Message Date
Richard Roberts cd300bfeff First pass at marginalization of leaves in iSAM2 - passes unit tests but needs to be tested on real data 2013-02-24 19:09:54 +00:00
Richard Roberts 717fa5781b Comment formatting 2013-02-24 19:09:51 +00:00
Richard Roberts b4f5413989 Added an argument to ISAM2::update to not change the linearization point of a given set of variables 2013-02-21 15:59:50 +00:00
Richard Roberts 013705232c Maintain reverse-lookup inside of Ordering, to allow fast partial permutations, and modified iSAM2 to use partial permutations on Ordering. Removed InvertedOrdering and updated other GTSAM code and unit tests to use the Ordering reverse-lookup function "key" instead of calculating and inverse ordering. 2013-01-08 23:31:06 +00:00
Richard Roberts 4cb66dcdcc For speed, added partial permutation version of VectorValues::permuteInPlace and removed Permutation::partialPermutation (which generated a full-length permutation with only a few entries rearranged) 2012-12-18 14:21:58 +00:00
Richard Roberts b58fb71377 Some usage (still more to do) of sparse and partial permutations in iSAM2 partial reordering to improve asymptotic performance. 2012-12-18 14:21:28 +00:00
Richard Roberts 7309aa0ffa Unit tests pass with piecewise VectorValues implementation (for fast permutations) 2012-12-18 14:21:02 +00:00
Richard Roberts bd285fbb52 Merge remote-tracking branch 'svn/trunk' into isam2-chain-optimization
Conflicts:
	gtsam/linear/HessianFactor.cpp
	gtsam/linear/VectorValues.cpp
2012-12-18 14:20:31 +00:00
Richard Roberts 5b9271cb97 VV work 2012-11-23 23:22:53 +00:00
Richard Roberts 0c3761a2a9 Reverted r14178, r14179, r14195, r14196 (isam2 chain optimizations) to move them to a branch 2012-11-11 20:51:03 +00:00
Richard Roberts 4512e4c85d Some usage (still more to do) of sparse and partial permutations in iSAM2 partial reordering to improve asymptotic performance. 2012-11-03 21:10:58 +00:00
Stephen Williams 5505483111 Fixed bug in iSAM2 when removing factors/variables. The set of ordering constraints should not contain unaffected variables. 2012-10-21 02:09:58 +00:00
Richard Roberts 89b50e7679 Renamed tic -> gttic and toc -> gttoc to avoid conflict with PCL tic/toc 2012-10-02 20:18:41 +00:00
Richard Roberts 4876cc7ff7 Revamped timing statements - much easier to use, exception-safe (see email to frankcvs list) 2012-10-02 18:36:39 +00:00
Chris Beall 4297d24c96 changed tabs to spaces for consistent indentation in all of GTSAM 2012-10-02 14:40:07 +00:00
Richard Roberts b0508cc1a8 Removed JacobianFactorGraph - moved its linear algebra interface to GaussianFactorGraph and redirected all uses of it to GaussianFactorGraph 2012-09-04 22:42:09 +00:00
Stephen Williams 1a8dc9bdcc Only execute the RemoveVariables code in iSAM2 if there actually are variables to remove. 2012-08-01 21:31:19 +00:00
Stephen Williams 4b3edb0889 Wrapped iSAM2 2012-07-19 19:50:00 +00:00
Richard Roberts 384f50f1fe Removed debug-only variable in iSAM2 that was causing a crash when gtsam was compiled with NDEBUG defined and a project compiled without it defined, or vice-versa 2012-07-10 22:42:28 +00:00
Richard Roberts 59c6234d4f Reworked variable removal in iSAM2 to hopefully fix difficult bug 2012-07-06 18:33:01 +00:00
Stephen Williams 134951f21c In iSAM2, added a check in the Batch-mode path that checks if linearized factors should be stored for performance reasons. Without this, factors were cached in batch-mode but not in the normal incremental-mode, leading to inconsistency 2012-07-05 18:59:10 +00:00
Stephen Williams f55612d381 Moved the 'markKeys' generation in iSAM2 until after the call to RemoveVariables. Since the 'RemoveVariables' function permutes the ordering, this ensures markedKeys uses the correct indices 2012-07-05 18:50:09 +00:00
Stephen Williams f575cb4cc0 Fixed bug in iSAM2 where variables are deleted inside of iSAM2 even though they appear in the set of new, incoming factors 2012-07-05 18:37:08 +00:00
Richard Roberts 806d86513d Fixed bug in iSAM2 variable removal where removed variables still became marked when marking relin-affected variables 2012-07-05 17:08:05 +00:00
Richard Roberts 96fc5991db Automatic removal of unused variables in iSAM2 working in unit tests! 2012-06-30 22:32:49 +00:00
Richard Roberts 57ca7d77db Removed Permuted views to simplify a lot of code - all objects that need to be permuted now have their data rearranged instead of using the "Permuted" indirection class. 2012-06-30 01:45:21 +00:00
Stephen Williams c7ff913f64 Added yet another configuration parameter to iSAM2. 'enablePartialRelinearizationCheck' checks variables for relinearization by descending the Bayes tree. Once a variable does not need to be relinearized, we stop checking that branch. A full check is still the default. 2012-06-28 20:46:53 +00:00
Yong-Dian Jian a9c36fc172 move linear algebra functions for jacobian factor graph to a new file 2012-06-07 01:24:19 +00:00
Richard Roberts 8f43298d21 Whitespace 2012-05-24 20:11:45 +00:00
Richard Roberts 1ce95c1d89 Removed LDL in favor of Cholesky 2012-05-15 15:49:14 +00:00
Alex Cunningham cb017fee80 tested and documented ability to swap factors with ISAM2 2012-05-01 18:54:44 +00:00
Richard Roberts 792c8ee55a Detailed results optionally returned by ISAM2::update, with the status of each variable 2012-04-12 03:04:32 +00:00
Richard Roberts 91e7dc5882 Caching linearized factors in iSAM2, improves speed when linearization is expensive
Merge remote-tracking branch 'svn/branches/iSAM2_cache_linearized' into trunk

Conflicts:
	.cproject
2012-04-11 14:17:59 +00:00
Richard Roberts 45f2101f48 Fixed deep copy in iSAM2 and added unit test to reproduce problem 2012-04-06 18:56:07 +00:00
Richard Roberts 14d20cff0b Bug fix when getting nonlinear error debug statistics 2012-04-03 23:20:03 +00:00
Richard Roberts 7226f910bb Bug fix when relinearizing on first step in iSAM2 2012-04-03 22:06:06 +00:00
Stephen Williams 4d9542dc70 Fixed compile warning 2012-04-02 20:04:43 +00:00
Richard Roberts ba8fb0ba27 iSAM2 factorization parameter to choose LDL or QR 2012-03-27 23:30:19 +00:00
Richard Roberts 3baba11815 Fine-grained ordering constraints in iSAM2 2012-03-24 16:52:55 +00:00
Richard Roberts 5862943a8a Timing statements and avoiding recalculating dimensions 2012-03-22 06:18:38 +00:00
Richard Roberts b1d4552781 Timing statements 2012-03-19 16:55:52 +00:00
Richard Roberts 6356647665 Bug fixes and using wildfire with Dogleg 2012-03-19 16:25:03 +00:00
Richard Roberts 670117cfe7 Compiles and passes unit tests 2012-03-19 14:32:37 +00:00
Richard Roberts c695b23e36 In progress - updating dogleg computations incrementally 2012-03-18 05:13:40 +00:00
Richard Roberts 4c2581f40e In progress 2012-03-17 23:57:44 +00:00
Richard Roberts 047dda05d7 Removed ISAM2 templating 2012-03-17 23:57:42 +00:00
Richard Roberts 99c3371474 In progress 2012-03-16 20:55:21 +00:00