blob: e24afe5535703698f1d55b76a0fca80aa1ee82e4 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>ConvergenceChecker (Apache Commons Math 3.3 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ConvergenceChecker (Apache Commons Math 3.3 API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ConvergenceChecker.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/math3/optimization/BaseOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/optimization/DifferentiableMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/optimization/ConvergenceChecker.html" target="_top">Frames</a></li>
<li><a href="ConvergenceChecker.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.commons.math3.optimization</div>
<h2 title="Interface ConvergenceChecker" class="title">Interface ConvergenceChecker&lt;PAIR&gt;</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl><dt><span class="strong">Type Parameters:</span></dt><dd><code>PAIR</code> - Type of the (point, objective value) pair.</dd></dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../../org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optimization">AbstractConvergenceChecker</a>, <a href="../../../../../org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization">SimplePointChecker</a>, <a href="../../../../../org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optimization.univariate">SimpleUnivariateValueChecker</a>, <a href="../../../../../org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleValueChecker</a>, <a href="../../../../../org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleVectorValueChecker</a></dd>
</dl>
<hr>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
<br>
<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public interface <span class="strong">ConvergenceChecker&lt;PAIR&gt;</span></pre>
<div class="block">This interface specifies how to check if an optimization algorithm has
converged.
<br/>
Deciding if convergence has been reached is a problem-dependent issue. The
user should provide a class implementing this interface to allow the
optimization algorithm to stop its search according to the problem at hand.
<br/>
For convenience, three implementations that fit simple needs are already
provided: <a href="../../../../../org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization"><code>SimpleValueChecker</code></a>, <a href="../../../../../org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization"><code>SimpleVectorValueChecker</code></a> and
<a href="../../../../../org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization"><code>SimplePointChecker</code></a>. The first two consider that convergence is
reached when the objective function value does not change much anymore, it
does not use the point set at all.
The third one considers that convergence is reached when the input point
set does not change much anymore, it does not use objective function value
at all.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.0</dd>
<dt><span class="strong">Version:</span></dt>
<dd>$Id: ConvergenceChecker.java 1591835 2014-05-02 09:04:01Z tn $</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization"><code>SimplePointChecker</code></a>,
<a href="../../../../../org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization"><code>SimpleValueChecker</code></a>,
<a href="../../../../../org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization"><code>SimpleVectorValueChecker</code></a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/optimization/ConvergenceChecker.html#converged(int, PAIR, PAIR)">converged</a></strong>(int&nbsp;iteration,
<a href="../../../../../org/apache/commons/math3/optimization/ConvergenceChecker.html" title="type parameter in ConvergenceChecker">PAIR</a>&nbsp;previous,
<a href="../../../../../org/apache/commons/math3/optimization/ConvergenceChecker.html" title="type parameter in ConvergenceChecker">PAIR</a>&nbsp;current)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
<div class="block">Check if the optimization algorithm has converged.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="converged(int,java.lang.Object,java.lang.Object)">
<!-- -->
</a><a name="converged(int, PAIR, PAIR)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>converged</h4>
<pre>boolean&nbsp;converged(int&nbsp;iteration,
<a href="../../../../../org/apache/commons/math3/optimization/ConvergenceChecker.html" title="type parameter in ConvergenceChecker">PAIR</a>&nbsp;previous,
<a href="../../../../../org/apache/commons/math3/optimization/ConvergenceChecker.html" title="type parameter in ConvergenceChecker">PAIR</a>&nbsp;current)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;</div>
<div class="block">Check if the optimization algorithm has converged.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>iteration</code> - Current iteration.</dd><dd><code>previous</code> - Best point in the previous iteration.</dd><dd><code>current</code> - Best point in the current iteration.</dd>
<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the algorithm is considered to have converged.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ConvergenceChecker.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/math3/optimization/BaseOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/optimization/DifferentiableMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/optimization/ConvergenceChecker.html" target="_top">Frames</a></li>
<li><a href="ConvergenceChecker.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2003&#x2013;2014 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>