|
44 | 44 | <div class="section" id="advanced-usage"> |
45 | 45 | <h1>Advanced Usage<a class="headerlink" href="#advanced-usage" title="Permalink to this headline">¶</a></h1> |
46 | 46 | <p>This section describes different optional user parameters available in DFO-LS.</p> |
47 | | -<p>In the last section (<a class="reference internal" href="userguide.html"><span class="doc">Using DFO-LS</span></a>), we introduced <code class="code docutils literal"><span class="pre">dfols.solve()</span></code>, which has the optional input <code class="code docutils literal"><span class="pre">user_params</span></code>. This is a Python dictionary of user parameters. We will now go through the settings which can be changed in this way. More details are available in the paper <a class="reference internal" href="userguide.html#cfmr2018" id="id1">[CFMR2018]</a>.</p> |
| 47 | +<p>In the last section (<a class="reference internal" href="userguide.html"><span class="doc">Using DFO-LS</span></a>), we introduced <code class="code docutils literal"><span class="pre">dfols.solve()</span></code>, which has the optional input <code class="code docutils literal"><span class="pre">user_params</span></code>. This is a Python dictionary of user parameters. We will now go through the settings which can be changed in this way. More details are available in the paper <a class="reference internal" href="#cfmr2018" id="id1">[CFMR2018]</a>.</p> |
48 | 48 | <p>The default values, used if no override is given, in some cases vary depending on whether <code class="code docutils literal"><span class="pre">objfun</span></code> has stochastic noise; that is, whether evaluating <code class="code docutils literal"><span class="pre">objfun(x)</span></code> several times at the same <code class="code docutils literal"><span class="pre">x</span></code> gives the same result or not. Whether or not this is the case is determined by the <code class="code docutils literal"><span class="pre">objfun_has_noise</span></code> input to <code class="code docutils literal"><span class="pre">dfols.solve()</span></code> (and not by inspecting <code class="code docutils literal"><span class="pre">objfun</span></code>, for instance).</p> |
49 | 49 | <div class="section" id="general-algorithm-parameters"> |
50 | 50 | <h2>General Algorithm Parameters<a class="headerlink" href="#general-algorithm-parameters" title="Permalink to this headline">¶</a></h2> |
@@ -136,6 +136,7 @@ <h2>Multiple Restarts<a class="headerlink" href="#multiple-restarts" title="Perm |
136 | 136 | <li><code class="code docutils literal"><span class="pre">restarts.hard.increase_ndirs_initial_amt</span></code> - Amount to increase <code class="code docutils literal"><span class="pre">growing.ndirs_initial</span></code> by with each hard restart. To avoid a growing phase, it is best to set it to the same value as <code class="code docutils literal"><span class="pre">restarts.increase_npt_amt</span></code>. Default is 1.</li> |
137 | 137 | <li><code class="code docutils literal"><span class="pre">restarts.hard.use_old_rk</span></code> - If using hard restarts, whether or not to recycle the objective value at the best iterate found when performing a restart. This saves one objective evaluation. Default is <code class="code docutils literal"><span class="pre">True</span></code>.</li> |
138 | 138 | <li><code class="code docutils literal"><span class="pre">restarts.max_npt</span></code> - Maximum allowed value of <span class="math">\(|Y_k|\)</span>, useful if increasing with each restart. Default is <code class="code docutils literal"><span class="pre">npt</span></code>, the input parameter to <code class="code docutils literal"><span class="pre">dfols.solve()</span></code>.</li> |
| 139 | +<li><code class="code docutils literal"><span class="pre">restarts.soft.max_fake_successful_steps</span></code> - The maximum number of successful steps in a given run where the new (smaller) objective value is larger than the best value found in a previous run. Default is <code class="code docutils literal"><span class="pre">maxfun</span></code>, the input to <code class="code docutils literal"><span class="pre">dfols.solve()</span></code>.</li> |
139 | 140 | <li><code class="code docutils literal"><span class="pre">restarts.auto_detect</span></code> - Whether or not to automatically determine when to restart. This is an extra condition, and restarts can still be triggered by small trust region radius, etc. Default is <code class="code docutils literal"><span class="pre">True</span></code>.</li> |
140 | 141 | <li><code class="code docutils literal"><span class="pre">restarts.auto_detect.history</span></code> - How many iterations of data on model changes and trust region radii to store. There are two criteria used: trust region radius decreases (no increases over the history, more decreases than no changes), and change in model Jacobian (consistently increasing trend as measured by slope and correlation coefficient of line of best fit). Default is 30.</li> |
141 | 142 | <li><code class="code docutils literal"><span class="pre">restarts.auto_detect.min_chgJ_slope</span></code> - Minimum rate of increase of <span class="math">\(\log(\|J_k-J_{k-1}\|_F)\)</span> over the past iterations to cause a restart. Default is 0.015.</li> |
|
0 commit comments