Commit Graph

664 Commits (351cdd18c213e22d61a468b7746ec62600b74621)

Author SHA1 Message Date
Alex Cunningham 20c6f29823 Moved control-related components to separate library 2010-01-06 20:01:34 +00:00
Frank Dellaert b20ed42134 log and between 2010-01-06 19:29:41 +00:00
Frank Dellaert f77da96caf Modernized and tested RQ and added Rot3::ypr. Note this yaw-pitch-roll is different from ML version, which is focused on cameras. Let the fun begin... 2010-01-06 15:52:43 +00:00
Kai Ni 9845a5ae37 add findMinimumSpanningTree to FactorGraph 2010-01-06 11:15:37 +00:00
Frank Dellaert cd644e75a5 GaussianBayesNet::matrix now properly divides in sigmas 2010-01-05 14:14:49 +00:00
Frank Dellaert 22d66df766 added manifold test 2010-01-05 14:13:51 +00:00
Richard Roberts 39334ea9e0 Update MATLAB wrapper for earlier Pose2* changes 2010-01-04 18:07:24 +00:00
Kai Ni 46cc85e351 added size and clear to pose2config 2010-01-03 07:25:59 +00:00
Michael Kaess 052149771a relinearizing factors corresponding to contaminated cliques 2010-01-03 04:57:35 +00:00
Kai Ni cade0e7780 fix timing test linking problem by using noinst_PROGRAMS 2010-01-03 00:23:16 +00:00
Manohar Paluri 68159fb5e4 corrected SubgraphPreconditioner case 2010-01-02 20:24:59 +00:00
Frank Dellaert f82b46f96c Sped up rodriguez and replaced slow implementation with call to fast implementation. Also moved some functions to cpp. 2010-01-02 14:28:18 +00:00
Frank Dellaert a1c55b9f62 Updated Pose2Config to expected coding standard 2010-01-02 10:33:33 +00:00
Frank Dellaert ff06cd757f moved all "Urban" factors and tests to (cmake-based) CitySLAM project 2009-12-31 16:54:23 +00:00
Frank Dellaert a1d14ba2ae Added Bayes Net and Subgraph preconditioners to gtsam (developed in CitySLAM project) 2009-12-31 12:56:47 +00:00
Frank Dellaert 730f4a546f Added planar graph with easy subtree 2009-12-31 12:55:51 +00:00
Frank Dellaert 07cc95e4c4 Comments and formatting 2009-12-31 12:55:16 +00:00
Frank Dellaert eaa8176de1 correct behavior when entire columns are zero 2009-12-31 10:30:44 +00:00
Frank Dellaert 46a65d89df using ediv_ where needed 2009-12-31 10:30:06 +00:00
Frank Dellaert f7d5b517a4 ediv_ is same as ediv except returns 0 for 0/0 division, needed for dealing with constraints 2009-12-31 10:29:25 +00:00
Frank Dellaert 3fbc857a9e fixed behavior of error for sigma==0 2009-12-31 10:28:43 +00:00
Frank Dellaert 9b327d1a9d added reset 2009-12-31 10:27:39 +00:00
Frank Dellaert bf85f10de7 subtraction 2009-12-31 10:27:16 +00:00
Michael Kaess b4e65e9631 progress in ISAM2, but unit test still disabled 2009-12-31 05:35:08 +00:00
Richard Roberts afc3028ad5 Fixed bug in testPose2Factor optimize unit test where only the first expected value was checked. 2009-12-30 18:41:33 +00:00
Frank Dellaert 793a9d58ae Errors is now a list 2009-12-30 17:13:36 +00:00
Frank Dellaert f80ac5d7d5 backSubstitute functions (unit-tested in CitySLAM) for preconditioning 2009-12-30 17:13:24 +00:00
Frank Dellaert 2368f3605a getReference 2009-12-30 14:53:40 +00:00
Frank Dellaert 15bb00683a transpose backsubstitute on upper-triangular matrix 2009-12-30 13:20:16 +00:00
Michael Kaess 42fca8c399 nonlinear update, all but rhs/config 2009-12-30 04:27:14 +00:00
Richard Roberts 0b9451bc4b Initializing libtool correctly in gtsam (see email to frankcvs with same subject) 2009-12-29 20:01:38 +00:00
Michael Kaess 737a2f1e05 unit test enabled again and working 2009-12-29 14:54:45 +00:00
Frank Dellaert c43cd425ab new back-substitution functions that can do unit triangular solves 2009-12-29 13:59:34 +00:00
Michael Kaess 75ab62a729 ISAM2 (nonlinear ISAM) partially there, unit test currently disabled 2009-12-29 05:57:05 +00:00
Frank Dellaert 8d4a029665 rhs method 2009-12-28 18:46:01 +00:00
Frank Dellaert 543d3fcd65 System now a class (gradient is method) 2009-12-28 17:28:48 +00:00
Frank Dellaert 0c0b73042b template now exposed in iterative.h, and has its own implementation file 2009-12-28 16:26:16 +00:00
Frank Dellaert 5ac304aff3 correct convergence criterion, verbose flag 2009-12-28 16:15:26 +00:00
Frank Dellaert 674ae9d030 steepest descent now all implemented in iterative.h/cpp 2009-12-28 12:37:34 +00:00
Frank Dellaert bc27afc49f CGD method now uses CGD template in iterative.cpp 2009-12-28 10:48:48 +00:00
Frank Dellaert 863ee58c0f new iterative.h/cpp compilation unit 2009-12-28 09:56:58 +00:00
Frank Dellaert d9fd502656 moved CG tests from testGFG to testIterative 2009-12-28 09:44:30 +00:00
Frank Dellaert 1fac98b4cb Errors:dot, VectorConfig::operator*/-, as a result Conjugate Gradient Descent template now works for factor graphs 2009-12-28 08:15:09 +00:00
Michael Kaess 5dfd1921e1 template nightmare resolved, all tests working 2009-12-27 23:15:36 +00:00
Frank Dellaert 266fc56dea Gradient using new operator^ and errors method 2009-12-27 12:13:31 +00:00
Frank Dellaert 7d1428de60 Added Errors class and operator* for GaussianFactor and GaussianFactorGraph. Also moved a few functions to cpp. 2009-12-26 22:48:41 +00:00
Frank Dellaert 6614434b83 System version of CG 2009-12-26 21:25:45 +00:00
Richard Roberts 8d3918e7f9 Typo made testPose2Factor not build on Linux 2009-12-26 19:31:02 +00:00
Frank Dellaert f3965b07ca Conjugate Gradient Descent template (in progress) 2009-12-26 15:06:54 +00:00
Frank Dellaert 886c7dcdcc formatting and comments 2009-12-26 15:06:21 +00:00
Frank Dellaert 8dbf79706e commented out two broken tests 2009-12-26 15:05:55 +00:00
Michael Kaess 4403b51fcd isam functionality separated into ISAM class, still within BayesTree 2009-12-26 04:44:13 +00:00
Frank Dellaert 2cb52694b5 Multiply with transpose sugar A'*v = A^v 2009-12-25 17:52:58 +00:00
Michael Kaess 80ff7e6d26 uncommented urban In Makefile.am as it prevents linking; added Pose2Prior; ISAM2/planar now working 2009-12-24 23:44:08 +00:00
Richard Roberts 92b60a8543 Made 'between' derivatives in the tangent space of the solution instead of tangent space of identity, this makes Pose2 an "origin-free" manifold. 2009-12-21 16:43:23 +00:00
Frank Dellaert d0b757da48 remove method to set factor to NULL 2009-12-20 21:21:01 +00:00
justinca 3158a5c7c1 Rework UrbanMeasurement to be more efficient, less duplicate code. Add real unit tests for the class 2009-12-20 14:59:37 +00:00
Frank Dellaert d362fa13d8 print is more intuitive using reverse order 2009-12-20 11:56:33 +00:00
Frank Dellaert 18c44e0d1f Comments only 2009-12-20 10:32:34 +00:00
justinca 7012fd2857 UrbanMeasurement first pass at implementation. Still need to add test data, sort out some details. 2009-12-18 19:43:55 +00:00
Richard Roberts 82825a30bf Fixed unit test broken by fix in Pose2Factor 2009-12-18 14:42:19 +00:00
Frank Dellaert b14094cb1f testUrbanOdometry 2009-12-18 07:15:19 +00:00
Frank Dellaert d11d674c01 addOdometry now works 2009-12-18 06:55:44 +00:00
Frank Dellaert c987ab397c error_vectors 2009-12-18 06:55:24 +00:00
Frank Dellaert bf504d30db new concatVectors call 2009-12-18 06:11:19 +00:00
Frank Dellaert ac72d1cc22 renamed transformPose_to to transform_to, composeTransform to compose, and changed nr. of arguments of Dtransform_to2 (to two) 2009-12-18 05:36:53 +00:00
Frank Dellaert eaf27af92d error_vector and error unit-tested 2009-12-18 05:18:31 +00:00
Frank Dellaert edb72d305f better error message, formatting 2009-12-18 05:16:09 +00:00
Frank Dellaert 0194926dc2 transpose not needed 2009-12-18 05:14:34 +00:00
Frank Dellaert c9bd327961 formatting 2009-12-18 05:14:08 +00:00
Alex Cunningham e2bc13a2a6 Renaming gradients -> jacobians 2009-12-18 03:05:47 +00:00
Frank Dellaert a3deb992c4 use BOOST_FOREACH 2009-12-18 02:48:21 +00:00
Alex Cunningham a1918056a5 Changed NonlinearConstraints to take cost and gradient functions that do not take the list of keys. Tests have been reconstructed using boost::bind 2009-12-18 02:39:02 +00:00
Frank Dellaert 5a0bc8ab53 remove binaries 2009-12-18 02:30:05 +00:00
Frank Dellaert cf1fde7bda UrbanFactor, UrbanGraph.cpp, template instantiations 2009-12-18 02:27:50 +00:00
Alex Cunningham 7d0de77fc6 Changed argument ordering for constraints 2009-12-18 01:40:29 +00:00
Frank Dellaert 7dfc67860c unit tests for new Urban* classes 2009-12-18 01:24:28 +00:00
Alex Cunningham d75a602546 Removed failed test testSQPOptimizer 2009-12-18 01:24:19 +00:00
Richard Roberts ff817551de Added FactorGraph::replace(index, factor) to replace one factor with another (used in FrameSLAM). 2009-12-18 00:13:38 +00:00
Richard Roberts 3c0ae0ec1c Math fix in linearize() and error_vector() 2009-12-18 00:10:20 +00:00
Richard Roberts 7161878285 Small changes: standardized constructors, added log() and unit tests, removed +,- ops, angle() changed to theta(), print functions 2009-12-18 00:09:54 +00:00
Viorela Ila d61d92c0e7 UrbanGraph class and testUrbanGraph TODOs 2009-12-17 21:23:50 +00:00
Frank Dellaert 68de3ae715 better comments 2009-12-17 19:34:27 +00:00
Manohar Paluri dc9a966fdd moved shared pointer declaration to Cal3_S2.h 2009-12-17 10:02:43 +00:00
Richard Roberts 3326759f0b Removed extra ; 2009-12-16 21:41:33 +00:00
Richard Roberts c45f64657f Changes to make Pose2Config work with NonlinearOptimizer 2009-12-16 21:40:41 +00:00
Richard Roberts 83c95f2343 Changed constructor used from Pose2(t,R) to Pose2(R,t) 2009-12-16 21:39:03 +00:00
Frank Dellaert 9efac7b3fb Some re-naming and re-formatting only 2009-12-15 05:34:49 +00:00
Richard Roberts 94f986bbe7 Indentation 2009-12-15 00:00:02 +00:00
Chris Beall a7a5e5e816 small performance improvement by using a pointer to address r 2009-12-14 16:56:50 +00:00
Richard Roberts 71bc9ca0f7 Added unit tests that were missing 2009-12-14 15:45:45 +00:00
Richard Roberts 971b575715 Fix duplicate definition error by adding 'inline' to checkConvergence 2009-12-14 06:10:51 +00:00
Michael Kaess 2270c7d787 BayesTree animation 2009-12-14 06:01:15 +00:00
Richard Roberts c4b60bfd65 Closing # 118: Made Pose2 use Rot2, added 'compose' for Pose2, made slight modifications to Rot2. Also added additional unit tests. This change shouldn't break anything but let me know if it does. 2009-12-14 03:02:05 +00:00
Michael Kaess 0116b3a515 severe bug fixed in updating of Bayestree 2009-12-13 20:54:48 +00:00
Viorela Ila d5d70d7751 gradientDescent_ and conjugateGradientDescent_ works in matlab 2009-12-13 03:02:14 +00:00
Frank Dellaert 6e3f36dc63 Trying different orderings 2009-12-12 12:53:39 +00:00
Frank Dellaert 2914d663de No print in tests 2009-12-12 06:18:59 +00:00
Frank Dellaert c38683cd64 Sped up and fixed (?) sparse 2009-12-12 06:18:29 +00:00
Frank Dellaert 99533f286f Vanilla Conjugate Gradient Descent works 2009-12-12 04:44:34 +00:00
Frank Dellaert 2a2963b7dd Added a numerical gradient calculation test 2009-12-12 04:13:12 +00:00
Frank Dellaert 56a4172480 Fixed printing in matlab 2009-12-12 04:12:24 +00:00
Chris Beall be10fc2a90 18% performance boost by using pointer to address destination matrix A 2009-12-11 23:59:37 +00:00
Viorela Ila 631248f902 no print yet 2009-12-11 23:16:57 +00:00
Viorela Ila 570c6a3c71 print method for Pose2Graph 2009-12-11 23:00:52 +00:00
Viorela Ila 8a9f05059c implement getOrdering_ to work in matlab 2009-12-11 22:53:48 +00:00
Frank Dellaert a1e90af90f exmap that takes Vector 2009-12-11 22:43:34 +00:00
Frank Dellaert 137291b2c9 Vector-like operators 2009-12-11 21:38:08 +00:00
Frank Dellaert e46cfbd7c4 fixed bug in sum 2009-12-11 21:37:52 +00:00
Frank Dellaert bca489384e dot product 2009-12-11 21:37:40 +00:00
Viorela Ila 76b55aba7d linearize method for Pose2Graph works in Matlab!! 2009-12-11 21:34:08 +00:00
Viorela Ila 03304ac421 testPose2Graph tests linearize 2009-12-11 19:32:46 +00:00
Frank Dellaert a66f08a5e0 testing new alphaFactor 2009-12-11 18:03:43 +00:00
Frank Dellaert f91a1f0192 error_vector 2009-12-11 17:42:54 +00:00
Frank Dellaert abc268a13d quick cleanup - expmap comments 2009-12-11 14:22:35 +00:00
Frank Dellaert 16e1f6e56d use Vector_ for conciseness 2009-12-11 05:28:19 +00:00
Frank Dellaert 726858145a gradient descent (with fixed nr. of iterations, choosing optimal step size) 2009-12-11 04:59:05 +00:00
Frank Dellaert 299fcf1e04 scale is const ! 2009-12-11 04:57:31 +00:00
Frank Dellaert c57501eddd fix macro so GTSAM_PRINT(*foo) works 2009-12-11 04:57:14 +00:00
Frank Dellaert 7151e7b24a new constructor from vector 2009-12-11 04:56:29 +00:00
Frank Dellaert 4af2382105 Gradient at solution is zero ! 2009-12-11 02:59:09 +00:00
Chris Beall 532ea0ae36 fixed weird error that several of us have been experiencing with GaussianBayesTree.h appearing twice in the install command. fixed by moving Symbolic inference section above Inference Section. 2009-12-11 01:38:45 +00:00
Viorela Ila 1a96534016 add Pose2Graph 2009-12-10 23:45:38 +00:00
Frank Dellaert e7a912bd3b Calculate gradient of factor graph objective function. 2009-12-10 20:19:15 +00:00
Frank Dellaert 67e1897e47 Get and [] now return references, new imperative add method 2009-12-10 20:17:11 +00:00
Frank Dellaert 81ce0bef88 New operator for left-multiplication of vector 2009-12-10 20:16:40 +00:00
Michael Kaess 2df0e49e9b optimize works for GaussianBayessTree 2009-12-10 17:00:11 +00:00
Frank Dellaert f44af12836 Renamed variable 2009-12-10 15:34:09 +00:00
Frank Dellaert d26664d975 Convenience functions for adding factors 2009-12-10 15:33:52 +00:00
Viorela Ila e0274dab59 Pose2Config constructor 2009-12-10 04:12:41 +00:00
Viorela Ila 072dea81b0 rename Pose2Constraint using Pose2Factor 2009-12-09 23:43:01 +00:00
Manohar Paluri cee3f2a355 fixed recursive inclusion. Was giving error when you build gtsam 2009-12-09 22:53:44 +00:00
Frank Dellaert db0d7286c2 Fixed Michael's c++ trubbles. 2009-12-09 22:15:38 +00:00
Michael Kaess 72ba1bee24 separate cpp 2009-12-09 22:02:50 +00:00
Frank Dellaert 7d4de3ec20 Added a 1D manifold implementation of 2D rotations. The new representation stores (cos theta, sin theta) rather than theta itself, ensuring that (a) rotate and unrotate do not call cos/sin, (b) same for all derivatives of rotate and unrotate, (c) when you call angle(), you always get the standardized answer given by atan2. The idea is that we will use this new type in Pose2 instead of angle. 2009-12-09 21:50:27 +00:00
Chris Beall 91370a9d7a added public iterator typedefs to VSLAMConfig to make it easier for other code to consume the optimization results. 2009-12-09 21:47:23 +00:00
Manohar Paluri 1ec93f05cd added a test case which uses getOrdering instead of defining the order manually. 2009-12-09 21:22:16 +00:00
Frank Dellaert a9dc57db2c 2009-12-09 21:00:53 +00:00
Michael Kaess ffa009d3ff accidentially checked in 2009-12-09 20:56:03 +00:00
Michael Kaess 34e913e236 optimization over cliques started 2009-12-09 20:49:04 +00:00
Viorela Ila 638b174541 Pose2Constraint works in matlab 2009-12-09 19:55:25 +00:00
Michael Kaess 4200271cf4 GaussianBayesTree added, testBayesTree split 2009-12-09 19:39:25 +00:00
Chris Beall a4a552ea86 fixed bug concerning variable keys not being saved. 2009-12-09 19:13:02 +00:00
Chris Beall 3b3c76b273 cleaned up, and removed Testable here because it's already provided by base class FactorGraph 2009-12-09 19:11:45 +00:00
Viorela Ila b87aa58c1f add Pose2Constraint class 2009-12-09 17:29:43 +00:00
Manohar Paluri f764772106 added getOrdering unit test 2009-12-09 15:25:50 +00:00
Richard Roberts e43548d03a A couple more "missing" .hpp files for newer gcc :-) 2009-12-08 22:49:57 +00:00
Michael Kaess 9bbea6dcbd some additional includes needed with newer compiler 2009-12-08 21:40:09 +00:00
Alex Cunningham d7c67532bf Changed format of Matrix::vector_scale() to switch arguments 2009-12-08 21:10:38 +00:00
Frank Dellaert 066b80e02e Pose2Constraint, initial check in with working linearize 2009-12-08 20:48:39 +00:00
Frank Dellaert 16da0895a8 square_root_inverse 2009-12-08 20:48:13 +00:00
Frank Dellaert d1ab2c7288 transform_to and between, with derivatives, unit-tested 2009-12-08 19:12:20 +00:00
Frank Dellaert 6ead19648f Modernized Pose2 constraint and added numerical derivative check 2009-12-08 14:02:56 +00:00
Frank Dellaert 152fa0069a fixed expected, actual nomenclature in assert_equal: always use (expected, equal) order 2009-12-08 13:53:33 +00:00
Viorela Ila 95260281d1 add testFunctions (h, H1, H2) for Pose Constraint 2009-12-07 23:17:03 +00:00
Richard Roberts 53af03368f Fixed indentation 2009-12-07 22:51:49 +00:00
Manohar Paluri e244e22c6a added probability function that computes the probability of a BinaryBayesNet given a config. 2009-12-07 07:12:01 +00:00
Manohar Paluri 115d9a8adf replaced pow with bit shift operator, changed constructor to take p(x|parents) and created cpt inside the constructor. 2009-12-07 03:25:25 +00:00
Manohar Paluri 28eb550781 Used a map for config 2009-12-07 00:49:13 +00:00
Manohar Paluri b9e15ee789 Added cpt to BinaryConditional 2009-12-06 23:28:46 +00:00
Manohar Paluri 60a3a21d5a Binary Bayes Net, incomplete 2009-12-06 21:46:46 +00:00
Frank Dellaert 2a4e90a283 Re-factored append_factor to use FOREACH_PAIR 2009-12-05 02:00:20 +00:00
Chris Beall e98081f92c changes to append_factor which give more than 2x speedup on my data. Matrices in As are no longer copied/edited/replaced each time they need to be changed, but created once and then updated in place. 2009-12-04 21:03:32 +00:00
Eohan George ae9789c9ee Cleaner printing with tabs after each element 2009-12-02 23:01:49 +00:00
Kai Ni 5bde26a885 odprintf is an auxiliary function to printf for Win32 compatibility 2009-12-02 19:37:54 +00:00
Alex Cunningham e26acc0d8d Changed nonlinear constraints to use boost.bind to handle arbitrary function objects for evaluating cost, useful for parameterizing cost functions. 2009-12-01 19:45:47 +00:00
Viorela Ila c00252a8f6 add method combine to GaussianFactorGraph in gtsam.h 2009-12-01 16:01:29 +00:00
Alex Cunningham a3ce3f31c8 Cleanup with NonlinearConstraints to make the active() function do thresholding for inequality constraints, rather than constraint function itself.
testSQP now has all tests active and passing.
Added greaterThanOrEqual() for vector comparison.
2009-11-30 17:36:34 +00:00
Alex Cunningham 1799f59388 Added a function for the SQPOptimizer that will iterate until convergence. At the moment, the convergence conditions are quite simple (error below threshold or too many iterations). The system does, however, strictly limit the number of iterations. 2009-11-28 22:49:14 +00:00
Alex Cunningham 1525253123 Inequality Constraints now work in a simple obstacle-avoidance demo in testSQPOptimizer. It should be noted that convergence conditions are still not implemented. 2009-11-28 21:44:07 +00:00
Alex Cunningham 395e4ae3f1 Fixed sign issue on nonlinear constraints, so that that it is not necessary to flip the sign on the delta configs before using exmap. 2009-11-28 21:00:09 +00:00
Alex Cunningham 0ff7e3a5d9 Changed interface on constraint g(x) and grad_g(x) functions to take a list of keys, so that all of the variables in a factor can be used as necessary. Moved g(x) into base NonlinearConstraint class and some cleanup. 2009-11-28 19:18:02 +00:00
Alex Cunningham 107c6846fb Added basic inequality constraint handling to NonlinearConstraint. Demo still in progress, but now constraints are explicitly handled as either equality or inequality constraints, with an active() function to determine if it is necessary to use the constraint.
Created testOrdering for new subtract() function to remove parts of an ordering.
2009-11-28 18:35:36 +00:00
Alex Cunningham f3e825767b NonlinearConstraints now handle inactive constraints (when the state is already in the feasible region) by returning empty factors on linearization. 2009-11-27 18:42:01 +00:00
Alex Cunningham cf6474c99b Added a graph implementation for multi-robot control systems. Currently can only really constrain the ends of a trajectory.
Made a number of fixes and updates to the ControlConfig as well.
2009-11-27 17:59:03 +00:00
Alex Cunningham 2a2e11d05d Added the config and units for a robot control system example that keeps a position and velocity model of a robot's motion. 2009-11-26 05:52:17 +00:00
Alex Cunningham 43e4c66407 Added more detail to VSLAM test that diverges. 2009-11-24 16:03:57 +00:00
Alex Cunningham d788e9833d Added tests to ensure that configs will only update existing values when using exmap and not add new ones if there are more values in the delta config. VectorConfig and VSLAMConfig both do this properly now. 2009-11-24 15:12:59 +00:00
Alex Cunningham e3e79e3888 Added lagrange access function to the SQPOptimizer
Added a test testSQP to try changing the initial Lagrange multiplier values to find a way around the stability problem, but there is no effect.
2009-11-24 14:44:46 +00:00
Alex Cunningham 140e79572f Added a test to testSQP to check VSLAM solution stability when the initial config is away from the ground truth. The test without the nonlinear constraints has the same stability problem, and both the constrained and unconstrained versions are in place and disabled. 2009-11-24 14:14:03 +00:00
Alex Cunningham fec280db8e Added a nonlinear constraint version of the stereo SQP example, but the test when the initial configuration is incorrect is not stable and the points continue moving away indefinitely. 2009-11-24 06:39:27 +00:00
Alex Cunningham 31856ce598 SQPOptimizer can now do its own initialization of the Lagrange multipliers.
Cleaned up NonlinearConstraint
2009-11-23 22:10:52 +00:00
Alex Cunningham a5515d9d57 SQPoptimizer can now perform optimization, and has a test using the linear map-warping example. 2009-11-23 21:25:31 +00:00
Viorela Ila ac315082aa new example from RSS sqrtSAM in testBayesTree 2009-11-23 20:11:10 +00:00
Alex Cunningham 0b333630e7 Added an SQPOptimizer class with accompanying test - currently doesn't do much 2009-11-23 19:57:35 +00:00
Viorela Ila d15a7a073c SymbolicFactor works in Matlab 2009-11-23 19:45:09 +00:00
Alex Cunningham 36877532ad Added ground truth for VSLAM example in testSQP 2009-11-23 16:45:53 +00:00
Frank Dellaert f272e2f6fe Added a second smoother test 2009-11-23 05:27:37 +00:00
Frank Dellaert 9bac438dbe Play nice with BOOST_FOREACH: non-const begin/end. Also removed buggy clear(). 2009-11-23 05:27:19 +00:00
Michael Kaess 10a8ac34ec iSAM smoother test 2009-11-23 01:16:58 +00:00
Frank Dellaert 4951a25453 More efficient removeTop 2009-11-23 00:02:06 +00:00
Frank Dellaert 35af122e83 Added a new version of removeTop and simplified update 2009-11-22 23:50:01 +00:00
Michael Kaess 7d384488e3 BayesTree::update generalized and moved from testIncremental to BayesTree; testIncremental removed 2009-11-22 23:35:13 +00:00
Frank Dellaert 64a43b0492 removeTop now does not bomb when a clique does not exist: it just does nothing 2009-11-22 22:59:56 +00:00
Frank Dellaert 4e74edba72 Some simplification 2009-11-22 22:39:32 +00:00
Michael Kaess ab117947d7 update now takes a factor graph, rather than an individual factor 2009-11-22 22:26:24 +00:00
Michael Kaess a3de1df5a4 adding orphans assuming that the first separator key refers to the parent; GTSAM_PRINT define 2009-11-22 21:18:31 +00:00
Frank Dellaert 198f73a05f Insert conditionals straight into the topless bayesTree 2009-11-22 18:40:55 +00:00
Frank Dellaert 32db0595f4 using removeTop now 2009-11-22 18:27:14 +00:00
Frank Dellaert 952798e751 fixed orphans bug 2009-11-22 18:22:17 +00:00
Frank Dellaert 9da2f16f4d Removed copy/paste in unit tests 2009-11-22 18:12:29 +00:00
Frank Dellaert d4aaa5d114 Added two more removePath tests and fixed bug in removeTop. But orphan list is still incorrect. 2009-11-22 18:06:28 +00:00
Michael Kaess 45292f7bd6 Cliques implemented; unit test on orphans for removePath; bug fix in removePath/orphans 2009-11-22 17:40:24 +00:00
Frank Dellaert 53754ccbb8 removeTop with one factor implemented and one test works (orphans not yet checked) 2009-11-22 17:34:59 +00:00
Frank Dellaert 6f11c0803b Cliques class 2009-11-22 16:46:29 +00:00
Frank Dellaert 7ce62f1626 Some template magic and boost:tie cleared up the compile issues in removePath 2009-11-22 16:04:51 +00:00
Michael Kaess 4449cfd30c remove_path now also returns list of orphaned subtree roots; compile problem... 2009-11-21 23:41:43 +00:00
Frank Dellaert 82aae3c161 Some re-factoring (using BOOST_FOREACH to loop over string list), root is now NULL after removing root clique 2009-11-21 21:48:10 +00:00
Alex Cunningham 1fd0404ec9 Cleanup in testSQP, also demoed the unary constraint, as well. 2009-11-21 19:05:24 +00:00
Frank Dellaert 00b5b25591 Awesome recursive version of removePath 2009-11-21 06:14:53 +00:00
Frank Dellaert 072846a70f moved addClique and removeClique implementations to inl.h,
removePath takes clique argument now
2009-11-21 06:07:46 +00:00
Frank Dellaert 286d826119 removed print 2009-11-21 06:06:30 +00:00
Frank Dellaert b113194e58 While watching TV :-) added some constructors for more readable tests. 2009-11-21 04:59:50 +00:00
Frank Dellaert a0a250750b compare config 2009-11-21 04:22:59 +00:00
Michael Kaess 0286bc27eb removePath mostly working 2009-11-21 03:38:13 +00:00
Alex Cunningham 08f5b074a0 Added verbosity selector for the SQP demo to remove printouts every time it runs 2009-11-20 14:29:11 +00:00
Frank Dellaert 715dc4474d functional STL magic 2009-11-20 14:18:26 +00:00
Frank Dellaert d234365d53 involves is const 2009-11-20 14:17:52 +00:00
Alex Cunningham 5f848f272b SQP demo that moves maps into the correct reference frames is now working using the NonlinearConstraint machinery. 2009-11-20 14:05:21 +00:00
Frank Dellaert e440767db9 Use [involves], and now updating orphan list 2009-11-20 05:23:47 +00:00
Frank Dellaert 55e85fd8a5 [involves] checks whether variable with that key is involved in any factor 2009-11-20 05:14:34 +00:00
Alex Cunningham 6aba2f1c1c Changed initial SQP example to use exmap using the new scaling function for VectorConfig 2009-11-20 05:13:32 +00:00
Alex Cunningham acfe742c29 Added a simple scaling function for VectorConfigs 2009-11-20 05:10:55 +00:00
Alex Cunningham 714edb57f0 Basic implementation of a binary nonlinear constraint, with working linearization of a binary constraint. 2009-11-20 03:50:48 +00:00
Alex Cunningham ee4a066275 Implemented linearization and equality for unary NonlinearConstraints. Current tests use a scalar example. Split out implementation into a separate implementation file. 2009-11-20 03:04:49 +00:00
Michael Kaess 4ca1dbf325 generalized most of the update algorithm 2009-11-19 23:25:03 +00:00
Alex Cunningham 429f27550c Added a NonlinearConstraint and testNonlinearConstraint. There is currently an abstract base class for constraints and a partially implemented unary constraint. 2009-11-19 16:50:18 +00:00
Frank Dellaert cd913566f2 I now use push_back to add factors to the new factor graph, and called getOrdering to compute a colamd order. I fixed the test so it checks the right order. Unfortunately colamd is a worse ordering, and the two cliques from before are merged into one. 2009-11-19 06:37:06 +00:00
Frank Dellaert 8d8503bd99 constructor with three parents 2009-11-19 06:34:28 +00:00
Frank Dellaert b2eee54b5a push_back an entire factor graph 2009-11-19 06:34:07 +00:00
Frank Dellaert e2a3d1cb8f Fixed test 2009-11-19 04:52:46 +00:00
Alex Cunningham f98f49381a Added an example to testSQP to use for combining graphs 2009-11-18 21:57:59 +00:00
Alex Cunningham d700cd2cac Made some small changes to testSQP to simplify the system and improve convergence. 2009-11-18 20:23:07 +00:00
Alex Cunningham 7fc68e2d90 Updated testSQP to use a real SQP implementation as separate factors on the previous problem. SQP now works. 2009-11-18 19:42:14 +00:00
Frank Dellaert 76d0a60b88 commented out all print statements 2009-11-18 18:22:08 +00:00
Frank Dellaert f40182518a size() now returns correct nr. of cliques, not number of keys 2009-11-18 18:05:12 +00:00
Michael Kaess d0efe2da5e update almost correct, except for order 2009-11-18 17:40:05 +00:00
Frank Dellaert 23031fbc04 convert clique into factor graph 2009-11-18 17:28:07 +00:00
Frank Dellaert 1edcdb6f80 added SymbolicFactor constructor that takes a SymbolicConditional 2009-11-18 17:27:27 +00:00
Frank Dellaert c7e76891da skeleton hardcoded version 2009-11-18 17:03:19 +00:00
Frank Dellaert bed219c997 no printout 2009-11-18 16:32:45 +00:00
Frank Dellaert 21974f95e1 test for incremental update 2009-11-18 16:31:19 +00:00
Frank Dellaert bef2efacb7 fixed equals 2009-11-18 16:30:57 +00:00
Frank Dellaert ceed2ae17d symbolic tree in testIncremental 2009-11-18 15:37:19 +00:00
Michael Kaess f56bf8c79f added missing include to satisfy stricter compiler; added isam test file 2009-11-17 21:47:42 +00:00
Chris Beall 4f7d31986c added cameraConstraint and corresponding unit test based on same 2 camera/4 landmark example, but now there are constraints on the two cameras and none of the landmarks. 2009-11-17 17:19:54 +00:00
Manohar Paluri e4eaae4605 Added equals function and serialization capability 2009-11-17 01:19:55 +00:00
Manohar Paluri d24846d9a0 fixed errors due to shared pointer change in VSLAMFactor 2009-11-17 01:02:55 +00:00
Manohar Paluri e312252006 Changed camera matrix to a shared pointer 2009-11-17 00:51:27 +00:00
Manohar Paluri 256c094039 Added default constructor and Serialization 2009-11-16 23:49:04 +00:00