fix LPSolver unittest
parent
57aae7f7b1
commit
9b418c98ca
|
|
@ -10,6 +10,7 @@
|
|||
#include <boost/range/adaptor/map.hpp>
|
||||
#include <gtsam/inference/Symbol.h>
|
||||
#include <gtsam_unstable/linear/LPSolver.h>
|
||||
#include <gtsam_unstable/linear/LinearInequalityFactorGraph.h>
|
||||
|
||||
using namespace std;
|
||||
using namespace gtsam;
|
||||
|
|
@ -20,19 +21,19 @@ TEST(LPSolver, oneD) {
|
|||
objCoeffs.insert(Y(1), repeat(1, -5.0));
|
||||
objCoeffs.insert(X(2), repeat(1, -4.0));
|
||||
objCoeffs.insert(X(3), repeat(1, -6.0));
|
||||
JacobianFactor constraint(
|
||||
LinearInequality inequality(
|
||||
Y(1), (Matrix(3,1)<< 1,3,3),
|
||||
X(2), (Matrix(3,1)<< -1,2,2),
|
||||
X(3), (Matrix(3,1)<< 1,4,0), (Vector(3)<<20,42,30),
|
||||
noiseModel::Constrained::MixedSigmas((Vector(3)<<-1,-1,-1)));
|
||||
X(3), (Matrix(3,1)<< 1,4,0), (Vector(3)<<20,42,30), 0);
|
||||
VectorValues lowerBounds;
|
||||
lowerBounds.insert(Y(1), zero(1));
|
||||
lowerBounds.insert(X(2), zero(1));
|
||||
lowerBounds.insert(X(3), zero(1));
|
||||
GaussianFactorGraph::shared_ptr constraints(new GaussianFactorGraph);
|
||||
constraints->push_back(constraint);
|
||||
LinearInequalityFactorGraph::shared_ptr inequalities(new LinearInequalityFactorGraph);
|
||||
inequalities->push_back(inequality);
|
||||
LinearEqualityFactorGraph::shared_ptr equalities(new LinearEqualityFactorGraph);
|
||||
|
||||
LPSolver solver(objCoeffs, constraints, lowerBounds);
|
||||
LPSolver solver(objCoeffs, equalities, inequalities, lowerBounds);
|
||||
vector<int> columnNo = solver.buildColumnNo(objCoeffs | boost::adaptors::map_keys);
|
||||
LONGS_EQUAL(3, columnNo.size());
|
||||
LONGS_EQUAL(1, columnNo[0]);
|
||||
|
|
@ -64,16 +65,16 @@ TEST(LPSolver, oneD) {
|
|||
TEST(LPSolver, threeD) {
|
||||
VectorValues objCoeffs;
|
||||
objCoeffs.insert(X(1), (Vector(3)<<-5.0, -4.0, -6.0));
|
||||
JacobianFactor constraint(
|
||||
X(1), (Matrix(3,3)<< 1,-1,1,3,2,4,3,2,0), (Vector(3)<<20,42,30),
|
||||
noiseModel::Constrained::MixedSigmas((Vector(3)<<-1,-1,-1)));
|
||||
LinearInequality inequality(
|
||||
X(1), (Matrix(3,3)<< 1,-1,1,3,2,4,3,2,0), (Vector(3)<<20,42,30), 0);
|
||||
VectorValues lowerBounds;
|
||||
lowerBounds.insert(X(1), zeros(3,1));
|
||||
|
||||
GaussianFactorGraph::shared_ptr constraints(new GaussianFactorGraph);
|
||||
constraints->push_back(constraint);
|
||||
LinearInequalityFactorGraph::shared_ptr inequalities(new LinearInequalityFactorGraph);
|
||||
inequalities->push_back(inequality);
|
||||
LinearEqualityFactorGraph::shared_ptr equalities(new LinearEqualityFactorGraph);
|
||||
|
||||
LPSolver solver(objCoeffs, constraints, lowerBounds);
|
||||
LPSolver solver(objCoeffs, equalities, inequalities, lowerBounds);
|
||||
vector<int> columnNo = solver.buildColumnNo(objCoeffs | boost::adaptors::map_keys);
|
||||
LONGS_EQUAL(3, columnNo.size());
|
||||
LONGS_EQUAL(1, columnNo[0]);
|
||||
|
|
|
|||
Loading…
Reference in New Issue