mpt_call_cdd

Purpose

A gateway function to CDD solver (without errorchecks)

Syntax

R = mpt_call_cdd(S)

Description

The function implements call to CDD solver based on formulation from Opt class. Only LP problems are supported. It is assumed that LP entering this function is of the form

../../../../fig/mpt/modules/solvers/mpt_call_cdd9.png

which is accepted by CDD directly. Two specific routines can be chosen to solve LP: criss-cross method or dual-simplex that are specified in "solver" field. Dual-simplex method is taken by default.

Input Arguments

S

structure of the Opt class

Class: struct

S.f

Linear part of the objective function.

Class: double

S.A

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

Class: double

S.b

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

Class: double

S.Ae

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

Class: double

Default: []

S.be

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

Class: double

Default: []

S.lb

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

Class: double

Default: []

S.ub

Upper bound for the variables ../../../../fig/mpt/modules/solvers/mpt_call_cdd6.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_cdd7.png.

Class: double

S.me

Number of equalities in ../../../../fig/mpt/modules/solvers/mpt_call_cdd8.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

S.solver

Specify string to call "criss-cross" or "dual-simplex" method. By default, the method "dual-simplex" is used.

Class: char

Output Arguments

R

result structure

Class: struct

R.xopt

Optimal solution.

Class: double

R.obj

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