<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_05) on Mon May 12 23:05:44 BST 2014 -->
<title>TournamentSelection</title>
<meta name="date" content="2014-05-12">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="TournamentSelection";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<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/TournamentSelection.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-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../jcgp/backend/modules/es/MuPlusLambda.html" title="class in jcgp.backend.modules.es"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?jcgp/backend/modules/es/TournamentSelection.html" target="_top">Frames</a></li>
<li><a href="TournamentSelection.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;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><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&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">jcgp.backend.modules.es</div>
<h2 title="Class TournamentSelection" class="title">Class TournamentSelection</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../jcgp/backend/modules/Module.html" title="class in jcgp.backend.modules">jcgp.backend.modules.Module</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../jcgp/backend/modules/es/EvolutionaryStrategy.html" title="class in jcgp.backend.modules.es">jcgp.backend.modules.es.EvolutionaryStrategy</a></li>
<li>
<ul class="inheritance">
<li>jcgp.backend.modules.es.TournamentSelection</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">TournamentSelection</span>
extends <a href="../../../../jcgp/backend/modules/es/EvolutionaryStrategy.html" title="class in jcgp.backend.modules.es">EvolutionaryStrategy</a></pre>
<div class="block">Tournament selection
 <br><br>
 This strategy generates a new population by selecting a specified number
 of chromosomes from the original population and selecting the fittest out
 of the isolated subset (the tournament). The selected individual is mutated
 using the specified mutator. This process is repeated until the new population
 is complete.
 <br><br>
 One integer parameter is used to control this strategy: tournament
 size. This must always be greater than 0 and smaller than or equal to the
 population size. Setting it to equal population size results in the same
 chromosome being selected for every tournament, and setting it to 1 leads
 to an effectively random search.
 <br>
 One additional parameter, report, controls whether a detailed log of the
 algorithm's operation is to be printed or not. Reports respect the report
 interval base parameter.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Eduardo Pedroni</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../jcgp/backend/modules/es/EvolutionaryStrategy.html" title="class in jcgp.backend.modules.es"><code>EvolutionaryStrategy</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../jcgp/backend/modules/es/TournamentSelection.html#TournamentSelection-jcgp.backend.resources.Resources-">TournamentSelection</a></span>(<a href="../../../../jcgp/backend/resources/Resources.html" title="class in jcgp.backend.resources">Resources</a>&nbsp;resources)</code>
<div class="block">Creates a new instance of TournamentSelection.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../jcgp/backend/modules/es/TournamentSelection.html#evolve-jcgp.backend.population.Population-jcgp.backend.modules.mutator.Mutator-">evolve</a></span>(<a href="../../../../jcgp/backend/population/Population.html" title="class in jcgp.backend.population">Population</a>&nbsp;population,
      <a href="../../../../jcgp/backend/modules/mutator/Mutator.html" title="class in jcgp.backend.modules.mutator">Mutator</a>&nbsp;mutator)</code>
<div class="block">Performs the selection algorithm and uses the mutator to create
 the next generation of solutions.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jcgp.backend.modules.Module">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;jcgp.backend.modules.<a href="../../../../jcgp/backend/modules/Module.html" title="class in jcgp.backend.modules">Module</a></h3>
<code><a href="../../../../jcgp/backend/modules/Module.html#getLocalParameters--">getLocalParameters</a>, <a href="../../../../jcgp/backend/modules/Module.html#toString--">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>equals, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="TournamentSelection-jcgp.backend.resources.Resources-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>TournamentSelection</h4>
<pre>public&nbsp;TournamentSelection(<a href="../../../../jcgp/backend/resources/Resources.html" title="class in jcgp.backend.resources">Resources</a>&nbsp;resources)</pre>
<div class="block">Creates a new instance of TournamentSelection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>resources</code> - a reference to the experiment's resources.</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="evolve-jcgp.backend.population.Population-jcgp.backend.modules.mutator.Mutator-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>evolve</h4>
<pre>public&nbsp;void&nbsp;evolve(<a href="../../../../jcgp/backend/population/Population.html" title="class in jcgp.backend.population">Population</a>&nbsp;population,
                   <a href="../../../../jcgp/backend/modules/mutator/Mutator.html" title="class in jcgp.backend.modules.mutator">Mutator</a>&nbsp;mutator)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../jcgp/backend/modules/es/EvolutionaryStrategy.html#evolve-jcgp.backend.population.Population-jcgp.backend.modules.mutator.Mutator-">EvolutionaryStrategy</a></code></span></div>
<div class="block">Performs the selection algorithm and uses the mutator to create
 the next generation of solutions.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../jcgp/backend/modules/es/EvolutionaryStrategy.html#evolve-jcgp.backend.population.Population-jcgp.backend.modules.mutator.Mutator-">evolve</a></code>&nbsp;in class&nbsp;<code><a href="../../../../jcgp/backend/modules/es/EvolutionaryStrategy.html" title="class in jcgp.backend.modules.es">EvolutionaryStrategy</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>population</code> - the population to evolve.</dd>
<dd><code>mutator</code> - the mutator with which to mutate the promoted individuals.</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>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<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/TournamentSelection.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-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../jcgp/backend/modules/es/MuPlusLambda.html" title="class in jcgp.backend.modules.es"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?jcgp/backend/modules/es/TournamentSelection.html" target="_top">Frames</a></li>
<li><a href="TournamentSelection.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;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><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>