Go to the documentation of this file.
33 #ifndef _PLDP_SOLVER_H_
46 PLDPSolver(
unsigned int CardU,
double *iPu,
double *Px,
double *Pu,
55 unsigned int NbOfConstraints,
56 double *LinearPartOfConstraints,
57 double *CstPartOfConstraints,
double *ZMPRef,
double *XkYk,
58 double *X, std::vector<int> &SimilarConstraint,
59 unsigned int NumberOfRemovedConstraints,
60 bool StartingSequence);
68 bool StartingSequence);
107 double ComputeAlpha(vector<unsigned int> &NewActivatedConstraints,
108 vector<int> &SimilarConstraint);
137 double *m_CstPartOfCostFunction;
140 double *m_UnconstrainedDescentDirection;
155 double *m_v1, *m_v2, *m_y;
158 double *m_tmp1, *m_tmp2;
167 bool *m_ConstraintsValueComputed;
172 unsigned int m_NbMaxOfConstraints;
175 unsigned int m_NbOfConstraints;
178 unsigned int m_CardV;
184 unsigned int m_DebugMode;
192 PatternGeneratorJRL::OptCholesky *m_OptCholesky;
195 vector<unsigned int> m_ActivatedConstraints;
198 vector<unsigned int> m_PreviouslyActivatedConstraints;
204 double *m_PreviousZMPSolution;
207 double m_InternalTime;
216 bool m_LimitedComputationTime;
219 double m_AmountOfLimitedComputationTime;
void InitializeSolver()
Definition: PLDPSolver.cpp:131
void AllocateMemoryForSolver()
Definition: PLDPSolver.cpp:103
int ComputeInitialSolution(double *ZMPRef, double *XkYk, bool StartingSequence)
Definition: PLDPSolver.cpp:249
int ComputeProjectedDescentDirection()
Compute Projected descent direction.
Definition: PLDPSolver.cpp:351
PLDPSolver(unsigned int CardU, double *iPu, double *Px, double *Pu, double *iLQ)
Constructor.
Definition: PLDPSolver.cpp:61
double ComputeAlpha(vector< unsigned int > &NewActivatedConstraints, vector< int > &SimilarConstraint)
Definition: PLDPSolver.cpp:463
int SolveProblem(double *CstPartOfTheCostFunction, unsigned int NbOfConstraints, double *LinearPartOfConstraints, double *CstPartOfConstraints, double *ZMPRef, double *XkYk, double *X, std::vector< int > &SimilarConstraint, unsigned int NumberOfRemovedConstraints, bool StartingSequence)
Solve the optimization problem.
Definition: PLDPSolver.cpp:569
void StoreCurrentZMPSolution(double *XkYk)
Definition: PLDPSolver.cpp:862
Definition: PLDPSolver.hh:38
void WriteCurrentZMPSolution(string filename, double *XkYk)
Definition: PLDPSolver.cpp:888
~PLDPSolver()
Destructor.
Definition: PLDPSolver.cpp:153
Definition: PLDPSolver.hh:43
int BackwardSubstitution()
Compute v2 q (14b) in Dimitrov 2009. Second phase a Now solving LL^t v2 = v1 <-> L y = v1 with L^t v2...
Definition: PLDPSolver.cpp:320
int ForwardSubstitution()
Forward substitution. First Phase EE^t v2 = v1 <-> LL^t v2 = v1 Now solving L y = v1.
Definition: PLDPSolver.cpp:297
int PrecomputeiPuPx()
Definition: PLDPSolver.cpp:184