


MPT_MPMILP Multi-Parametric Mixed-Integer LP solver
sol = mpt_mpmilp(Matrices, yalmipOptions)
---------------------------------------------------------------------------
DESCRIPTION
---------------------------------------------------------------------------
Solves a multi-parametric Mixed Integer LP (mpMILP):
min H U + F x
U
s.t. G U <= W + E x
bndA*x <= bndb
where certain elements of the U vector are known to be either continuous, or
binary, or they belong to a finite alphabet.
As a solution we get n regions
sol.Pn(i) = {x : H x <= K}
with the optimizer
U = sol.Fi{i}*x + sol.Gi{i}
and the corresponding cost function expression
V(x) = sol.Bi{i}*x + sol.Ci{i}
---------------------------------------------------------------------------
INPUT
---------------------------------------------------------------------------
Matrices - a struct with all the parameters which are needed.
See description above for explanation.
Matrices.H, Matrices.G, Matrices.W, Matrices.E
Matrices.bndA=bndA - Limits on exploration space, i.e. bndA*x<=bndb
Matrices.bndb=bndb
Matrices.vartype - Vector of {'C', 'B', 'A'} indicies.
vartype(i)='C' denotes a continuous variable
vartype(i)='B' denotes a binary variable (0/1)
vartype(i)='A' denotes a variable which can take
values from a finite alphabet
Matrices.alphabet - Matrices.alphabet{i} must contain a list of values
which the variable U(i) can take. For instance:
Matrices.vartype(2) = 'A';
Matrices.alphabet{2} = [-0.5 0 3.4];
and U(2) can only take values -0.5, 0, or 3.4
Options - additional options to pass to YALMIP:
.verbose - level of verbosity
.mp.algorithm - which enumeration algorithm to use
(Options.mp_algorithm=3 uses different enumeration)
.mp.presolve - perform pre-solving if this option is true (default)
---------------------------------------------------------------------------
OUTPUT
---------------------------------------------------------------------------
"sol" structure with following fields:
Pn,Fi,Gi - for region Pn(i).H*x <= Pn(i).K computed input is
U=Fi{i}*x+Gi{i}
Pfinal - Defines the feasible state space partition (i.e. union of
all regions) as Phard.H*x<=Phard.K
Bi, Ci - cost associate to every region
see also MPT_MPLP. SOLVEMP