Commit Graph

751 Commits (d0a93ad9ddbe0fe5eb892cef1ff3a38f46aeced8)

Author SHA1 Message Date
Frank Dellaert 3b6c4917a9 GaussianBayesNet::backSubstituteInPlace 2010-01-31 04:39:41 +00:00
Frank Dellaert ac870bce4c GaussianFactor::transposeMultiplyAdd 2010-01-31 03:33:53 +00:00
Frank Dellaert 4f998e5ecd Matrix::transposeMultiplyAdd 2010-01-31 02:53:03 +00:00
Frank Dellaert 9b4ff5e099 transposeMultiplyAdd provied BLAS-style call for iterative speed 2010-01-30 23:59:29 +00:00
Frank Dellaert 6ef09583b9 multiplyInPlace shaves a few seconds off but is fairly dangerous - I feel ambivalent.... 2010-01-30 17:31:05 +00:00
Frank Dellaert 161a47caa7 2010-01-30 05:22:17 +00:00
Frank Dellaert 881d739371 BLAS level 1 style "scal" saves even more time in PCG 2010-01-30 04:01:49 +00:00
Frank Dellaert 4913326c22 BLAS level 1 style axpy calls in Vector and VectorConfig shave some seconds off PCG 2010-01-30 02:04:37 +00:00
Frank Dellaert 65bc90bf15 timing VectorConfig to speed up iterative 2010-01-29 13:57:45 +00:00
Alex Cunningham eb88a149a1 NonlinearFactors handle constrained noise models properly now, as before they would try to whiten and fail 2010-01-28 17:21:24 +00:00
Viorela Ila 06a062c931 Added special lines for static variables needed for template classes 2010-01-27 19:45:31 +00:00
Kai Ni ed45d436be add gsl and atlas to configure 2010-01-27 05:15:52 +00:00
Alex Cunningham bc2a25385f Added updated timing results. 2010-01-27 05:08:54 +00:00
Alex Cunningham 59c7ce7e29 Integrated householder-based QR into NoiseModel. Note that the examples for GFG have changed to ensure that they are actually a linearized version of the nonlinear example. 2010-01-27 04:39:35 +00:00
Frank Dellaert 98b825ddbd Fixed loading of datasets 2010-01-27 03:41:23 +00:00
Frank Dellaert ae073c0120 Comments, and better test of composePoses 2010-01-27 02:49:58 +00:00
Frank Dellaert 8b87eebba6 commented GSl bit 2010-01-27 01:03:49 +00:00
Richard Roberts 02210cc7e0 Argument order of load changed 2010-01-26 20:31:25 +00:00
Richard Roberts 9b62b326c9 One more fix, inverse was actually needed in one case. 2010-01-26 20:10:45 +00:00
Richard Roberts b82d054aaa Definitions of Lie::between, Pose2::compose, expmap, and derivatives were not correct. Fixed, but changes some behavior (iSAM and CitySLAM already fixed), will send email about this change. 2010-01-26 20:00:17 +00:00
Manohar Paluri a0b96e7684 corrected case of Pose2SLAMoptimizer 2010-01-25 14:50:25 +00:00
Kai Ni 1685920d52 fixed Ab2 bug 2010-01-23 05:29:04 +00:00
Frank Dellaert afa964b8db Fixed sparse bug 2010-01-23 05:16:29 +00:00
Kai Ni 744269343f add print 2010-01-23 04:46:00 +00:00
Kai Ni b092fee64b pose2slamoptimizer unit tests worked 2010-01-23 03:49:05 +00:00
Richard Roberts 21c1af2b9f Collecting more statistics in isam2, logmap for configs 2010-01-23 01:53:04 +00:00
Kai Ni 4491db99be add beijing data set 2010-01-23 01:10:12 +00:00
Frank Dellaert 7644ff0080 optimize returns Vector, does not update 2010-01-23 01:08:42 +00:00
Frank Dellaert ada844300d Fixed compile issue in tests 2010-01-23 01:03:47 +00:00
Frank Dellaert 807cffbd61 Pose2SLAMOptimizer prototype for use in MATLAB 2010-01-23 00:57:54 +00:00
Michael Kaess 7bc4ee65da allow pure linear steps (disabled) 2010-01-23 00:21:34 +00:00
Manohar Paluri 80d335ed77 added saveGraph function to BayesTree which writes out a dot file which can be visualized using graphviz dot command 2010-01-22 23:52:56 +00:00
Kai Ni e87faa078d write correct information matrix to data file 2010-01-22 23:20:12 +00:00
Frank Dellaert 2150b24e29 Fixed memory hog problem with Alex's help. SAM marginally faster (3-4% with 1000 poses, might be bigger effect for full dataset) 2010-01-22 23:00:35 +00:00
justinca 16c55975c1 Fix inverse_square_root, add cholesky decomposition options 2010-01-22 22:28:03 +00:00
Kai Ni e88ae4a944 add dataset.h/cpp 2010-01-22 20:18:40 +00:00
Michael Kaess ab155999cf simplified alg, but no measureable speed improvement 2010-01-22 18:29:27 +00:00
Frank Dellaert 351cdd18c2 case change: SharedGaussian and SharedDiagonal are now classes with their own header file. Needed for MATLAB TORO hail Mary 2010-01-22 17:36:57 +00:00
Kai Ni 490791cd48 add writer module to dump the errors and time 2010-01-22 08:13:54 +00:00
Kai Ni 4b778a4e82 fixed a bug in matrix solve function 2010-01-22 06:45:01 +00:00
Michael Kaess 1d093e388d changed main algorithm to allow recovery of exact solution 2010-01-22 06:28:12 +00:00
Frank Dellaert 75e29dc015 failing test 2010-01-22 05:45:59 +00:00
Richard Roberts 5367e5a157 All std::map<Symbol,T> are now SymbolMap<T>, which is just a thin wrapper around std::map. at(Key) is used instead of first checking with find when an exception should be thrown for non-existent keys. This does not change any behavior or timing currently. This check-in also includes some functions in BayesTree for gathering clique statistics. 2010-01-22 04:41:40 +00:00
Frank Dellaert 41a6e64bbb Fixed insert to use IndexTable, a new class 2010-01-22 02:27:26 +00:00
Frank Dellaert 2cc777228b coments and variables only 2010-01-21 20:15:52 +00:00
justinca 7575996d52 Remove leftover commented out unused code 2010-01-21 19:49:36 +00:00
justinca f89a53ed91 Bugfix in Rot3::logmap. The function checked for a trace of 3, but the check could fail due to rounding errors, causing the function to try to take acos(something larger than 1) resulting in NaNs being returned. 2010-01-21 19:49:12 +00:00
Alex Cunningham ac746ccead Improved performance of updateAb in NoiseModel with GSL/ATLAS. Various other small optimizations were made. 2010-01-21 18:51:59 +00:00
Michael Kaess 2183e09c67 fluid relinearization works 2010-01-21 17:41:54 +00:00
Michael Kaess 523c8630d3 works at least on already solved data... 2010-01-21 16:09:57 +00:00
Frank Dellaert 0dc4f417e9 sampling from NoiseModel 2010-01-21 08:31:18 +00:00
Michael Kaess 8fd0c2ae72 new fluid relinearization algorithm, in sync with lyx 2010-01-21 07:38:37 +00:00
Alex Cunningham 9db7623f80 Improved instructions for GSL/ATLAS 2010-01-21 01:03:34 +00:00
Alex Cunningham 063aa14118 Reimplemented matrix::householder_update using GSL and BLAS, you'll need to edit Makefile.am to enable the new version -- see email 2010-01-21 00:59:33 +00:00
Michael Kaess 188561d925 removeTop/Path now returns a BayesNet to avoid converting the conditionals to a factor graph 2010-01-21 00:38:22 +00:00
Richard Roberts eb03f78e7d Removing dependency hack speeds up compilation 2010-01-20 20:47:15 +00:00
Alex Cunningham 588c119bf3 Added timing script for Matrix::householder_() 2010-01-20 18:52:31 +00:00
Alex Cunningham 5f588031bc Merged NoiseQR back into trunk 2010-01-20 18:32:48 +00:00
Alex Cunningham 9c9007920a Changed the interface on Matrix::column() so that it uses the one in our library (now called column_() ) rather than the boost default. Currently, our implementation just uses the boost default, but this may change due to timing results. 2010-01-20 16:08:14 +00:00
Alex Cunningham 98b143cd22 Switched all loop indices in Matrix/Vector to size_t, with improved results in timeGaussianFactorGraph 2010-01-20 14:42:05 +00:00
Alex Cunningham b4f9163296 Added more labels and results (with higher numbers of repetitions) for timeGaussianFactorGraph 2010-01-20 14:31:24 +00:00
Alex Cunningham 8db99db57e Small performance improvement for matrix_augmented, with accompanying test in timeGaussianFactor 2010-01-20 14:09:44 +00:00
Alex Cunningham 6bc0462669 Checked Matrix::collect() with different timing metric, and memcpy has approx 25% speedup over original version. Matrix_range is slower or the same speed as the original version. 2010-01-20 13:45:22 +00:00
Kai Ni 977a97eacf rename variable 2010-01-20 09:47:09 +00:00
Michael Kaess aae49e43f0 code factorization, speedup 2010-01-20 06:49:19 +00:00
Kai Ni ae908316e0 add comments 2010-01-20 06:34:25 +00:00
Richard Roberts 19dc8bf4b1 Fixed size() crash when BayesTree empty, added clear() function to BayesTree, added and removed #includes to fix link errors 2010-01-20 04:23:35 +00:00
Michael Kaess e767996b45 same bug fix as in ISAM2 2010-01-20 03:54:20 +00:00
Alex Cunningham 55e414cbdd Tried noalias() for collect(), but no real improvement 2010-01-20 03:25:55 +00:00
Kai Ni 3bf15333af move ordering into the solver, and the nonlinear optimizer is now exact <G, T, L> 2010-01-20 02:28:23 +00:00
Alex Cunningham 03ec3e3e62 Implemented a version of collect() using matrix_range, but it had worse performance than memcpy. New version of vector_scale[column] with new pointer arithmetic implementation for approx 20% improvement. 2010-01-20 02:28:25 +00:00
Alex Cunningham 820ae5682d Optimized row version of vector_scale with approx 20% improvement 2010-01-20 02:04:25 +00:00
Michael Kaess ecde508318 incremental nonlinear working 2010-01-20 01:52:40 +00:00
Alex Cunningham b860f06614 Switched Matrix::collect() over to a memcpy, but the results weren't actually an improvement 2010-01-20 01:42:36 +00:00
Michael Kaess d2291a38d1 bug fixes after COLAMD activiation: BayesTree::insert was wrong, BayesTree::removeTop/Path fixed and simplified 2010-01-20 01:24:32 +00:00
Alex Cunningham 66607897a5 Added vector_scale timing benchmarks 2010-01-20 01:05:40 +00:00
Alex Cunningham ff83a7b18e Fixed compile error in testNoiseModel 2010-01-20 01:05:18 +00:00
Frank Dellaert b47438a86c Smart named constructors Covariance/Variances/Variance 2010-01-20 00:26:49 +00:00
Alex Cunningham f577b27f52 Small optimizations on Matrix::collect(), additional timing capabilities, and now collect() can have dimensions specified to avoid need for lookup. 2010-01-19 21:49:22 +00:00
Alex Cunningham 67878830a6 Added timeMatrix.cpp to test specific matrix operations 2010-01-19 20:59:22 +00:00
Frank Dellaert 3cdbaf81c7 Factorgraph-specific QR factorization now done by the NoiseModel: slow Gram-Schmidt for Constrained, fast Housholder for any other (Gaussian) model. 2010-01-19 19:06:02 +00:00
Frank Dellaert 6f2b5a904a save on fabs 2010-01-19 19:04:37 +00:00
Frank Dellaert 9f4da004c2 got rid of verbose printing 2010-01-19 19:04:18 +00:00
Alex Cunningham fb0ca07bf1 Added and tested whitening parameter for matrix() and matrix_augmented() 2010-01-19 16:52:01 +00:00
Alex Cunningham fbee0bd749 Fixing compile issue in SubgraphPreconditioner.h 2010-01-19 13:29:40 +00:00
Kai Ni 3806125096 add linear system as a template parameter in nonlinear optimizer
fixed a nasty bug and change the internal data type of subgraph preconditioner from reference to boost shared pointer. reference is not a good idea for class members, because no type checking will happen
2010-01-19 10:46:12 +00:00
Alex Cunningham 2eac3b7235 minor typo - comment only 2010-01-19 05:46:04 +00:00
Alex Cunningham 306ac0a4b2 Fixed clobbered checkin 2010-01-19 05:45:25 +00:00
Alex Cunningham 88e465910a SQP tests and implementation now use the new Key system 2010-01-19 05:33:44 +00:00
Frank Dellaert 2a57a04ba6 get_model 2010-01-19 05:29:31 +00:00
Frank Dellaert 6dcc275432 small comment/print 2010-01-19 04:39:54 +00:00
Frank Dellaert b01c111a1d GaussianFactor now uses noiseModel internally - not yet externally 2010-01-19 04:39:28 +00:00
Frank Dellaert 81aaceb890 Whiten now class-specific, access to sigmas 2010-01-19 04:38:58 +00:00
Kai Ni ebbdfc79aa comment out overflow exception 2010-01-19 04:18:59 +00:00
Michael Kaess ef2fb243c2 fixed unit test after colamd change 2010-01-19 03:43:10 +00:00
Richard Roberts 2507b6aaca Cleaned up commented line after fix to use the colamd ordering. 2010-01-19 03:16:09 +00:00
Richard Roberts 0311d2a2a2 Very very small change :-) 2010-01-19 02:57:08 +00:00
Frank Dellaert 0769af6f20 comment 2010-01-19 01:41:44 +00:00
Michael Kaess a45893a434 selective incremental linearization works; bug fix in landmark initialization (frank01 again much faster) 2010-01-19 01:18:28 +00:00
Michael Kaess a2bce15c4b selective update of linearization point 2010-01-19 00:15:46 +00:00