/* * This file is part of JGAP. * * JGAP offers a dual license model containing the LGPL as well as the MPL. * * For licensing information please see the file license.txt included with JGAP * or have a look at the top of class org.jgap.Chromosome which representatively * includes the JGAP license policy applicable for any file delivered with JGAP. */ package org.jgap.distr.grid.gp; import java.io.*; import org.jgap.distr.grid.*; import org.jgap.gp.impl.*; /** * Interface for defining a strategy that controls how a client evolves * generations of GP's. * * @author Klaus Meffert * @since 3.2 */ public interface IClientEvolveStrategyGP extends Serializable { /** String containing the CVS revision. Read out via reflection!*/ final static String CVS_REVISION = "$Revision: 1.4 $"; void initialize(IGridClientMediator a_gc, GPConfiguration a_config, IClientFeedbackGP a_clientFeedback) throws Exception; JGAPRequestGP[] generateWorkRequests(JGAPRequestGP m_workReq, IRequestSplitStrategyGP m_splitStrategy, Object a_genericData) throws Exception; void resultReceived(JGAPResultGP a_result) throws Exception; boolean isEvolutionFinished(int a_evolutionsDone); void onFinished(); void afterWorkRequestsSent() throws Exception; void evolve() throws Exception; }