Commit Graph

838 Commits (58f50ee10bcc7bdaab6750b7016cd568b1923a98)

Author SHA1 Message Date
Frank Dellaert 694f6e4219 linearize now always returns a shared pointer 2010-02-21 21:17:47 +00:00
Frank Dellaert 517c82f62f Small details, like using a reference in FOREACH 2010-02-21 17:06:11 +00:00
Frank Dellaert fe4471930f avoid keys() call to known set of keys 2010-02-21 15:24:05 +00:00
Frank Dellaert 190ec53a63 use ifdef 2010-02-21 15:23:27 +00:00
Manohar Paluri 7f1c3f9952 fixed a bug 2010-02-21 04:51:42 +00:00
Frank Dellaert 274265a401 Errors:axpy and testErrors 2010-02-21 00:01:43 +00:00
Frank Dellaert 5b6af9e4bd 1.0 versions of BLAS level 2 2010-02-20 23:44:07 +00:00
Frank Dellaert ac316f2d56 formatting only 2010-02-20 23:43:41 +00:00
Richard Roberts 75b35949c9 Fixed several unit test main() functions that were returning 0 instead of the result of runAllTests. This caused unit tests to print failures but not count as failures in the pass/fail counts. In CMake projects, since test output is logged to a file instead of printed, this caused no indication of failures when they occured! All tests still pass with no other modifications after fixing this. 2010-02-20 22:22:45 +00:00
Kai Ni 1949a992cd define two additional types 2010-02-20 00:28:10 +00:00
Kai Ni 689b9fefc0 throw exceptions instead of crashing 2010-02-19 22:44:45 +00:00
Kai Ni d0ce5d36da created addPrior 2010-02-19 02:48:47 +00:00
Manohar Paluri e60d903210 removed extra quotes 2010-02-18 23:31:23 +00:00
Manohar Paluri 2bf4c0ce5b Fixed two bugs, both related to array overflow 2010-02-18 22:52:49 +00:00
Richard Roberts c26219e3d4 Added Pose2::matrix() function. 2010-02-18 16:27:01 +00:00
Frank Dellaert cd5c281c76 Added get and set 2010-02-18 14:30:16 +00:00
Frank Dellaert ede0a8c874 Added unit test 2010-02-18 14:29:40 +00:00
Frank Dellaert 3247751b5d Major check-in: there are now two interchangeable implementations of VectorConfig.
VectorMap uses a straightforward stl::map of Vectors. It has O(log n)
insert and access, and is fairly fast at both. However, it has high overhead
for arithmetic operations such as +, scale, axpy etc...

VectorBTree uses a functional BTree as a way to access SubVectors
in an ordinary Vector. Inserting is O(n) and much slower, but accessing,
is O(log n) and might be a bit slower than VectorMap. Arithmetic operations
are blindingly fast, however. The cost is it is not as KISS as VectorMap.

Access to vectors is now exclusively via operator[]
Vector access in VectorMap is via a Vector reference
Vector access in VectorBtree is via the SubVector type (see Vector.h)

Feb 16 2010: FD: I made VectorMap the default, because I decided to try
and speed up conjugate gradients by using Sparse FactorGraphs all the way.
2010-02-17 03:29:12 +00:00
Kai Ni cb5d4c3127 instantiate SymbolicConfig 2010-02-16 23:20:39 +00:00
Alex Cunningham d895cb90dc Added a static dim function to Point3 for generic detection of dimension 2010-02-16 20:21:03 +00:00
Alex Cunningham 529fc5536b Fixed templating problem with visualSLAM::ProjectionFactor 2010-02-16 02:09:07 +00:00
Frank Dellaert 30893b33eb some small details to work it work with NewVectorConfig 2010-02-15 23:54:10 +00:00
Frank Dellaert 5d33eb185c added SubVector type and some related routines 2010-02-15 23:53:16 +00:00
Frank Dellaert e4691a1594 BTree refactored, Node is now an inner class, find is non-recursive 2010-02-15 23:52:46 +00:00
Manohar Paluri 39708194a3 added TrifocalTensor test and changed DLT to use non-sorted version. 2010-02-15 23:45:53 +00:00
Frank Dellaert 341c4d9250 Deleted debug print 2010-02-15 21:38:33 +00:00
Manohar Paluri 8691d633a7 added testTensors to the tests 2010-02-15 20:25:38 +00:00
Alex Cunningham 17706d4ebd Added key template parameters to visualSLAM::projectionFactor without changing the interface. Added dimension checking function for Point2 type. 2010-02-15 16:37:37 +00:00
Manohar Paluri 6f0d23cdaf forgot to change comments in previous checkin 2010-02-14 07:26:53 +00:00
Manohar Paluri 1cc5bf748b make file changes and added make targets to the cproject 2010-02-14 07:26:10 +00:00
Manohar Paluri c16e6fc0d5 Moved Tensor related Files from CitySLAM 2010-02-14 07:25:03 +00:00
Manohar Paluri 1923778750 Moved Tensor related Files from CitySLAM 2010-02-14 07:24:37 +00:00
Frank Dellaert 44094b494e fixed maxIteration bug 2010-02-14 07:14:42 +00:00
Frank Dellaert 1f165a9f85 Made CG state a class 2010-02-14 05:52:20 +00:00
Manohar Paluri 43f9baf77a added test to check singular value ordering for a sample homography case 2010-02-14 04:56:29 +00:00
Manohar Paluri 693e13ef88 added default bool option to svd to sort the singular values and V. the default is true so pass false to avoid sorting 2010-02-14 04:54:39 +00:00
Kai Ni f9c2000847 save graph to graphviz format 2010-02-13 07:09:56 +00:00
Kai Ni d0a93ad9dd insert bayes net as a clique 2010-02-13 07:09:27 +00:00
Richard Roberts 4408eaf6f4 Added FactorGraph::checkGraphConsistency() to check for consistency between the variables->factors and factors->variables maps, and a unit test that tests the replace function including checking consistency. 2010-02-13 01:29:19 +00:00
Alex Cunningham f1988513fe Fixed bug in print function of TypedLabeledSymbol 2010-02-10 21:03:49 +00:00
Alex Cunningham dde0626e5c Added a constructor for TypedLabeledSymbol from Symbol that decodes the index to split out a label 2010-02-10 15:27:21 +00:00
Alex Cunningham d0aed559b5 TypedLabeledSymbols now convert properly to Symbols, so they can be used to add a runtime label to a TypedKey to express "Pose 1 of robot A" 2010-02-10 14:39:58 +00:00
Kai Ni 31999ecb1f added 4-way symbolic factor
fixed a bug in the bayes tree to graphviz routine
2010-02-09 22:59:18 +00:00
Richard Roberts e83b6c3b84 Normalizing rotation matrix to fix numerical instability when composing many poses 2010-02-09 22:44:02 +00:00
Kai Ni 31fc894a4a added 4-way symbolic factor
fixed a bug in the bayes tree to graphviz routine
2010-02-09 21:32:14 +00:00
Alex Cunningham d2a4bdae3c Made simulated2D factors more generic - can now specify key types 2010-02-09 19:47:39 +00:00
Alex Cunningham 8ff64793f1 Apparently, expmap != exmap. TupleConfigN's are no longer broken now. 2010-02-09 19:27:28 +00:00
Alex Cunningham 942e2b9c6d static chr() function for TypedSymbol, and another version of Symbol (don't use) 2010-02-09 03:59:45 +00:00
Alex Cunningham 0c74e0c309 Ensured that constraints add keys to keys_ 2010-02-09 01:52:36 +00:00
Alex Cunningham 8aa440a679 Fixed the instantiation macros and exmap global functions for TupleConfigN 2010-02-09 01:24:41 +00:00
Alex Cunningham 18d7fcc299 Added instantiation macros for TupleConfigs and NonlinearConstraints 2010-02-08 22:29:00 +00:00
Richard Roberts fbef948254 Bug fix in replace() 2010-02-08 22:22:38 +00:00
Richard Roberts ea9b44ea15 Fixed indentation 2010-02-08 22:21:56 +00:00
Alex Cunningham ed338300a1 Instantiation script for TupleConfig 2010-02-08 20:53:18 +00:00
Alex Cunningham ea3b8083b0 Fixed more tests for NonlinearConstraints, inequality constraints now work. 2010-02-07 01:18:17 +00:00
Chris Beall 814fb949ba fixed critical bug relating to height of tree 2010-02-06 17:45:40 +00:00
Chris Beall 675b30d1c1 updates to BTree 2010-02-06 15:53:31 +00:00
Alex Cunningham f88438bab4 Removed SQP optimizer and moved remaining SQP optimizer tests into testSQP. All equality constraints should be fully functional now. Inequality constraints still to come. 2010-02-06 14:48:46 +00:00
Alex Cunningham 219dfd262d SQP now works with single configs using the TupleConfigs, without needing a separate optimizer. 2010-02-06 05:14:52 +00:00
Alex Cunningham d8a8575d26 Removed a fixme comment 2010-02-06 05:12:09 +00:00
Alex Cunningham d1267d1ef3 Added more constructors, print functionality and formatting for TupleConfig 2010-02-06 05:10:25 +00:00
Alex Cunningham bb74b5c882 Added a config template parameter for ProjectionFactors 2010-02-06 05:08:52 +00:00
Alex Cunningham af9f45ff24 Used template parameters in simulated2D to make it possible to template factors on a config type with typedefs for the previous usage so no other code needs to change 2010-02-05 14:49:40 +00:00
Alex Cunningham 040d45cb45 Added wrapper classes for TupleConfig for ease of use. 2010-02-05 01:33:33 +00:00
Chris Beall 8fe0795dd0 BTree moved into gtsam 2010-02-04 21:02:05 +00:00
Alex Cunningham 5c1c8ee76f Changed PairConfig interface so that the internal configs need to be accessed with first() and second(). This is in anticipation of switching PairConfig to TupleConfig2. 2010-02-04 17:15:09 +00:00
Alex Cunningham 2068477e32 Added pragma once to LieConfig to prevent errors if included multiple times 2010-02-04 16:08:59 +00:00
Alex Cunningham 67744a5f07 Changed NonlinearConstraint to correctly use new keys 2010-02-04 16:08:11 +00:00
Alex Cunningham 01bbd3cf8d Disabling SQP tests while transitioning config types and SQP implementation 2010-02-04 16:07:20 +00:00
Alex Cunningham 843f11678b Recursive TupleConfig now has typedefs for 2-6 configs 2010-02-04 03:40:03 +00:00
Alex Cunningham 4e70f14097 The recursive TupleConfig should be ready for use now. 2010-02-04 02:04:45 +00:00
Kai Ni 550121013f fix const string problem in print 2010-02-03 20:12:16 +00:00
Alex Cunningham e5a7d4c878 More functionality in TupleConfigs 2010-02-03 14:08:09 +00:00
Alex Cunningham 94d50ddfb9 Added a liberal sprinkling of 'typename' to make TupleConfig work better 2010-02-03 13:57:34 +00:00
Alex Cunningham a66a405dd5 Partially implemented version of a recursive TupleConfig that is still very much under testing. 2010-02-03 13:47:13 +00:00
John Rogers 2f16d8f6a1 Changed the order of constructor initializers in GaussianFactor to remove compiler warnings 2010-02-01 16:04:14 +00:00
Frank Dellaert 5554f6fc7e Faster non-GSL versions of BLAS 2-style calls 2010-01-31 22:56:06 +00:00
Alex Cunningham efe51c8419 Fixed typo in function name 2010-01-31 21:09:03 +00:00
Alex Cunningham 2889a25aeb Fixed autotools files for GSL inclusion so that they don't include the wrong BLAS implementation when ATLAS is enabled 2010-01-31 18:26:18 +00:00
Alex Cunningham c266012dcd Added GSL/ATLAS version of multiplyAdd() and transposeMultiplyAdd() 2010-01-31 18:25:03 +00:00
justinca 74dd7128ac Fixup cholesky decomposition - rename to LLt and RtR to make convention clear 2010-01-31 18:07:29 +00:00
Alex Cunningham 87cc573d34 Added a new combine process for GaussianFactors that allocates only one matrix when combining, rather than using append factor to make a large number of smaller matrices. There is a flag to switch between these modes, which currently defaults to the older approach. Currently, there does not appear to be a performance improvement, however. 2010-01-31 17:49:33 +00:00
Alex Cunningham 9f16d7b07f Added in-place sub insert function to Vector 2010-01-31 17:24:01 +00:00
Alex Cunningham 48d2dabe43 Added in-place insertion functions to Matrix, as well as a #define flag to enable or disable GSL code without a reconfigure. 2010-01-31 17:21:07 +00:00
Alex Cunningham b5ca322d21 Added default tolerance value to equals in Key classes so that equals() works properly 2010-01-31 17:00:27 +00:00
Frank Dellaert fa6a515bfd SAM was substantially sped up by inlining VectorConfig::insert 2010-01-31 16:05:16 +00:00
Frank Dellaert 5e4b23df59 Matrix::multiplyAdd and transposeMultiplyAdd are "level 2" BLAS and speed up the numeric part of the code substantially. Alex might be able to speed them up even more by making them use real BLAS code within Matrix.cpp. 2010-01-31 16:04:24 +00:00
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