diff options
Diffstat (limited to 'newstructure/help/en_US/scilab_en_US_help/intfminbnd.html')
-rw-r--r-- | newstructure/help/en_US/scilab_en_US_help/intfminbnd.html | 170 |
1 files changed, 0 insertions, 170 deletions
diff --git a/newstructure/help/en_US/scilab_en_US_help/intfminbnd.html b/newstructure/help/en_US/scilab_en_US_help/intfminbnd.html deleted file mode 100644 index c9dd359..0000000 --- a/newstructure/help/en_US/scilab_en_US_help/intfminbnd.html +++ /dev/null @@ -1,170 +0,0 @@ -<html><head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> - <title>intfminbnd</title> - <style type="text/css" media="all"> - @import url("scilab_code.css"); - @import url("xml_code.css"); - @import url("c_code.css"); - @import url("style.css"); - </style> - </head> - <body> - <div class="manualnavbar"> - <table width="100%"><tr> - <td width="30%"> - <span class="previous"><a href="cbcintlinprog.html"><< cbcintlinprog</a></span> - - </td> - <td width="40%" class="center"> - <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span> - - </td> - <td width="30%" class="next"> - <span class="next"><a href="intfmincon.html">intfmincon >></a></span> - - </td> - </tr></table> - <hr /> - </div> - - - - <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> >> <a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a> > intfminbnd</span> - - <br /><br /> - <div class="refnamediv"><h1 class="refname">intfminbnd</h1> - <p class="refpurpose">Solves a multi-variable optimization problem on a bounded interval</p></div> - - -<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> - <div class="synopsis"><pre><span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminbnd</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">x1</span><span class="default">,</span><span class="default">x2</span><span class="default">)</span> -<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminbnd</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">x1</span><span class="default">,</span><span class="default">x2</span><span class="default">,</span><span class="default">options</span><span class="default">)</span> -<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">] = </span><span class="functionid">intfminbnd</span><span class="default">(.....)</span> -<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">]= </span><span class="functionid">intfminbnd</span><span class="default">(.....)</span> -<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">output</span><span class="default">]=</span><span class="functionid">intfminbnd</span><span class="default">(.....)</span> -<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">gradient</span><span class="default">,</span><span class="default">hessian</span><span class="default">]=</span><span class="functionid">intfminbnd</span><span class="default">(.....)</span></pre></div></div> - -<div class="refsection"><h3 class="title">Parameters</h3> - <dl><dt><span class="term">f :</span> - <dd><p class="para">a function, representing the objective function of the problem</p></dd></dt> - <dt><span class="term">x1 :</span> - <dd><p class="para">a vector, containing the lower bound of the variables.</p></dd></dt> - <dt><span class="term">x2 :</span> - <dd><p class="para">a vector, containing the upper bound of the variables.</p></dd></dt> - <dt><span class="term">intcon :</span> - <dd><p class="para">a vector of integers, represents which variables are constrained to be integers</p></dd></dt> - <dt><span class="term">options :</span> - <dd><p class="para">a list, containing the option for user to specify. See below for details.</p></dd></dt> - <dt><span class="term">xopt :</span> - <dd><p class="para">a vector of doubles, containing the the computed solution of the optimization problem.</p></dd></dt> - <dt><span class="term">fopt :</span> - <dd><p class="para">a scalar of double, containing the the function value at x.</p></dd></dt> - <dt><span class="term">exitflag :</span> - <dd><p class="para">a scalar of integer, containing the flag which denotes the reason for termination of algorithm. See below for details.</p></dd></dt> - <dt><span class="term">gradient :</span> - <dd><p class="para">a vector of doubles, containing the Objective's gradient of the solution.</p></dd></dt> - <dt><span class="term">hessian :</span> - <dd><p class="para">a matrix of doubles, containing the Objective's hessian of the solution.</p></dd></dt></dl></div> - -<div class="refsection"><h3 class="title">Description</h3> - <p class="para">Search the minimum of a multi-variable function on bounded interval specified by : -Find the minimum of f(x) such that</p> - <p class="para"><span><img src='./_LaTeX_intfminbnd.xml_1.png' style='position:relative;top:20px;width:219px;height:48px'/></span></p> - <p class="para">The routine calls Bonmin for solving the Bounded Optimization problem, Bonmin is a library written in C++.</p> - <p class="para">The options allows the user to set various parameters of the Optimization problem. -It should be defined as type "list" and contains the following fields. -<ul class="itemizedlist"><li>Syntax : options= list("IntegerTolerance", [---], "MaxNodes",[---], "MaxIter", [---], "AllowableGap",[---] "CpuTime", [---],"gradobj", "off", "hessian", "off" );</li> -<li>IntegerTolerance : a Scalar, a number with that value of an integer is considered integer..</li> -<li>MaxNodes : a Scalar, containing the Maximum Number of Nodes that the solver should search.</li> -<li>CpuTime : a Scalar, containing the Maximum amount of CPU Time that the solver should take.</li> -<li>AllowableGap : a Scalar, to stop the tree search when the gap between the objective value of the best known solution is reached.</li> -<li>MaxIter : a Scalar, containing the Maximum Number of Iteration that the solver should take.</li> -<li>gradobj : a string, to turn on or off the user supplied objective gradient.</li> -<li>hessian : a Scalar, to turn on or off the user supplied objective hessian.</li> -<li>Default Values : options = list('integertolerance',1d-06,'maxnodes',2147483647,'cputime',1d10,'allowablegap',0,'maxiter',2147483647,'gradobj',"off",'hessian',"off")</li></ul></p> - <p class="para">The exitflag allows to know the status of the optimization which is given back by Ipopt. -<ul class="itemizedlist"><li>exitflag=0 : Optimal Solution Found</li> -<li>exitflag=1 : Maximum Number of Iterations Exceeded. Output may not be optimal.</li> -<li>exitflag=2 : Maximum CPU Time exceeded. Output may not be optimal.</li> -<li>exitflag=3 : Stop at Tiny Step.</li> -<li>exitflag=4 : Solved To Acceptable Level.</li> -<li>exitflag=5 : Converged to a point of local infeasibility.</li></ul></p> - <p class="para">For more details on exitflag see the Bonmin documentation, go to http://www.coin-or.org/Bonmin</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 x in R^6 such that it minimizes:</span> -<span class="scilabcomment">//f(x)= sin(x1) + sin(x2) + sin(x3) + sin(x4) + sin(x5) + sin(x6)</span> -<span class="scilabcomment">//-2 </span><span class="scilabcomment"><</span><span class="scilabcomment">= x1,x2,x3,x4,x5,x6 </span><span class="scilabcomment"><</span><span class="scilabcomment">= 2</span> -<span class="scilabcomment">//Objective function to be minimised</span> -<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span> -<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabnumber">0</span> -<span class="scilabskeyword">for</span> <span class="scilabid">i</span> <span class="scilaboperator">=</span><span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabnumber">6</span> -<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabinputoutputargs">y</span><span class="scilaboperator">+</span><a class="scilabcommand" href="scilab://sin">sin</a><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabid">i</span><span class="scilabopenclose">)</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> -<span class="scilabskeyword">end</span> -<span class="scilabfkeyword">endfunction</span> -<span class="scilabcomment">//Variable bounds</span> -<span class="scilabid">x1</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">2</span><span class="scilabdefault">,</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="scilabdefault">,</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="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">x2</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">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span> -<span class="scilabcomment">//Options</span> -<span class="scilabid">options</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="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">CpuTime</span><span class="scilabstring">"</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> -<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfminbnd</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span> <span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span> <span class="scilabid">x1</span><span class="scilabdefault">,</span> <span class="scilabid">x2</span><span class="scilabdefault">,</span> <span class="scilabid">options</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 such that it minimizes:</span> -<span class="scilabcomment">//f(x)= 1/x^2</span> -<span class="scilabcomment">//0 </span><span class="scilabcomment"><</span><span class="scilabcomment">= x </span><span class="scilabcomment"><</span><span class="scilabcomment">= 1000</span> -<span class="scilabcomment">//Objective function to be minimised</span> -<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span> -<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabinputoutputargs">x</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> -<span class="scilabfkeyword">endfunction</span> -<span class="scilabcomment">//Variable bounds</span> -<span class="scilabid">x1</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">x2</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1000</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> -<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</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">intfminbnd</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span> <span class="scilabdefault">,</span> <span class="scilabid">x1</span><span class="scilabdefault">,</span> <span class="scilabid">x2</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">//The below problem is an unbounded problem:</span> -<span class="scilabcomment">//Find x in R^2 such that it minimizes:</span> -<span class="scilabcomment">//f(x)= -[(x1-1)^2 + (x2-1)^2]</span> -<span class="scilabcomment">//-inf </span><span class="scilabcomment"><</span><span class="scilabcomment">= x1,x2 </span><span class="scilabcomment"><</span><span class="scilabcomment">= inf</span> -<span class="scilabcomment">//Objective function to be minimised</span> -<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span> -<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilaboperator">-</span><span class="scilabopenclose">(</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">+</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> -<span class="scilabfkeyword">endfunction</span> -<span class="scilabcomment">//Variable bounds</span> -<span class="scilabid">x1</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">x2</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="scilabcomment">//Options</span> -<span class="scilabid">options</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="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">CpuTime</span><span class="scilabstring">"</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> -<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</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">intfminbnd</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span> <span class="scilabid">x1</span><span class="scilabdefault">,</span> <span class="scilabid">x2</span><span class="scilabdefault">,</span> <span class="scilabid">options</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">Harpreet Singh</li></ul></div> - <br /> - - <div class="manualnavbar"> - <table width="100%"> - <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> -<tr> - <td width="30%"> - <span class="previous"><a href="cbcintlinprog.html"><< cbcintlinprog</a></span> - - </td> - <td width="40%" class="center"> - <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span> - - </td> - <td width="30%" class="next"> - <span class="next"><a href="intfmincon.html">intfmincon >></a></span> - - </td> - </tr></table> - <hr /> - </div> - </body> -</html> |