diff options
author | Harpreet | 2015-12-31 16:03:57 +0530 |
---|---|---|
committer | Harpreet | 2015-12-31 16:03:57 +0530 |
commit | d5356061fbd3a9b3052dee25bd9c82c375c42e22 (patch) | |
tree | 72a37d5161eb0f4b895513c46c68e031d1200520 /help | |
parent | eb9ca1191c94059cd7adcf69805906c809fe9712 (diff) | |
download | FOSSEE-Optimization-toolbox-d5356061fbd3a9b3052dee25bd9c82c375c42e22.tar.gz FOSSEE-Optimization-toolbox-d5356061fbd3a9b3052dee25bd9c82c375c42e22.tar.bz2 FOSSEE-Optimization-toolbox-d5356061fbd3a9b3052dee25bd9c82c375c42e22.zip |
Macros example updated
Diffstat (limited to 'help')
18 files changed, 195 insertions, 201 deletions
diff --git a/help/en_US/lsqlin.xml b/help/en_US/lsqlin.xml index c08905e..c6ec286 100644 --- a/help/en_US/lsqlin.xml +++ b/help/en_US/lsqlin.xml @@ -62,13 +62,13 @@ <varlistentry><term>resnorm :</term> <listitem><para> a double, objective value returned as the scalar value norm(C*x-d)^2.</para></listitem></varlistentry> <varlistentry><term>residual :</term> - <listitem><para> a vector of double, solution residuals returned as the vector C*x-d.</para></listitem></varlistentry> + <listitem><para> a vector of double, solution residuals returned as the vector d-C*x.</para></listitem></varlistentry> <varlistentry><term>exitflag :</term> - <listitem><para> Integer identifying the reason the algorithm terminated. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</para></listitem></varlistentry> + <listitem><para> A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</para></listitem></varlistentry> <varlistentry><term>output :</term> <listitem><para> Structure containing information about the optimization. This version only contains number of iterations.</para></listitem></varlistentry> <varlistentry><term>lambda :</term> - <listitem><para> Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraints.</para></listitem></varlistentry> + <listitem><para> Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</para></listitem></varlistentry> </variablelist> </refsection> @@ -99,22 +99,16 @@ The routine calls Ipopt for solving the linear least square problem, Ipopt is a <title>Examples</title> <programlisting role="example"><![CDATA[ //A simple linear least square example -C = [0.9501 0.7620 0.6153 0.4057 -0.2311 0.4564 0.7919 0.9354 -0.6068 0.0185 0.9218 0.9169 -0.4859 0.8214 0.7382 0.4102 -0.8912 0.4447 0.1762 0.8936]; -d = [0.0578 -0.3528 -0.8131 -0.0098 -0.1388]; -A = [0.2027 0.2721 0.7467 0.4659 -0.1987 0.1988 0.4450 0.4186 -0.6037 0.0152 0.9318 0.8462]; -b = [0.5251 -0.2026 -0.6721]; +C = [ 2 0; +-1 1; +0 2] +d = [1 +0 +-1]; +A = [10 -2; +-2 10]; +b = [4 +-4]; [xopt,resnorm,residual,exitflag,output,lambda] = lsqlin(C,d,A,b) // Press ENTER to continue @@ -125,26 +119,26 @@ b = [0.5251 <title>Examples</title> <programlisting role="example"><![CDATA[ //A basic example for equality, inequality constraints and variable bounds -C = [0.9501 0.7620 0.6153 0.4057 -0.2311 0.4564 0.7919 0.9354 -0.6068 0.0185 0.9218 0.9169 -0.4859 0.8214 0.7382 0.4102 -0.8912 0.4447 0.1762 0.8936]; -d = [0.0578 -0.3528 -0.8131 -0.0098 -0.1388]; -A =[0.2027 0.2721 0.7467 0.4659 -0.1987 0.1988 0.4450 0.4186 -0.6037 0.0152 0.9318 0.8462]; -b =[0.5251 -0.2026 -0.6721]; -Aeq = [3 5 7 9]; -beq = 4; -lb = -0.1*ones(4,1); -ub = 2*ones(4,1); +C = [1 1 1; +1 1 0; +0 1 1; +1 0 0; +0 0 1] +d = [89; +67; +53; +35; +20;] +A = [3 2 1; +2 3 4; +1 2 3]; +b = [191 +209 +162]; +Aeq = [1 2 1]; +beq = 10; +lb = repmat(0.1,3,1); +ub = repmat(4,3,1); [xopt,resnorm,residual,exitflag,output,lambda] = lsqlin(C,d,A,b,Aeq,beq,lb,ub) ]]></programlisting> </refsection> diff --git a/help/en_US/lsqnonneg.xml b/help/en_US/lsqnonneg.xml index 662ba2a..5d78bbd 100644 --- a/help/en_US/lsqnonneg.xml +++ b/help/en_US/lsqnonneg.xml @@ -43,13 +43,13 @@ <varlistentry><term>resnorm :</term> <listitem><para> a double, objective value returned as the scalar value norm(C*x-d)^2.</para></listitem></varlistentry> <varlistentry><term>residual :</term> - <listitem><para> a vector of double, solution residuals returned as the vector C*x-d.</para></listitem></varlistentry> + <listitem><para> a vector of double, solution residuals returned as the vector d-C*x.</para></listitem></varlistentry> <varlistentry><term>exitflag :</term> - <listitem><para> Integer identifying the reason the algorithm terminated. It could be 0, 1 or 2 i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded.</para></listitem></varlistentry> + <listitem><para> A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</para></listitem></varlistentry> <varlistentry><term>output :</term> <listitem><para> Structure containing information about the optimization. This version only contains number of iterations.</para></listitem></varlistentry> <varlistentry><term>lambda :</term> - <listitem><para> Structure containing the Lagrange multipliers at the solution x. It contains lower and upper bound multiplier.</para></listitem></varlistentry> + <listitem><para> Structure containing the Lagrange multipliers at the solution xopt. It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</para></listitem></varlistentry> </variablelist> </refsection> @@ -78,16 +78,16 @@ The routine calls Ipopt for solving the nonnegative least-squares curve fitting <title>Examples</title> <programlisting role="example"><![CDATA[ // A basic lsqnonneg problem -C = [ -0.0372 0.2869 -0.6861 0.7071 -0.6233 0.6245 -0.6344 0.6170]; -d = [ -0.8587 -0.1781 -0.0747 -0.8405]; +C = [1 1 1; +1 1 0; +0 1 1; +1 0 0; +0 0 1] +d = [89; +67; +53; +35; +20;] [xopt,resnorm,residual,exitflag,output,lambda] = lsqnonneg(C,d) ]]></programlisting> </refsection> diff --git a/help/en_US/qpipopt.xml b/help/en_US/qpipopt.xml index 6dd578d..3ba2107 100644 --- a/help/en_US/qpipopt.xml +++ b/help/en_US/qpipopt.xml @@ -62,11 +62,11 @@ <varlistentry><term>fopt :</term> <listitem><para> a double, the function value at x.</para></listitem></varlistentry> <varlistentry><term>exitflag :</term> - <listitem><para> Integer identifying the reason the algorithm terminated. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the qpipopt macro.</para></listitem></varlistentry> + <listitem><para> A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</para></listitem></varlistentry> <varlistentry><term>output :</term> <listitem><para> Structure containing information about the optimization. This version only contains number of iterations</para></listitem></varlistentry> <varlistentry><term>lambda :</term> - <listitem><para> Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper and linear equality, inequality constraints.</para></listitem></varlistentry> + <listitem><para> Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</para></listitem></varlistentry> </variablelist> </refsection> @@ -74,7 +74,6 @@ <title>Description</title> <para> Search the minimum of a constrained linear quadratic optimization problem specified by : -find the minimum of f(x) such that </para> <para> <latex> @@ -96,6 +95,33 @@ The routine calls Ipopt for solving the quadratic problem, Ipopt is a library wr <refsection> <title>Examples</title> <programlisting role="example"><![CDATA[ +//Ref : example 14 : +//https://www.me.utexas.edu/~jensen/ORMM/supplements/methods/nlpmethod/S2_quadratic.pdf +// min. -8*x1*x1 -16*x2*x2 + x1 + 4*x2 +// such that +// x1 + x2 <= 5, +// x1 <= 3, +// x1 >= 0, +// x2 >= 0 +H = [2 0 +0 8]; +f = [-8; -16]; +A = [1 1;1 0]; +conUB = [5;3]; +conLB = [-%inf; -%inf]; +lb = [0; 0]; +ub = [%inf; %inf]; +nbVar = 2; +nbCon = 2; +[xopt,fopt,exitflag,output,lambda] = qpipopt(nbVar,nbCon,H,f,lb,ub,A,conLB,conUB) +//Press ENTER to continue + + ]]></programlisting> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ //Find x in R^6 such that: A= [1,-1,1,0,3,1; -1,0,-3,-4,5,6; @@ -113,31 +139,6 @@ nbCon = 5; x0 = repmat(0,nbVar,1); param = list("MaxIter", 300, "CpuTime", 100); [xopt,fopt,exitflag,output,lambda]=qpipopt(nbVar,nbCon,H,f,lb,ub,A,conLB,conUB,x0,param) -// Press ENTER to continue - - ]]></programlisting> -</refsection> - -<refsection> - <title>Examples</title> - <programlisting role="example"><![CDATA[ -//Find the value of x that minimize following function -// f(x) = 0.5*x1^2 + x2^2 - x1*x2 - 2*x1 - 6*x2 -// Subject to: -// x1 + x2 ≤ 2 -// –x1 + 2x2 ≤ 2 -// 2x1 + x2 ≤ 3 -// 0 ≤ x1, 0 ≤ x2. -H = [1 -1; -1 2]; -f = [-2; -6]; -A = [1 1; -1 2; 2 1]; -conUB = [2; 2; 3]; -conLB = [-%inf; -%inf; -%inf]; -lb = [0; 0]; -ub = [%inf; %inf]; -nbVar = 2; -nbCon = 3; -[xopt,fopt,exitflag,output,lambda] = qpipopt(nbVar,nbCon,H,f,lb,ub,A,conLB,conUB) ]]></programlisting> </refsection> diff --git a/help/en_US/qpipoptmat.xml b/help/en_US/qpipoptmat.xml index 8d0bc0c..1334603 100644 --- a/help/en_US/qpipoptmat.xml +++ b/help/en_US/qpipoptmat.xml @@ -62,12 +62,14 @@ <listitem><para> a vector of double, the computed solution of the optimization problem.</para></listitem></varlistentry> <varlistentry><term>fopt :</term> <listitem><para> a double, the function value at x.</para></listitem></varlistentry> + <varlistentry><term>residual :</term> + <listitem><para> a vector of double, solution residuals returned as the vector d-C*x.</para></listitem></varlistentry> <varlistentry><term>exitflag :</term> - <listitem><para> Integer identifying the reason the algorithm terminated.It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the qpipoptmat macro.</para></listitem></varlistentry> + <listitem><para> A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</para></listitem></varlistentry> <varlistentry><term>output :</term> <listitem><para> Structure containing information about the optimization. This version only contains number of iterations.</para></listitem></varlistentry> <varlistentry><term>lambda :</term> - <listitem><para> Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper and linear equality, inequality constraints.</para></listitem></varlistentry> + <listitem><para> Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</para></listitem></varlistentry> </variablelist> </refsection> @@ -75,7 +77,6 @@ <title>Description</title> <para> Search the minimum of a constrained linear quadratic optimization problem specified by : -find the minimum of f(x) such that </para> <para> <latex> @@ -98,17 +99,19 @@ The routine calls Ipopt for solving the quadratic problem, Ipopt is a library wr <refsection> <title>Examples</title> <programlisting role="example"><![CDATA[ -//Find the value of x that minimize following function -// f(x) = 0.5*x1^2 + x2^2 - x1*x2 - 2*x1 - 6*x2 -// Subject to: -// x1 + x2 ≤ 2 -// –x1 + 2x2 ≤ 2 -// 2x1 + x2 ≤ 3 -// 0 ≤ x1, 0 ≤ x2. -H = [1 -1; -1 2]; -f = [-2; -6]; -A = [1 1; -1 2; 2 1]; -b = [2; 2; 3]; +//Ref : example 14 : +//https://www.me.utexas.edu/~jensen/ORMM/supplements/methods/nlpmethod/S2_quadratic.pdf +// min. -8*x1*x1 -16*x2*x2 + x1 + 4*x2 +// such that +// x1 + x2 <= 5, +// x1 <= 3, +// x1 >= 0, +// x2 >= 0 +H = [2 0 +0 8]; +f = [-8; -16]; +A = [1 1;1 0]; +b = [5;3]; lb = [0; 0]; ub = [%inf; %inf]; [xopt,fopt,exitflag,output,lambda] = qpipoptmat(H,f,A,b,[],[],lb,ub) @@ -134,7 +137,7 @@ x0 = repmat(0,6,1); param = list("MaxIter", 300, "CpuTime", 100); //and minimize 0.5*x'*H*x + f'*x with f=[1; 2; 3; 4; 5; 6]; H=eye(6,6); -[xopt,fopt,exitflag,output,lambda]=qpipoptmat(H,f,A,b,Aeq,beq,lb,ub,[],param) +[xopt,fopt,exitflag,output,lambda]=qpipoptmat(H,f,A,b,Aeq,beq,lb,ub,x0,param) ]]></programlisting> </refsection> diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS Binary files differindex 8ebf21b..d3146bf 100644 --- a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB Binary files differindex 728f68c..f0a1fcb 100644 --- a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS b/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS Binary files differindex 9468d7f..8a63187 100644 --- a/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS b/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS Binary files differindex d5dee46..423d132 100644 --- a/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA b/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA index e2b33d1..6df2edb 100644 --- a/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA @@ -1,2 +1,2 @@ JavaSearch 1.0 -TMAP bs=2048 rt=1 fl=-1 id1=1446 id2=1 +TMAP bs=2048 rt=1 fl=-1 id1=1249 id2=1 diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP b/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP Binary files differindex 35dc462..6104335 100644 --- a/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP diff --git a/help/en_US/scilab_en_US_help/lsqlin.html b/help/en_US/scilab_en_US_help/lsqlin.html index aef773d..e9253c5 100644 --- a/help/en_US/scilab_en_US_help/lsqlin.html +++ b/help/en_US/scilab_en_US_help/lsqlin.html @@ -70,13 +70,13 @@ <dt><span class="term">resnorm :</span> <dd><p class="para">a double, objective value returned as the scalar value norm(C*x-d)^2.</p></dd></dt> <dt><span class="term">residual :</span> - <dd><p class="para">a vector of double, solution residuals returned as the vector C*x-d.</p></dd></dt> + <dd><p class="para">a vector of double, solution residuals returned as the vector d-C*x.</p></dd></dt> <dt><span class="term">exitflag :</span> - <dd><p class="para">Integer identifying the reason the algorithm terminated. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</p></dd></dt> + <dd><p class="para">A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</p></dd></dt> <dt><span class="term">output :</span> <dd><p class="para">Structure containing information about the optimization. This version only contains number of iterations.</p></dd></dt> <dt><span class="term">lambda :</span> - <dd><p class="para">Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraints.</p></dd></dt></dl></div> + <dd><p class="para">Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</p></dd></dt></dl></div> <div class="refsection"><h3 class="title">Description</h3> <p class="para">Search the minimum of a constrained linear least square problem specified by :</p> @@ -86,47 +86,41 @@ <div class="refsection"><h3 class="title">Examples</h3> <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//A simple linear least square example</span> -<span class="scilabid">C</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.9501</span> <span class="scilabnumber">0.7620</span> <span class="scilabnumber">0.6153</span> <span class="scilabnumber">0.4057</span> -<span class="scilabnumber">0.2311</span> <span class="scilabnumber">0.4564</span> <span class="scilabnumber">0.7919</span> <span class="scilabnumber">0.9354</span> -<span class="scilabnumber">0.6068</span> <span class="scilabnumber">0.0185</span> <span class="scilabnumber">0.9218</span> <span class="scilabnumber">0.9169</span> -<span class="scilabnumber">0.4859</span> <span class="scilabnumber">0.8214</span> <span class="scilabnumber">0.7382</span> <span class="scilabnumber">0.4102</span> -<span class="scilabnumber">0.8912</span> <span class="scilabnumber">0.4447</span> <span class="scilabnumber">0.1762</span> <span class="scilabnumber">0.8936</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.0578</span> -<span class="scilabnumber">0.3528</span> -<span class="scilabnumber">0.8131</span> -<span class="scilabnumber">0.0098</span> -<span class="scilabnumber">0.1388</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.2027</span> <span class="scilabnumber">0.2721</span> <span class="scilabnumber">0.7467</span> <span class="scilabnumber">0.4659</span> -<span class="scilabnumber">0.1987</span> <span class="scilabnumber">0.1988</span> <span class="scilabnumber">0.4450</span> <span class="scilabnumber">0.4186</span> -<span class="scilabnumber">0.6037</span> <span class="scilabnumber">0.0152</span> <span class="scilabnumber">0.9318</span> <span class="scilabnumber">0.8462</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.5251</span> -<span class="scilabnumber">0.2026</span> -<span class="scilabnumber">0.6721</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">C</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabnumber">2</span> <span class="scilabnumber">0</span><span class="scilabdefault">;</span> +<span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span> +<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> +<span class="scilabnumber">0</span> +<span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">10</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> +<span class="scilaboperator">-</span><span class="scilabnumber">2</span> <span class="scilabnumber">10</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">4</span> +<span class="scilaboperator">-</span><span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">resnorm</span><span class="scilabdefault">,</span><span class="scilabid">residual</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">lsqlin</span><span class="scilabopenclose">(</span><span class="scilabid">C</span><span class="scilabdefault">,</span><span class="scilabid">d</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">)</span> <span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> <div class="refsection"><h3 class="title">Examples</h3> <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//A basic example for equality, inequality constraints and variable bounds</span> -<span class="scilabid">C</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.9501</span> <span class="scilabnumber">0.7620</span> <span class="scilabnumber">0.6153</span> <span class="scilabnumber">0.4057</span> -<span class="scilabnumber">0.2311</span> <span class="scilabnumber">0.4564</span> <span class="scilabnumber">0.7919</span> <span class="scilabnumber">0.9354</span> -<span class="scilabnumber">0.6068</span> <span class="scilabnumber">0.0185</span> <span class="scilabnumber">0.9218</span> <span class="scilabnumber">0.9169</span> -<span class="scilabnumber">0.4859</span> <span class="scilabnumber">0.8214</span> <span class="scilabnumber">0.7382</span> <span class="scilabnumber">0.4102</span> -<span class="scilabnumber">0.8912</span> <span class="scilabnumber">0.4447</span> <span class="scilabnumber">0.1762</span> <span class="scilabnumber">0.8936</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.0578</span> -<span class="scilabnumber">0.3528</span> -<span class="scilabnumber">0.8131</span> -<span class="scilabnumber">0.0098</span> -<span class="scilabnumber">0.1388</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">A</span> <span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.2027</span> <span class="scilabnumber">0.2721</span> <span class="scilabnumber">0.7467</span> <span class="scilabnumber">0.4659</span> -<span class="scilabnumber">0.1987</span> <span class="scilabnumber">0.1988</span> <span class="scilabnumber">0.4450</span> <span class="scilabnumber">0.4186</span> -<span class="scilabnumber">0.6037</span> <span class="scilabnumber">0.0152</span> <span class="scilabnumber">0.9318</span> <span class="scilabnumber">0.8462</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">b</span> <span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.5251</span> -<span class="scilabnumber">0.2026</span> -<span class="scilabnumber">0.6721</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">Aeq</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">3</span> <span class="scilabnumber">5</span> <span class="scilabnumber">7</span> <span class="scilabnumber">9</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">beq</span> <span class="scilaboperator">=</span> <span class="scilabnumber">4</span><span class="scilabdefault">;</span> -<span class="scilabid">lb</span> <span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.1</span><span class="scilaboperator">*</span><a class="scilabcommand" href="scilab://ones">ones</a><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> -<span class="scilabid">ub</span> <span class="scilaboperator">=</span> <span class="scilabnumber">2</span><span class="scilaboperator">*</span><a class="scilabcommand" href="scilab://ones">ones</a><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">C</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span><span class="scilabdefault">;</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span><span class="scilabdefault">;</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span> +<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">89</span><span class="scilabdefault">;</span> +<span class="scilabnumber">67</span><span class="scilabdefault">;</span> +<span class="scilabnumber">53</span><span class="scilabdefault">;</span> +<span class="scilabnumber">35</span><span class="scilabdefault">;</span> +<span class="scilabnumber">20</span><span class="scilabdefault">;</span><span class="scilabopenclose">]</span> +<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">3</span> <span class="scilabnumber">2</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabnumber">2</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span><span class="scilabdefault">;</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">191</span> +<span class="scilabnumber">209</span> +<span class="scilabnumber">162</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">Aeq</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">beq</span> <span class="scilaboperator">=</span> <span class="scilabnumber">10</span><span class="scilabdefault">;</span> +<span class="scilabid">lb</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">0.1</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">ub</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> <span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">resnorm</span><span class="scilabdefault">,</span><span class="scilabid">residual</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">lsqlin</span><span class="scilabopenclose">(</span><span class="scilabid">C</span><span class="scilabdefault">,</span><span class="scilabid">d</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> <div class="refsection"><h3 class="title">Authors</h3> diff --git a/help/en_US/scilab_en_US_help/lsqnonneg.html b/help/en_US/scilab_en_US_help/lsqnonneg.html index e9a9110..7211c40 100644 --- a/help/en_US/scilab_en_US_help/lsqnonneg.html +++ b/help/en_US/scilab_en_US_help/lsqnonneg.html @@ -51,13 +51,13 @@ <dt><span class="term">resnorm :</span> <dd><p class="para">a double, objective value returned as the scalar value norm(C*x-d)^2.</p></dd></dt> <dt><span class="term">residual :</span> - <dd><p class="para">a vector of double, solution residuals returned as the vector C*x-d.</p></dd></dt> + <dd><p class="para">a vector of double, solution residuals returned as the vector d-C*x.</p></dd></dt> <dt><span class="term">exitflag :</span> - <dd><p class="para">Integer identifying the reason the algorithm terminated. It could be 0, 1 or 2 i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded.</p></dd></dt> + <dd><p class="para">A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</p></dd></dt> <dt><span class="term">output :</span> <dd><p class="para">Structure containing information about the optimization. This version only contains number of iterations.</p></dd></dt> <dt><span class="term">lambda :</span> - <dd><p class="para">Structure containing the Lagrange multipliers at the solution x. It contains lower and upper bound multiplier.</p></dd></dt></dl></div> + <dd><p class="para">Structure containing the Lagrange multipliers at the solution xopt. It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</p></dd></dt></dl></div> <div class="refsection"><h3 class="title">Description</h3> <p class="para">Solves nonnegative least-squares curve fitting problems specified by :</p> @@ -67,16 +67,16 @@ <div class="refsection"><h3 class="title">Examples</h3> <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">// A basic lsqnonneg problem</span> -<span class="scilabid">C</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> -<span class="scilabnumber">0.0372</span> <span class="scilabnumber">0.2869</span> -<span class="scilabnumber">0.6861</span> <span class="scilabnumber">0.7071</span> -<span class="scilabnumber">0.6233</span> <span class="scilabnumber">0.6245</span> -<span class="scilabnumber">0.6344</span> <span class="scilabnumber">0.6170</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> -<span class="scilabnumber">0.8587</span> -<span class="scilabnumber">0.1781</span> -<span class="scilabnumber">0.0747</span> -<span class="scilabnumber">0.8405</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">C</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span><span class="scilabdefault">;</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span><span class="scilabdefault">;</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span> +<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">89</span><span class="scilabdefault">;</span> +<span class="scilabnumber">67</span><span class="scilabdefault">;</span> +<span class="scilabnumber">53</span><span class="scilabdefault">;</span> +<span class="scilabnumber">35</span><span class="scilabdefault">;</span> +<span class="scilabnumber">20</span><span class="scilabdefault">;</span><span class="scilabopenclose">]</span> <span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">resnorm</span><span class="scilabdefault">,</span><span class="scilabid">residual</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">lsqnonneg</span><span class="scilabopenclose">(</span><span class="scilabid">C</span><span class="scilabdefault">,</span><span class="scilabid">d</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> <div class="refsection"><h3 class="title">Authors</h3> diff --git a/help/en_US/scilab_en_US_help/qpipopt.html b/help/en_US/scilab_en_US_help/qpipopt.html index 349bbc4..31f389f 100644 --- a/help/en_US/scilab_en_US_help/qpipopt.html +++ b/help/en_US/scilab_en_US_help/qpipopt.html @@ -70,20 +70,41 @@ <dt><span class="term">fopt :</span> <dd><p class="para">a double, the function value at x.</p></dd></dt> <dt><span class="term">exitflag :</span> - <dd><p class="para">Integer identifying the reason the algorithm terminated. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the qpipopt macro.</p></dd></dt> + <dd><p class="para">A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</p></dd></dt> <dt><span class="term">output :</span> <dd><p class="para">Structure containing information about the optimization. This version only contains number of iterations</p></dd></dt> <dt><span class="term">lambda :</span> - <dd><p class="para">Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper and linear equality, inequality constraints.</p></dd></dt></dl></div> + <dd><p class="para">Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</p></dd></dt></dl></div> <div class="refsection"><h3 class="title">Description</h3> - <p class="para">Search the minimum of a constrained linear quadratic optimization problem specified by : -find the minimum of f(x) such that</p> + <p class="para">Search the minimum of a constrained linear quadratic optimization problem specified by :</p> <p class="para"><span><img src='./_LaTeX_qpipopt.xml_1.png' style='position:relative;top:31px;width:292px;height:70px'/></span></p> <p class="para">The routine calls Ipopt for solving the quadratic problem, Ipopt is a library written in C++.</p> <p class="para"></p></div> <div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Ref : example 14 :</span> +<span class="scilabcomment">//https://www.me.utexas.edu/~jensen/ORMM/supplements/methods/nlpmethod/S2_quadratic.pdf</span> +<span class="scilabcomment">// min. -8*x1*x1 -16*x2*x2 + x1 + 4*x2</span> +<span class="scilabcomment">// such that</span> +<span class="scilabcomment">// x1 + x2 </span><span class="scilabcomment"><</span><span class="scilabcomment">= 5,</span> +<span class="scilabcomment">// x1 </span><span class="scilabcomment"><</span><span class="scilabcomment">= 3,</span> +<span class="scilabcomment">// x1 </span><span class="scilabcomment">></span><span class="scilabcomment">= 0,</span> +<span class="scilabcomment">// x2 </span><span class="scilabcomment">></span><span class="scilabcomment">= 0</span> +<span class="scilabid">H</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">0</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">8</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">f</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">8</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">16</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">conUB</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">5</span><span class="scilabdefault">;</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">conLB</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabconstants">%inf</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">lb</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">ub</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabconstants">%inf</span><span class="scilabdefault">;</span> <span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">nbVar</span> <span class="scilaboperator">=</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> +<span class="scilabid">nbCon</span> <span class="scilaboperator">=</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> +<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">qpipopt</span><span class="scilabopenclose">(</span><span class="scilabid">nbVar</span><span class="scilabdefault">,</span><span class="scilabid">nbCon</span><span class="scilabdefault">,</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">conLB</span><span class="scilabdefault">,</span><span class="scilabid">conUB</span><span class="scilabopenclose">)</span> +<span class="scilabcomment">//Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Examples</h3> <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R^6 such that:</span> <span class="scilabid">A</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabdefault">;</span> @@ -100,27 +121,7 @@ find the minimum of f(x) such that</p> <span class="scilabid">nbCon</span> <span class="scilaboperator">=</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span> <span class="scilabid">x0</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabid">nbVar</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> <span class="scilabid">param</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">"</span><span class="scilabstring">MaxIter</span><span class="scilabstring">"</span><span class="scilabdefault">,</span> <span class="scilabnumber">300</span><span class="scilabdefault">,</span> <span class="scilabstring">"</span><span class="scilabstring">CpuTime</span><span class="scilabstring">"</span><span class="scilabdefault">,</span> <span class="scilabnumber">100</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> -<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">qpipopt</span><span class="scilabopenclose">(</span><span class="scilabid">nbVar</span><span class="scilabdefault">,</span><span class="scilabid">nbCon</span><span class="scilabdefault">,</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">conLB</span><span class="scilabdefault">,</span><span class="scilabid">conUB</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">param</span><span class="scilabopenclose">)</span> -<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> - -<div class="refsection"><h3 class="title">Examples</h3> - <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find the value of x that minimize following function</span> -<span class="scilabcomment">// f(x) = 0.5*x1^2 + x2^2 - x1*x2 - 2*x1 - 6*x2</span> -<span class="scilabcomment">// Subject to:</span> -<span class="scilabcomment">// x1 + x2 ≤ 2</span> -<span class="scilabcomment">// –x1 + 2x2 ≤ 2</span> -<span class="scilabcomment">// 2x1 + x2 ≤ 3</span> -<span class="scilabcomment">// 0 ≤ x1, 0 ≤ x2.</span> -<span class="scilabid">H</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">f</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">conUB</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">conLB</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabconstants">%inf</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabconstants">%inf</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">lb</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">ub</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabconstants">%inf</span><span class="scilabdefault">;</span> <span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">nbVar</span> <span class="scilaboperator">=</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> -<span class="scilabid">nbCon</span> <span class="scilaboperator">=</span> <span class="scilabnumber">3</span><span class="scilabdefault">;</span> -<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">qpipopt</span><span class="scilabopenclose">(</span><span class="scilabid">nbVar</span><span class="scilabdefault">,</span><span class="scilabid">nbCon</span><span class="scilabdefault">,</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">conLB</span><span class="scilabdefault">,</span><span class="scilabid">conUB</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> +<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">qpipopt</span><span class="scilabopenclose">(</span><span class="scilabid">nbVar</span><span class="scilabdefault">,</span><span class="scilabid">nbCon</span><span class="scilabdefault">,</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">conLB</span><span class="scilabdefault">,</span><span class="scilabid">conUB</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">param</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> <div class="refsection"><h3 class="title">Authors</h3> <ul class="itemizedlist"><li class="member">Keyur Joshi, Saikiran, Iswarya, Harpreet Singh</li></ul></div> diff --git a/help/en_US/scilab_en_US_help/qpipoptmat.html b/help/en_US/scilab_en_US_help/qpipoptmat.html index 73c7298..6c195ea 100644 --- a/help/en_US/scilab_en_US_help/qpipoptmat.html +++ b/help/en_US/scilab_en_US_help/qpipoptmat.html @@ -70,32 +70,35 @@ <dd><p class="para">a vector of double, the computed solution of the optimization problem.</p></dd></dt> <dt><span class="term">fopt :</span> <dd><p class="para">a double, the function value at x.</p></dd></dt> + <dt><span class="term">residual :</span> + <dd><p class="para">a vector of double, solution residuals returned as the vector d-C*x.</p></dd></dt> <dt><span class="term">exitflag :</span> - <dd><p class="para">Integer identifying the reason the algorithm terminated.It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the qpipoptmat macro.</p></dd></dt> + <dd><p class="para">A flag showing returned exit flag from Ipopt. It could be 0, 1 or 2 etc. i.e. Optimal, Maximum Number of Iterations Exceeded, CPU time exceeded. Other flags one can see in the lsqlin macro.</p></dd></dt> <dt><span class="term">output :</span> <dd><p class="para">Structure containing information about the optimization. This version only contains number of iterations.</p></dd></dt> <dt><span class="term">lambda :</span> - <dd><p class="para">Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper and linear equality, inequality constraints.</p></dd></dt></dl></div> + <dd><p class="para">Structure containing the Lagrange multipliers at the solution x (separated by constraint type).It contains lower, upper bound multiplier and linear equality, inequality constraint multiplier.</p></dd></dt></dl></div> <div class="refsection"><h3 class="title">Description</h3> - <p class="para">Search the minimum of a constrained linear quadratic optimization problem specified by : -find the minimum of f(x) such that</p> + <p class="para">Search the minimum of a constrained linear quadratic optimization problem specified by :</p> <p class="para"><span><img src='./_LaTeX_qpipoptmat.xml_1.png' style='position:relative;top:41px;width:277px;height:90px'/></span></p> <p class="para">The routine calls Ipopt for solving the quadratic problem, Ipopt is a library written in C++.</p> <p class="para"></p></div> <div class="refsection"><h3 class="title">Examples</h3> - <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find the value of x that minimize following function</span> -<span class="scilabcomment">// f(x) = 0.5*x1^2 + x2^2 - x1*x2 - 2*x1 - 6*x2</span> -<span class="scilabcomment">// Subject to:</span> -<span class="scilabcomment">// x1 + x2 ≤ 2</span> -<span class="scilabcomment">// –x1 + 2x2 ≤ 2</span> -<span class="scilabcomment">// 2x1 + x2 ≤ 3</span> -<span class="scilabcomment">// 0 ≤ x1, 0 ≤ x2.</span> -<span class="scilabid">H</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">f</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Ref : example 14 :</span> +<span class="scilabcomment">//https://www.me.utexas.edu/~jensen/ORMM/supplements/methods/nlpmethod/S2_quadratic.pdf</span> +<span class="scilabcomment">// min. -8*x1*x1 -16*x2*x2 + x1 + 4*x2</span> +<span class="scilabcomment">// such that</span> +<span class="scilabcomment">// x1 + x2 </span><span class="scilabcomment"><</span><span class="scilabcomment">= 5,</span> +<span class="scilabcomment">// x1 </span><span class="scilabcomment"><</span><span class="scilabcomment">= 3,</span> +<span class="scilabcomment">// x1 </span><span class="scilabcomment">></span><span class="scilabcomment">= 0,</span> +<span class="scilabcomment">// x2 </span><span class="scilabcomment">></span><span class="scilabcomment">= 0</span> +<span class="scilabid">H</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">0</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">8</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">f</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">8</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">16</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">5</span><span class="scilabdefault">;</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabid">lb</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabid">ub</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabconstants">%inf</span><span class="scilabdefault">;</span> <span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">qpipoptmat</span><span class="scilabopenclose">(</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabopenclose">)</span> @@ -116,7 +119,7 @@ find the minimum of f(x) such that</p> <span class="scilabid">param</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">"</span><span class="scilabstring">MaxIter</span><span class="scilabstring">"</span><span class="scilabdefault">,</span> <span class="scilabnumber">300</span><span class="scilabdefault">,</span> <span class="scilabstring">"</span><span class="scilabstring">CpuTime</span><span class="scilabstring">"</span><span class="scilabdefault">,</span> <span class="scilabnumber">100</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> <span class="scilabcomment">//and minimize 0.5*x</span><span class="scilabcomment">'</span><span class="scilabcomment">*H*x + f</span><span class="scilabcomment">'</span><span class="scilabcomment">*x with</span> <span class="scilabid">f</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilabdefault">;</span> <span class="scilabnumber">4</span><span class="scilabdefault">;</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span> <span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabid">H</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://eye">eye</a><span class="scilabopenclose">(</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> -<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">qpipoptmat</span><span class="scilabopenclose">(</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabid">param</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> +<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">qpipoptmat</span><span class="scilabopenclose">(</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">param</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> <div class="refsection"><h3 class="title">Authors</h3> <ul class="itemizedlist"><li class="member">Keyur Joshi, Saikiran, Iswarya, Harpreet Singh</li></ul></div> diff --git a/help/en_US/scilab_en_US_help/symphony.html b/help/en_US/scilab_en_US_help/symphony.html index b81bbb0..e374a30 100644 --- a/help/en_US/scilab_en_US_help/symphony.html +++ b/help/en_US/scilab_en_US_help/symphony.html @@ -70,19 +70,18 @@ <dt><span class="term">fopt :</span> <dd><p class="para">a double, the function value at x.</p></dd></dt> <dt><span class="term">status :</span> - <dd><p class="para">status flag from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</p></dd></dt> + <dd><p class="para">status flag returned from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</p></dd></dt> <dt><span class="term">output :</span> <dd><p class="para">The output data structure contains detailed information about the optimization process. This version only contains number of iterations</p></dd></dt></dl></div> <div class="refsection"><h3 class="title">Description</h3> - <p class="para">Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by : -find the minimum or maximum of f(x) such that</p> + <p class="para">Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by :</p> <p class="para"><span><img src='./_LaTeX_symphony.xml_1.png' style='position:relative;top:41px;width:292px;height:90px'/></span></p> <p class="para">The routine calls SYMPHONY written in C by gateway files for the actual computation.</p> <p class="para"></p></div> <div class="refsection"><h3 class="title">Examples</h3> - <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//A basic case :</span> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. </span><span class="scilabcomment">"</span><span class="scilabcomment">An application of mixed integer programming in a Swedish steel mill.</span><span class="scilabcomment">"</span><span class="scilabcomment"> Interfaces 7, no. 2 (1977): 39-43.</span> <span class="scilabcomment">// Objective function</span> <span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">350</span><span class="scilaboperator">*</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">330</span><span class="scilaboperator">*</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">310</span><span class="scilaboperator">*</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">280</span><span class="scilaboperator">*</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">500</span><span class="scilabdefault">,</span><span class="scilabnumber">450</span><span class="scilabdefault">,</span><span class="scilabnumber">400</span><span class="scilabdefault">,</span><span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilaboperator">'</span><span class="scilabdefault">;</span> <span class="scilabcomment">// Lower Bound of variable</span> diff --git a/help/en_US/scilab_en_US_help/symphonymat.html b/help/en_US/scilab_en_US_help/symphonymat.html index fc60daf..203f2d4 100644 --- a/help/en_US/scilab_en_US_help/symphonymat.html +++ b/help/en_US/scilab_en_US_help/symphonymat.html @@ -67,19 +67,19 @@ <dt><span class="term">fopt :</span> <dd><p class="para">a double, the function value at x</p></dd></dt> <dt><span class="term">status :</span> - <dd><p class="para">status flag from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</p></dd></dt> + <dd><p class="para">status flag returned from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</p></dd></dt> <dt><span class="term">output :</span> <dd><p class="para">The output data structure contains detailed information about the optimization process. This version only contains number of iterations.</p></dd></dt></dl></div> <div class="refsection"><h3 class="title">Description</h3> - <p class="para">Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by : -find the minimum or maximum of C'⋅x such that</p> + <p class="para">Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by :</p> <p class="para"><span><img src='./_LaTeX_symphonymat.xml_1.png' style='position:relative;top:51px;width:212px;height:110px'/></span></p> <p class="para">The routine calls SYMPHONY written in C by gateway files for the actual computation.</p> <p class="para"></p></div> <div class="refsection"><h3 class="title">Examples</h3> <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">// Objective function</span> +<span class="scilabcomment">// Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. </span><span class="scilabcomment">"</span><span class="scilabcomment">An application of mixed integer programming in a Swedish steel mill.</span><span class="scilabcomment">"</span><span class="scilabcomment"> Interfaces 7, no. 2 (1977): 39-43.</span> <span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">350</span><span class="scilaboperator">*</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">330</span><span class="scilaboperator">*</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">310</span><span class="scilaboperator">*</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">280</span><span class="scilaboperator">*</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">500</span><span class="scilabdefault">,</span><span class="scilabnumber">450</span><span class="scilabdefault">,</span><span class="scilabnumber">400</span><span class="scilabdefault">,</span><span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilaboperator">'</span><span class="scilabdefault">;</span> <span class="scilabcomment">// Lower Bound of variable</span> <span class="scilabid">lb</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">8</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> diff --git a/help/en_US/symphony.xml b/help/en_US/symphony.xml index c0caa8e..da156ce 100644 --- a/help/en_US/symphony.xml +++ b/help/en_US/symphony.xml @@ -62,7 +62,7 @@ <varlistentry><term>fopt :</term> <listitem><para> a double, the function value at x.</para></listitem></varlistentry> <varlistentry><term>status :</term> - <listitem><para> status flag from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</para></listitem></varlistentry> + <listitem><para> status flag returned from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</para></listitem></varlistentry> <varlistentry><term>output :</term> <listitem><para> The output data structure contains detailed information about the optimization process. This version only contains number of iterations</para></listitem></varlistentry> </variablelist> @@ -72,7 +72,6 @@ <title>Description</title> <para> Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by : -find the minimum or maximum of f(x) such that </para> <para> <latex> @@ -95,7 +94,7 @@ The routine calls SYMPHONY written in C by gateway files for the actual computat <refsection> <title>Examples</title> <programlisting role="example"><![CDATA[ -//A basic case : +//Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. "An application of mixed integer programming in a Swedish steel mill." Interfaces 7, no. 2 (1977): 39-43. // Objective function c = [350*5,330*3,310*4,280*6,500,450,400,100]'; // Lower Bound of variable diff --git a/help/en_US/symphonymat.xml b/help/en_US/symphonymat.xml index cf95807..68ec072 100644 --- a/help/en_US/symphonymat.xml +++ b/help/en_US/symphonymat.xml @@ -59,7 +59,7 @@ <varlistentry><term>fopt :</term> <listitem><para> a double, the function value at x</para></listitem></varlistentry> <varlistentry><term>status :</term> - <listitem><para> status flag from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</para></listitem></varlistentry> + <listitem><para> status flag returned from symphony. 227 is optimal, 228 is Time limit exceeded, 230 is iteration limit exceeded.</para></listitem></varlistentry> <varlistentry><term>output :</term> <listitem><para> The output data structure contains detailed information about the optimization process. This version only contains number of iterations.</para></listitem></varlistentry> </variablelist> @@ -69,7 +69,6 @@ <title>Description</title> <para> Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by : -find the minimum or maximum of C'⋅x such that </para> <para> <latex> @@ -94,6 +93,7 @@ The routine calls SYMPHONY written in C by gateway files for the actual computat <title>Examples</title> <programlisting role="example"><![CDATA[ // Objective function +// Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. "An application of mixed integer programming in a Swedish steel mill." Interfaces 7, no. 2 (1977): 39-43. c = [350*5,330*3,310*4,280*6,500,450,400,100]'; // Lower Bound of variable lb = repmat(0,1,8); |