mpt_call_qpoases

Purpose

A gateway function to QPoases solver (without errorchecks)

Syntax

R = mpt_call_qpoases(S)

Description

The function implements call to QPoases solver based on formulation from Opt class. Only QP and LP problems are supported. It is assumed that QP/LP entering this function (for LP ../../../../fig/mpt/modules/solvers/mpt_call_qpoases1.png) is of the form

../../../../fig/mpt/modules/solvers/mpt_call_qpoases12.png

which must be transformed to

../../../../fig/mpt/modules/solvers/mpt_call_qpoases13.png

which accepts QPspline. Inequality ../../../../fig/mpt/modules/solvers/mpt_call_qpoases2.png and equality ../../../../fig/mpt/modules/solvers/mpt_call_qpoases3.png constraints are merged to

../../../../fig/mpt/modules/solvers/mpt_call_qpoases14.png

since QPoases accepts equalities as double-sided inequalities.

Input Arguments

S

Structure of the Opt class.

Class: struct

S.H

Quadratic part of the objective function.

Class: double

Default: []

S.f

Linear part of the objective function.

Class: double

S.A

Linear part of the inequality constraints ../../../../fig/mpt/modules/solvers/mpt_call_qpoases4.png.

Class: double

S.b

Right hand side of the inequality constraints ../../../../fig/mpt/modules/solvers/mpt_call_qpoases5.png.

Class: double

S.Ae

Linear part of the equality constraints ../../../../fig/mpt/modules/solvers/mpt_call_qpoases6.png.

Class: double

Default: []

S.be

Right hand side of the equality constraints ../../../../fig/mpt/modules/solvers/mpt_call_qpoases7.png.

Class: double

Default: []

S.lb

Lower bound for the variables ../../../../fig/mpt/modules/solvers/mpt_call_qpoases8.png.

Class: double

Default: []

S.ub

Upper bound for the variables ../../../../fig/mpt/modules/solvers/mpt_call_qpoases9.png.

Class: double

Default: []

S.n

Problem dimension (number of variables).

Class: double

S.m

Number of inequalities in ../../../../fig/mpt/modules/solvers/mpt_call_qpoases10.png.

Class: double

S.me

Number of equalities in ../../../../fig/mpt/modules/solvers/mpt_call_qpoases11.png.

Class: double

S.problem_type

A string specifying the problem to be solved.

Class: char

S.test

Call (false) or not to call (true) MPT global settings.

Class: logical

Default: false

Output Arguments

R

result structure

Class: struct

R.xopt

Optimal solution.

Class: double

R.obj

Optimal objective value.

Class: double

R.lambda

Lagrangian multipliers.

Class: double

R.exitflag

An integer value that informs if the result was feasible (1), or otherwise (different from 1).

Class: double

R.how

A string that informs if the result was feasible ('ok'), or if any problem appeared through optimization.

Class: char

See Also

mpt_solve


© 2010-2013 Martin Herceg: ETH Zurich, herceg@control.ee.ethz.ch