Commit Graph

89 Commits (7f32fe3ea07331d91271624d278225c49b17cf54)

Author SHA1 Message Date
cbeall3 7f32fe3ea0 fix warning 2014-05-30 16:30:46 -04:00
Zsolt Kira a95126599f Fix LM behavior when GaussianFactorGraph is subclassed. Use clone method instead of assignment to local GaussianFactorGraph when creating damped system. 2014-04-24 09:47:48 -04:00
hchiu b464b808ef First cut on raw MultiplyHessianAdd for HessianFactor and JacobianFactor. Unit test is passed in testGaussianFactorGraphUnordered (multiplyHessianAdd3). Note the interface currently needs the accumulated diminsions of key variables. See GaussianFactorGraph::multiplyHessianAdd(double alpha,const double* x, double* y). 2014-03-04 01:58:34 -05:00
Luca e789553261 bug fix: hessianDiagonal seg-faulted with NULL factors 2014-02-15 16:48:15 -05:00
dellaert 2865aab027 Working and tested implementation of hessianBlockDiagonal 2014-02-14 13:47:47 -05:00
dellaert 76959d4d18 Added hessianDiagonal; works for Gaussian factor graphs with JacobianFactors 2014-02-14 01:14:32 -05:00
dellaert 4b7de1abb8 Formatting only 2014-02-13 20:28:37 -05:00
Alex Cunningham e3208a1f8e Added negate() and clone() to GaussianFactorGraph 2013-11-07 15:29:38 +00:00
Frank Dellaert 4591835223 gradientAtZero is now implemented in the fcators (Richard says, need to work on efficiency) 2013-10-29 03:42:33 +00:00
Frank Dellaert 7c3131b533 Made multiplyHessian into multiplyHessianAdd 2013-10-27 14:58:51 +00:00
Pablo Fernandez Alcantarilla 6a383799d7 Skeleton code for GaussianFactorGraph::multiplyHessian 2013-10-24 15:52:32 +00:00
Richard Roberts e1ef219916 Added optional ordering for creating dense jacobian and hessian matrices from GaussianFactorGraph 2013-09-20 15:25:16 +00:00
Richard Roberts f3fdf8abe9 Reenabled some code relating to Hessian factors that I had accidently left disabled 2013-08-18 17:17:09 +00:00
Richard Roberts c2284a3d6b Changed FastVector to vector in GFG and ISAM2 2013-08-12 18:21:23 +00:00
Richard Roberts 0726a5ffbc Instantiating template base classes in derived class .cpp files 2013-08-08 16:30:02 +00:00
Richard Roberts e39d100b6a Made most global unit tests compile, includes dogleg, iterative, kalman filter, etc 2013-08-06 13:44:22 +00:00
Richard Roberts 00c1036814 Reenabled some GFG functions 2013-08-05 22:31:01 +00:00
Richard Roberts 2b9105b0ce Added optional ordering to GFG::optimize() 2013-08-01 21:57:24 +00:00
Richard Roberts 3ade190128 Renamed old classes to "Ordered" and removed "Unordered" name from new classes 2013-07-29 23:55:40 +00:00
Richard Roberts 67f3109e75 Fixed warnings in preexisting code 2013-07-01 20:19:36 +00:00
Richard Roberts b1fdf32a8c Progress on unordered linear classes 2013-06-28 18:14:07 +00:00
Richard Roberts e6993668ef Disabled extra debug-mode consistency checks that may affect runtime complexity, these are now only enabled when GTSAM_EXTRA_CONSISTENCY_CHECKS is defined 2013-05-20 17:26:53 +00:00
Richard Roberts 547323cc79 Fixed a bunch of compiler warnings 2013-04-05 21:34:04 +00:00
Richard Roberts ee2f2e26be Moved findScatterAndDims to Scatter class constructor, moved code to combine multiple Hessians into Hessian constructor, and removed need to separately provide a vector of dimensions to this constructor - instead pulls dimensions out of Scatter. 2013-03-18 19:27:58 +00:00
Richard Roberts 4278e2b9dc Including BayesTree.h instead of BayesTree-inl.h 2013-03-13 18:56:25 +00:00
Richard Roberts fe8fc6dd24 Fix in findScatterAndDims to ignore null factors instead of dereferencing them 2013-03-05 05:47:25 +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 5b9271cb97 VV work 2012-11-23 23:22:53 +00:00
Richard Roberts 600fcd027d Moved wrapper functions to header file to clean up code 2012-10-28 06:21:15 +00:00
Richard Roberts 24111423d7 Made specific eliminate and eliminateOne methods for SymbolicFactorGraph and GaussianFactorGraph and made them accessible from MATLAB 2012-10-27 19:45:28 +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 fb409a2cc7 Implemented partial elimination and sparse variable index remapping (Reduction) to enable Frank's new marginal code 2012-10-01 16:12:41 +00:00
Richard Roberts 6d1b86c2e0 Moved JacobianFactor type check/conversion functions into SubgraphSolver instead of GaussianFactorGraph and JacobianFactor 2012-09-06 14:33:44 +00:00
Yong-Dian Jian 574a9711cc add a conversion function from GaussianFactorGraph to JacobianFactorGraph 2012-09-06 01:21:15 +00:00
Yong-Dian Jian 4443752a18 clean the gfg to jfg conversion code 2012-09-05 17:04:48 +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
Richard Roberts 73f8c0830b Created new dense matrix functions in GaussianFactorGraph returning pair<Matrix,Vector> for easier access, and renamed functions to augmentedJacobian, augmentedHessian, jacobian, hessian 2012-09-04 15:05:57 +00:00
Richard Roberts 3b897cddc9 Added eliminateFrontals function to FactorGraph, SymbolicFactorGraph, and GaussianFactorGraph - eliminates requested number of frontal variables and returns the resulting conditional and remaining factor graph 2012-08-30 19:58:33 +00:00
Richard Roberts 3e93c488e5 Removed extra code that was sometimes maintaining a staircase pattern in JacobianFactor by sorting rows - a holdover from the staircase optimization that is no longer done now that we are using Eigen's QR 2012-08-27 22:29:56 +00:00
Richard Roberts 1dbda3f7ed Standardized and corrected error handling on the linear size - underconstrained and negative systems always throw IndeterminantLinearSystemException, and all assertions checking for infinite values are removed. Also, we were not properly checking the result of Eigen's Cholesky, so sometimes elimination continued with incorrect matrices despite being underconstrained when Cholesky failed but did not produce NaN's. 2012-08-22 22:40:27 +00:00
Richard Roberts f704dbe0c2 Fixed formatting 2012-08-22 22:40:17 +00:00
Stephen Williams cf0c5bde3a Changed helper function signature to match the actual variables used in the function call 2012-08-02 18:41:07 +00:00
Richard Roberts d57fc32e74 To simplify FactorGraph, removed convertCastFactors and dynamicCastFactors from FactorGraph - replaced their calls with in-place code to do the needed conversions 2012-06-18 14:55:30 +00:00
Richard Roberts 1ce95c1d89 Removed LDL in favor of Cholesky 2012-05-15 15:49:14 +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 75428b13fe Revert "Using FastVector instead of vector in most code called during elimination and solving"
This reverts commit 566631cb42249cb710ef01d07d583e563afccea9.
2012-02-13 20:27:54 +00:00
Richard Roberts 965417ea1b Fixed indentation 2012-02-10 19:47:35 +00:00
Richard Roberts 263b50d85a Using FastVector instead of vector in most code called during elimination and solving 2012-02-10 15:56:01 +00:00