Blurb::
Step length-based stopping criteria for derivative-free optimizers
Description::
The ``variable_tolerance`` keyword defines the minimum step length allowed
by the optimizer and is used to determine convergence.  It is
applicable to ``asynch_pattern_search``, ``coliny_cobyla``,
``coliny_pattern_search``, ``coliny_solis_wets``, and
``mesh_adaptive_search``.

*Default Behavior*

The default value varies according to method as follows:


- ``asynch_pattern_search``:  1.0e-2
- ``coliny_cobyla``:  1.0e-4
- ``coliny_pattern_search``:  1.0e-5
- ``coliny_solis_wets``:  1.0e-6
- ``mesh_adaptive_search``:  1.0e-6

*Usage Tips*

It is recommended that ``variable_tolerance`` be set to a value for which
changes of that scale in parameter values cause negligible changes in
the objective function.
Topics::

Examples::
Three example method input blocks appear below.

For ``asynch_pattern_search``:

.. code-block::

    method
      asynch_pattern_search
        contraction_factor = 0.25
        variable_tolerance = 1.e-4
        solution_target = 1.e-6
        max_function_evaluations 500
        constraint_tolerance    1.e-6


For ``coliny_pattern_search``:

.. code-block::

    method
      coliny_pattern_search
        initial_delta = .2
        variable_tolerance = 1.e-4
        max_iterations 100
        solution_accuracy = 1.e-6
        seed = 1234
        max_function_evaluations = 1000


For ``mesh_adaptive_search``

.. code-block::

    method
      mesh_adaptive_search
        variable_tolerance = 0.01
        seed = 1234


Theory::

Faq::

See_Also::
