InfSolve: Difference between revisions
(Created page with "==Purpose== Find a constrained minimax solution with the use of any suitable TOMLAB solver. infSolve solves problems of the type: <math> \begin{array}{cccccc} \min\limits_x &...") |
No edit summary |
||
Line 1: | Line 1: | ||
[[Category:Solvers]] | |||
{{cleanup|Clean this article.}} | |||
==Purpose== | ==Purpose== | ||
Revision as of 08:21, 11 July 2011
{{#switch: | left =
{{#switch:{{#if: | {{{smallimage}}} | }} | none =| #default =
}} {{#if:{{#if: | {{{smallimageright}}} | }} | {{#ifeq:{{#if: | {{{smallimageright}}} | }}|none | | }} }}{{
#switch:left | left =| #default = }} {{#if:{{#if: | {{{smallimage}}} | }} | {{#if: | {{{smallimage}}} | }} | [[File:{{#switch:caution | critical = Ambox speedy deletion.png | important = Ambox deletion.png | warning = Ambox content.png | caution = Cleanup.png | move = Ambox move.png | protection = Ambox protection.png | notice | #default = Cleanup.png }} | {{#switch:left | left = 20x20px | #default = 40x40px }} |link=|alt=]] }}{{#switch:left | left =| #default = | {{#if:
| {{{smalltext}}} | Cleanup is needed}} | {{#switch:left
| left = {{#if: | {{{smallimageright}}} | }}| #default = {{#if:
}}| {{{smallimageright}}} |}} |
| #default =
{{#switch: | none =| #default =
}}{{#if: | {{#ifeq:|none
|| }} }}
{{
#switch: | left =| #default = }} {{#if: | | [[File:{{#switch:caution | critical = Ambox speedy deletion.png | important = Ambox deletion.png | warning = Ambox content.png | caution = Cleanup.png | move = Ambox move.png | protection = Ambox protection.png | notice | #default = Cleanup.png }} | {{#switch: | left = 20x20px | #default = 40x40px }} |link=|alt=]] }}{{#switch: | left =| #default = | Cleanup is needed Clean this article. |
{{#switch:
| left =| #default = |
}}
Purpose
Find a constrained minimax solution with the use of any suitable TOMLAB solver.
infSolve solves problems of the type:
Failed to parse (unknown function "\multicolumn"): {\displaystyle \begin{array}{cccccc} \min\limits_x & \multicolumn{5}{l}{\max r(x)} \\\mbox{subject to} & x_L & \leq & x & \leq & x_U \\& b_L & \leq & Ax & \leq & b_U \\& c_L & \leq & c(x) & \leq & c_U \\ \end{array} }
where Failed to parse (unknown function "\Rdim"): {\displaystyle $x,x_L,x_U \in \Rdim{n}$} , Failed to parse (unknown function "\Rdim"): {\displaystyle $r(x) \in \Rdim{N}$} , Failed to parse (unknown function "\Rdim"): {\displaystyle $c(x),c_L,c_U \in\Rdim{m_1}$} , Failed to parse (unknown function "\Rdim"): {\displaystyle $b_L,b_U \in \Rdim{m_2}$} and Failed to parse (unknown function "\Rdim"): {\displaystyle $A \in \Rdim{m_2 \times n}$} .
Calling Syntax
Result=infSolve(Prob,PriLev)
Description of Inputs
Prob | Problem description structure. Should be created in the cls format. infSolve uses two special fields in Prob: | |
SolverInf | Name of solver used to solve the transformed problem. | |
Valid choices are conSolve, nlpSolve, sTrustr and clsSolve. | ||
If TOMLAB /SOL is installed: minos, snopt, npopt. | ||
InfType | 1 - constrained formulation (default). | |
2 - LS penalty approach (experimental). | ||
The remaining fields of Prob should be defined as required by the selected subsolver. | ||
PriLev | Print level in infSolve. | |
= 0 Silent except for error messages. | ||
> 0 Print summary information about problem transformation. | ||
Calls PrintResult with specified PriLev. | ||
= 2Standard output from PrintResult (default). |
Description of Outputs
Result | Structure with results from optimization. Output depends on the solver used. | |
The fields x_k, r_k, J_k, c_k, cJac, x_0, xState, cState, v_k are transformed back to match the original problem. | ||
g_k is calculated as Failed to parse (unknown function "\VAR"): {\displaystyle \VAR{J\_k} Failed to parse (syntax error): {\displaystyle }} Failed to parse (unknown function "\VAR"): {\displaystyle \VAR{r\_k}} . | ||
The output in Result.Prob is the result after infSolve transformed the problem, i.e. the altered Prob structure |
Description
The minimax problem is solved in infSolve by rewriting the problem as a general constrained optimization problem. One additional variable Failed to parse (unknown function "\MATHSET"): {\displaystyle $z\in \MATHSET{R}$} , stored as is added and the problem is rewritten as:
Failed to parse (unknown function "\multicolumn"): {\displaystyle \begin{array}{cccccc} \multicolumn{6}{l}{\min\limits_x z}\\\\\mbox{subject to} & x_L & \leq & (x_1,x_2,\ldots,x_n)^T & \leq & x_U \\& -\infty & \leq & z & \leq & \infty \\& b_L & \leq & A x & \leq & b_U \\& c_L & \leq & c(x) & \leq & c_U \\& -\infty & \leq & r(x) - z e & \leq & 0 \\\end{array} }
where Failed to parse (unknown function "\Rdim"): {\displaystyle $e \in \Rdim{N},\; e(i)=1 \ \forall i$}
.
To handle cases where an element in appears in absolute value: , expand the problem with extra residuals with the opposite sign:
Examples
minimaxDemo.m.
See Also
clsAssign.