<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Tue Apr 03 19:26:34 CDT 2001 -->
<TITLE>
: Interface  SelectionAlgorithm
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../net/openai/ai/ga/selection/ArraySelectionAlgorithm.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="SelectionAlgorithm.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
net.openai.ai.ga.selection</FONT>
<BR>
Interface  SelectionAlgorithm</H2>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../../net/openai/ai/ga/selection/SubsetSelectorAdaptor.html">SubsetSelectorAdaptor</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectNone.html">SelectNone</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectUnion.html">SelectUnion</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectMaturityRange.html">SelectMaturityRange</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectComplement.html">SelectComplement</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectLeastMaturity.html">SelectLeastMaturity</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectLeastFitness.html">SelectLeastFitness</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectIntersection.html">SelectIntersection</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectSingleGreatestFitness.html">SelectSingleGreatestFitness</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectFitnessRange.html">SelectFitnessRange</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectGreatestFitness.html">SelectGreatestFitness</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectGreatestMaturity.html">SelectGreatestMaturity</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectAll.html">SelectAll</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectDifference.html">SelectDifference</A>, <A HREF="../../../../../net/openai/ai/ga/selection/common/SelectCompose.html">SelectCompose</A></DD>
</DL>
<HR>
<DL>
<DT>public interface <B>SelectionAlgorithm</B></DL>

<P>
<code>SelectionAlgorithm</code> is a method by which <code>Cell</code>
 members are chosen from a <code>Population</code> for a given purpose
 (i.e. mutation).
<P>
<DL>
<DT><B>Since: </B><DD>JDK1.3</DD>
</DL>
<HR>

<P>
<!-- ======== INNER CLASS SUMMARY ======== -->


<!-- =========== FIELD SUMMARY =========== -->


<!-- ======== CONSTRUCTOR SUMMARY ======== -->


<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../net/openai/ai/ga/population/Population.html">Population</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../net/openai/ai/ga/selection/SelectionAlgorithm.html#selectFromPopulation(net.openai.ai.ga.population.Population)">selectFromPopulation</A></B>(<A HREF="../../../../../net/openai/ai/ga/population/Population.html">Population</A>&nbsp;pop)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a <code>Population</code> according to a given algorithm or
 rule.</TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->


<!-- ========= CONSTRUCTOR DETAIL ======== -->


<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="selectFromPopulation(net.openai.ai.ga.population.Population)"><!-- --></A><H3>
selectFromPopulation</H3>
<PRE>
public <A HREF="../../../../../net/openai/ai/ga/population/Population.html">Population</A> <B>selectFromPopulation</B>(<A HREF="../../../../../net/openai/ai/ga/population/Population.html">Population</A>&nbsp;pop)</PRE>
<DL>
<DD>Creates a <code>Population</code> according to a given algorithm or
 rule. The initial <code>Population</code> is passed and a selection
 from it is chosen and returned.

 <p>The <code>Population</code> passed into the algorithm should not be
 be changed by the algorithm, as it receives the original, not a clone
 of the original. If a clone is desired, it should be handled inside
 the algorithm.

 <p>The returned <code>Population</code> should not be considered crucial
 to any internal functions of this implementation of the <code>
 SelectionAlgorithm</code>, since the genetic algorithm may make
 changes directly onto this structure and may make the structure
 available for others to make changes to. If the structure is needed
 internally and such behavior could be detrimental to this
 implementation's function, then it is recommended that a shallow
 clone be returned via a <code>return new Population(returnPopulation)
 </code> rather than a plain <code>return returnPopulation</code>.
 This allows for this additional overhead to be avoided in cases where
 it not needed.<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pop</CODE> - the <code>Population</code> to choose from<DT><B>Returns:</B><DD>a selected <code>Population</code></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../net/openai/ai/ga/selection/ArraySelectionAlgorithm.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="SelectionAlgorithm.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>

</BODY>
</HTML>
